From gadavis at users.sourceforge.net Tue Feb 1 01:13:20 2011 From: gadavis at users.sourceforge.net (gadavis at users.sourceforge.net) Date: Tue, 01 Feb 2011 00:13:20 +0000 Subject: [csw-devel] SF.net SVN: gar:[13152] csw/mgar/pkg/gmt/trunk/Makefile Message-ID: Revision: 13152 http://gar.svn.sourceforge.net/gar/?rev=13152&view=rev Author: gadavis Date: 2011-02-01 00:13:20 +0000 (Tue, 01 Feb 2011) Log Message: ----------- Adding override for harmless /usr/local reference Modified Paths: -------------- csw/mgar/pkg/gmt/trunk/Makefile Modified: csw/mgar/pkg/gmt/trunk/Makefile =================================================================== --- csw/mgar/pkg/gmt/trunk/Makefile 2011-01-31 18:10:34 UTC (rev 13151) +++ csw/mgar/pkg/gmt/trunk/Makefile 2011-02-01 00:13:20 UTC (rev 13152) @@ -53,7 +53,8 @@ ## Banish the unversioned shared objects to their own tree # The merge step moves things into the proper ISA-specific directory -libdir = $(exec_prefix)/lib/gmt +#libdir = $(exec_prefix)/lib/gmt +libdir_install = $(exec_prefix)/lib/gmt EXTRA_LDFLAGS += -R $(libdir)/$(MM_LIBDIR) ## $(GMT_LIBS) gets passed to ./configure as LIBS @@ -95,5 +96,5 @@ ln -s $(ISA_DEFAULT64) $(DESTDIR)/opt/csw/lib/gmt/64 @$(MAKECOOKIE) -## This package has a number of unversioned private libraries -CHECKPKG_OVERRIDES_CSWgmt += shared-lib-pkgname-mismatch|sonames=libgmt.so,libgmt_mgg.so,libgmtps.so,libmgd77.so,libpsl.so,libx2sys.so|pkgname=CSWgmt|expected=CSWlibs| +#CHECKPKG_OVERRIDES_CSWgmt += shared-lib-pkgname-mismatch|sonames=libgmt.so,libgmt_mgg.so,libgmtps.so,libmgd77.so,libpsl.so,libx2sys.so|pkgname=CSWgmt|expected=CSWlibs| +CHECKPKG_OVERRIDES_CSWgmt-doc += file-with-bad-content|/usr/local|root/opt/csw/share/doc/gmt/html/GMT_Docs/node257.html This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Tue Feb 1 01:15:08 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Tue, 01 Feb 2011 00:15:08 +0000 Subject: [csw-devel] SF.net SVN: gar:[13153] csw/mgar/pkg/clusterssh/trunk Message-ID: Revision: 13153 http://gar.svn.sourceforge.net/gar/?rev=13153&view=rev Author: wahwah Date: 2011-02-01 00:15:08 +0000 (Tue, 01 Feb 2011) Log Message: ----------- clusterssh: Upstream watch regex update, and other small fixes Modified Paths: -------------- csw/mgar/pkg/clusterssh/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/clusterssh/trunk/files/0001-Search-opt-csw-bin-instead-of-usr-local.patch Property Changed: ---------------- csw/mgar/pkg/clusterssh/trunk/Makefile Modified: csw/mgar/pkg/clusterssh/trunk/Makefile =================================================================== --- csw/mgar/pkg/clusterssh/trunk/Makefile 2011-02-01 00:13:20 UTC (rev 13152) +++ csw/mgar/pkg/clusterssh/trunk/Makefile 2011-02-01 00:15:08 UTC (rev 13153) @@ -1,3 +1,5 @@ +# $Id$ + NAME = clusterssh VERSION = 3.28 CATEGORIES = net @@ -13,15 +15,21 @@ MASTER_SITES = $(SF_MIRRORS) DISTFILES = $(NAME)-$(VERSION).tar.gz +PATCHFILES += 0001-Search-opt-csw-bin-instead-of-usr-local.patch + UPSTREAM_MASTER_SITES = $(SF_PROJECT_SHOWFILE)=89139 UPSTREAM_USE_SF = 1 -UFILES_REGEX = (\d+(?:\.\d+)*) +UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz -RUNTIME_DEP_PKGS = CSWperl +RUNTIME_DEP_PKGS += CSWperl RUNTIME_DEP_PKGS += CSWpmtk RUNTIME_DEP_PKGS += CSWpmx11protocol # RUNTIME_DEP_PKGS += CSWossh +CHECKPKG_OVERRIDES_CSWclusterssh += surplus-dependency|CSWperl +CHECKPKG_OVERRIDES_CSWclusterssh += surplus-dependency|CSWpmtk +CHECKPKG_OVERRIDES_CSWclusterssh += surplus-dependency|CSWpmx11protocol + ARCHALL = 1 CONFIGURE_ARGS = $(DIRPATHS) Property changes on: csw/mgar/pkg/clusterssh/trunk/Makefile ___________________________________________________________________ Added: svn:keywords + Id Added: csw/mgar/pkg/clusterssh/trunk/files/0001-Search-opt-csw-bin-instead-of-usr-local.patch =================================================================== --- csw/mgar/pkg/clusterssh/trunk/files/0001-Search-opt-csw-bin-instead-of-usr-local.patch (rev 0) +++ csw/mgar/pkg/clusterssh/trunk/files/0001-Search-opt-csw-bin-instead-of-usr-local.patch 2011-02-01 00:15:08 UTC (rev 13153) @@ -0,0 +1,31 @@ +From 1faa1bf6871dba55a4cbd23f38dec1d190d3edea Mon Sep 17 00:00:00 2001 +From: Maciej Blizinski +Date: Tue, 1 Feb 2011 01:09:40 +0100 +Subject: [PATCH] Search /opt/csw/bin instead of /usr/local + +When looking for binaries, search the /opt/csw/bin directory, and not +/usr/local. +--- + src/cssh.pl | 6 ++---- + 1 files changed, 2 insertions(+), 4 deletions(-) + +diff --git a/src/cssh.pl b/src/cssh.pl +index f714906..98ace0f 100755 +--- a/src/cssh.pl ++++ b/src/cssh.pl +@@ -317,10 +317,8 @@ sub find_binary($) { + /sbin + /usr/sbin + /usr/bin +- /usr/local/bin +- /usr/local/sbin +- /opt/local/bin +- /opt/local/sbin ++ /opt/csw/bin ++ /opt/csw/sbin + ! + ) + { +-- +1.7.3.2 + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Tue Feb 1 02:32:27 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Tue, 01 Feb 2011 01:32:27 +0000 Subject: [csw-devel] SF.net SVN: gar:[13154] csw/mgar/pkg/git/trunk/Makefile Message-ID: Revision: 13154 http://gar.svn.sourceforge.net/gar/?rev=13154&view=rev Author: bdwalton Date: 2011-02-01 01:32:27 +0000 (Tue, 01 Feb 2011) Log Message: ----------- git/trunk: version bump for new release Modified Paths: -------------- csw/mgar/pkg/git/trunk/Makefile Modified: csw/mgar/pkg/git/trunk/Makefile =================================================================== --- csw/mgar/pkg/git/trunk/Makefile 2011-02-01 00:15:08 UTC (rev 13153) +++ csw/mgar/pkg/git/trunk/Makefile 2011-02-01 01:32:27 UTC (rev 13154) @@ -1,5 +1,5 @@ NAME = git -VERSION = 1.7.3.2 +VERSION = 1.7.4 #PATCHLEVEL = rc1 CATEGORIES = devel This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Tue Feb 1 04:17:17 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Tue, 01 Feb 2011 03:17:17 +0000 Subject: [csw-devel] SF.net SVN: gar:[13155] csw/mgar/pkg/git/trunk/Makefile Message-ID: Revision: 13155 http://gar.svn.sourceforge.net/gar/?rev=13155&view=rev Author: bdwalton Date: 2011-02-01 03:17:16 +0000 (Tue, 01 Feb 2011) Log Message: ----------- git/trunk: ignore usr/local and usr/share refs in the doc package: the ones i spot checked are harmless Modified Paths: -------------- csw/mgar/pkg/git/trunk/Makefile Modified: csw/mgar/pkg/git/trunk/Makefile =================================================================== --- csw/mgar/pkg/git/trunk/Makefile 2011-02-01 01:32:27 UTC (rev 13154) +++ csw/mgar/pkg/git/trunk/Makefile 2011-02-01 03:17:16 UTC (rev 13155) @@ -142,6 +142,7 @@ CHECKPKG_OVERRIDES_CSWgitcompletion += surplus-dependency|CSWbashcmplt CHECKPKG_OVERRIDES_CSWgitcompletion += surplus-dependency|CSWgit CHECKPKG_OVERRIDES_CSWgitdoc += surplus-dependency|CSWgit +CHECKPKG_OVERRIDES_CSWgitdoc += file-with-bad-content CHECKPKG_OVERRIDES_CSWgitdevel += discouraged-path-in-pkgmap|/opt/csw/lib/git/libgit.a CHECKPKG_OVERRIDES_CSWgitdevel += discouraged-path-in-pkgmap|/opt/csw/lib/git/libxdiff.a CHECKPKG_OVERRIDES_CSWgitdevel += surplus-dependency|CSWgit This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Tue Feb 1 04:18:12 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Tue, 01 Feb 2011 03:18:12 +0000 Subject: [csw-devel] SF.net SVN: gar:[13156] csw/mgar/pkg/git/trunk/Makefile Message-ID: Revision: 13156 http://gar.svn.sourceforge.net/gar/?rev=13156&view=rev Author: bdwalton Date: 2011-02-01 03:18:12 +0000 (Tue, 01 Feb 2011) Log Message: ----------- git/trunk: ignore usr/local reference in git-config manpage: clearly marked as example Modified Paths: -------------- csw/mgar/pkg/git/trunk/Makefile Modified: csw/mgar/pkg/git/trunk/Makefile =================================================================== --- csw/mgar/pkg/git/trunk/Makefile 2011-02-01 03:17:16 UTC (rev 13155) +++ csw/mgar/pkg/git/trunk/Makefile 2011-02-01 03:18:12 UTC (rev 13156) @@ -153,6 +153,7 @@ CHECKPKG_OVERRIDES_CSWgit += surplus-dependency|CSWless CHECKPKG_OVERRIDES_CSWgit += surplus-dependency|CSWpmnetsmtpssl CHECKPKG_OVERRIDES_CSWgit += surplus-dependency|CSWpmtermreadkey +CHECKPKG_OVERRIDES_CSWgit += file-with-bad-content|/usr/local|root/opt/csw/share/man/man1/git-config.1 CHECKPKG_OVERRIDES_CSWgitgui += surplus-dependency|CSWtk CHECKPKG_OVERRIDES_CSWgitgui += surplus-dependency|CSWgit CHECKPKG_OVERRIDES_CSWgitemacs += surplus-dependency|CSWgit This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Tue Feb 1 04:45:00 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Tue, 01 Feb 2011 03:45:00 +0000 Subject: [csw-devel] SF.net SVN: gar:[13157] csw/mgar/pkg/git/trunk/Makefile Message-ID: Revision: 13157 http://gar.svn.sourceforge.net/gar/?rev=13157&view=rev Author: bdwalton Date: 2011-02-01 03:45:00 +0000 (Tue, 01 Feb 2011) Log Message: ----------- git/trunk: ignore a comment that contains usr/local in git-send-email Modified Paths: -------------- csw/mgar/pkg/git/trunk/Makefile Modified: csw/mgar/pkg/git/trunk/Makefile =================================================================== --- csw/mgar/pkg/git/trunk/Makefile 2011-02-01 03:18:12 UTC (rev 13156) +++ csw/mgar/pkg/git/trunk/Makefile 2011-02-01 03:45:00 UTC (rev 13157) @@ -154,6 +154,7 @@ CHECKPKG_OVERRIDES_CSWgit += surplus-dependency|CSWpmnetsmtpssl CHECKPKG_OVERRIDES_CSWgit += surplus-dependency|CSWpmtermreadkey CHECKPKG_OVERRIDES_CSWgit += file-with-bad-content|/usr/local|root/opt/csw/share/man/man1/git-config.1 +CHECKPKG_OVERRIDES_CSWgit += file-with-bad-content|/usr/share|root/opt/csw/libexec/git-core/git-send-email CHECKPKG_OVERRIDES_CSWgitgui += surplus-dependency|CSWtk CHECKPKG_OVERRIDES_CSWgitgui += surplus-dependency|CSWgit CHECKPKG_OVERRIDES_CSWgitemacs += surplus-dependency|CSWgit This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From idogan23 at users.sourceforge.net Tue Feb 1 10:47:06 2011 From: idogan23 at users.sourceforge.net (idogan23 at users.sourceforge.net) Date: Tue, 01 Feb 2011 09:47:06 +0000 Subject: [csw-devel] SF.net SVN: gar:[13158] csw/mgar/pkg/libldns/trunk/Makefile Message-ID: Revision: 13158 http://gar.svn.sourceforge.net/gar/?rev=13158&view=rev Author: idogan23 Date: 2011-02-01 09:47:06 +0000 (Tue, 01 Feb 2011) Log Message: ----------- libldns: fixed typo Modified Paths: -------------- csw/mgar/pkg/libldns/trunk/Makefile Modified: csw/mgar/pkg/libldns/trunk/Makefile =================================================================== --- csw/mgar/pkg/libldns/trunk/Makefile 2011-02-01 03:45:00 UTC (rev 13157) +++ csw/mgar/pkg/libldns/trunk/Makefile 2011-02-01 09:47:06 UTC (rev 13158) @@ -19,7 +19,7 @@ PACKAGES = CSWlibldns1 CSWlibldnsdevel CATALOGNAME_CSWlibldns1 = libldns1 -CATALOGNAME_CSWldnsdevel = libldns_devel +CATALOGNAME_CSWlibldnsdevel = libldns_devel SPKG_DESC_CSWlibldns1 = $(DESCRIPTION) SPKG_DESC_CSWlibldnsdevel = $(DESCRIPTION) development package This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Tue Feb 1 15:00:15 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Tue, 01 Feb 2011 14:00:15 +0000 Subject: [csw-devel] SF.net SVN: gar:[13159] csw/mgar/pkg/gdbm/trunk/Makefile Message-ID: Revision: 13159 http://gar.svn.sourceforge.net/gar/?rev=13159&view=rev Author: dmichelsen Date: 2011-02-01 14:00:15 +0000 (Tue, 01 Feb 2011) Log Message: ----------- gdbm: Add dependency for legacy package Modified Paths: -------------- csw/mgar/pkg/gdbm/trunk/Makefile Modified: csw/mgar/pkg/gdbm/trunk/Makefile =================================================================== --- csw/mgar/pkg/gdbm/trunk/Makefile 2011-02-01 09:47:06 UTC (rev 13158) +++ csw/mgar/pkg/gdbm/trunk/Makefile 2011-02-01 14:00:15 UTC (rev 13159) @@ -21,6 +21,7 @@ CATALOGNAME_CSWgdbm = gdbm SPKG_DESC_CSWgdbm = Legacy package as contents moved to CSWlibgdbm3 PKGFILES_CSWgdbm = NOFILES +RUNTIME_DEP_PKGS_CSWgdbm = CSWlibgdbm3 ARCHALL_CSWgdbm = 1 PACKAGES += CSWlibgdbm3 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Tue Feb 1 15:04:31 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Tue, 01 Feb 2011 14:04:31 +0000 Subject: [csw-devel] SF.net SVN: gar:[13160] csw/mgar/pkg/gdbm/trunk/Makefile Message-ID: Revision: 13160 http://gar.svn.sourceforge.net/gar/?rev=13160&view=rev Author: dmichelsen Date: 2011-02-01 14:04:31 +0000 (Tue, 01 Feb 2011) Log Message: ----------- gdbm: Add dependency for legacy package Modified Paths: -------------- csw/mgar/pkg/gdbm/trunk/Makefile Modified: csw/mgar/pkg/gdbm/trunk/Makefile =================================================================== --- csw/mgar/pkg/gdbm/trunk/Makefile 2011-02-01 14:00:15 UTC (rev 13159) +++ csw/mgar/pkg/gdbm/trunk/Makefile 2011-02-01 14:04:31 UTC (rev 13160) @@ -21,8 +21,9 @@ CATALOGNAME_CSWgdbm = gdbm SPKG_DESC_CSWgdbm = Legacy package as contents moved to CSWlibgdbm3 PKGFILES_CSWgdbm = NOFILES +ARCHALL_CSWgdbm = 1 RUNTIME_DEP_PKGS_CSWgdbm = CSWlibgdbm3 -ARCHALL_CSWgdbm = 1 +CHECKPKG_OVERRIDES_CSWgdbm += surplus-dependency|CSWlibgdbm3 PACKAGES += CSWlibgdbm3 CATALOGNAME_CSWlibgdbm3 = libgdbm3 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Tue Feb 1 18:32:42 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Tue, 01 Feb 2011 17:32:42 +0000 Subject: [csw-devel] SF.net SVN: gar:[13161] csw/mgar/pkg/gmt/trunk/Makefile Message-ID: Revision: 13161 http://gar.svn.sourceforge.net/gar/?rev=13161&view=rev Author: dmichelsen Date: 2011-02-01 17:32:41 +0000 (Tue, 01 Feb 2011) Log Message: ----------- gmt: Move overrides up Modified Paths: -------------- csw/mgar/pkg/gmt/trunk/Makefile Modified: csw/mgar/pkg/gmt/trunk/Makefile =================================================================== --- csw/mgar/pkg/gmt/trunk/Makefile 2011-02-01 14:04:31 UTC (rev 13160) +++ csw/mgar/pkg/gmt/trunk/Makefile 2011-02-01 17:32:41 UTC (rev 13161) @@ -88,6 +88,9 @@ INSTALL_ARGS = install-all LICENSE = LICENSE.TXT + +CHECKPKG_OVERRIDES_CSWgmt-doc += file-with-bad-content|/usr/local|root/opt/csw/share/doc/gmt/html/GMT_Docs/node257.html + include gar/category.mk post-install-modulated: @@ -95,6 +98,3 @@ ln -s $(ISA_DEFAULT) $(DESTDIR)/opt/csw/lib/gmt/32 ln -s $(ISA_DEFAULT64) $(DESTDIR)/opt/csw/lib/gmt/64 @$(MAKECOOKIE) - -#CHECKPKG_OVERRIDES_CSWgmt += shared-lib-pkgname-mismatch|sonames=libgmt.so,libgmt_mgg.so,libgmtps.so,libmgd77.so,libpsl.so,libx2sys.so|pkgname=CSWgmt|expected=CSWlibs| -CHECKPKG_OVERRIDES_CSWgmt-doc += file-with-bad-content|/usr/local|root/opt/csw/share/doc/gmt/html/GMT_Docs/node257.html This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From gadavis at users.sourceforge.net Tue Feb 1 19:06:01 2011 From: gadavis at users.sourceforge.net (gadavis at users.sourceforge.net) Date: Tue, 01 Feb 2011 18:06:01 +0000 Subject: [csw-devel] SF.net SVN: gar:[13162] csw/mgar/pkg/gmtcoast/trunk/Makefile Message-ID: Revision: 13162 http://gar.svn.sourceforge.net/gar/?rev=13162&view=rev Author: gadavis Date: 2011-02-01 18:06:01 +0000 (Tue, 01 Feb 2011) Log Message: ----------- Clean up makefile for coastline definitions Modified Paths: -------------- csw/mgar/pkg/gmtcoast/trunk/Makefile Modified: csw/mgar/pkg/gmtcoast/trunk/Makefile =================================================================== --- csw/mgar/pkg/gmtcoast/trunk/Makefile 2011-02-01 17:32:41 UTC (rev 13161) +++ csw/mgar/pkg/gmtcoast/trunk/Makefile 2011-02-01 18:06:01 UTC (rev 13162) @@ -2,22 +2,20 @@ # Distributed under the terms of the GNU General Public License v2 # $Id$ -GSHHS_VERSION = 2.1.0 - NAME = gmtcoast -VERSION = $(GSHHS_VERSION) +VERSION = 2.1.0 CATEGORIES = apps DESCRIPTION = Coastline Definition Files for Generic Mapping Tools define BLURB - GMT is an open source collection of ~60 tools for manipulating geographic and Cartesian data sets (including filtering, trend fitting, gridding, projecting, etc.) and producing Encapsulated PostScript File (EPS) illustrations ranging from simple x-y plots via contour maps to artificially illuminated surfaces and 3-D perspective views. GMT supports ~30 map projections and transformations and comes with support data such as GSHHS coastlines, rivers, and political boundaries. GMT is developed and maintained by Paul Wessel and Walter H. F. Smith with help from a global set of volunteers, and is supported by the National Science Foundation. It is released under the GNU General Public License. +Support data for the Generic Mapping Tools (GMT) including GSHHS coastlines, rivers, and political boundaries. endef SPKG_SOURCEURL = http://gmt.soest.hawaii.edu/ MASTER_SITES = ftp://ftp.iris.washington.edu/pub/gmt/ ftp://ftp.soest.hawaii.edu/gmt/ ftp://gd.tuwien.ac.at/pub/gmt/ -DISTFILES = GSHHS$(GSHHS_VERSION)_coast.tar.bz2 \ - GSHHS$(GSHHS_VERSION)_full.tar.bz2 \ - GSHHS$(GSHHS_VERSION)_high.tar.bz2 +DISTFILES = GSHHS$(VERSION)_coast.tar.bz2 \ + GSHHS$(VERSION)_full.tar.bz2 \ + GSHHS$(VERSION)_high.tar.bz2 UFILES_REGEX = GSHHS(\d+(?:\.\d+)*)_(.*).tar.gz @@ -30,25 +28,9 @@ INSTALL_SCRIPTS = custom TEST_SCRIPTS = -## The tarball just dumps into the current directory, no archive name +## The tarballs just dump into the current directory WORKSRC = $(WORKDIR) -#work/solaris9-sparc/install-isa-sparcv8/opt/csw/share/coast/binned_GSHHS_c.cdf -#work/solaris9-sparc/install-isa-sparcv8/opt/csw/share/coast/binned_GSHHS_f.cdf -#work/solaris9-sparc/install-isa-sparcv8/opt/csw/share/coast/binned_GSHHS_h.cdf -#work/solaris9-sparc/install-isa-sparcv8/opt/csw/share/coast/binned_GSHHS_i.cdf -#work/solaris9-sparc/install-isa-sparcv8/opt/csw/share/coast/binned_GSHHS_l.cdf -#work/solaris9-sparc/install-isa-sparcv8/opt/csw/share/coast/binned_border_c.cdf -#work/solaris9-sparc/install-isa-sparcv8/opt/csw/share/coast/binned_border_f.cdf -#work/solaris9-sparc/install-isa-sparcv8/opt/csw/share/coast/binned_border_h.cdf -#work/solaris9-sparc/install-isa-sparcv8/opt/csw/share/coast/binned_border_i.cdf -#work/solaris9-sparc/install-isa-sparcv8/opt/csw/share/coast/binned_border_l.cdf -#work/solaris9-sparc/install-isa-sparcv8/opt/csw/share/coast/binned_river_c.cdf -#work/solaris9-sparc/install-isa-sparcv8/opt/csw/share/coast/binned_river_f.cdf -#work/solaris9-sparc/install-isa-sparcv8/opt/csw/share/coast/binned_river_h.cdf -#work/solaris9-sparc/install-isa-sparcv8/opt/csw/share/coast/binned_river_i.cdf -#work/solaris9-sparc/install-isa-sparcv8/opt/csw/share/coast/binned_river_l.cdf - PACKAGES += CSWgmtcoast-low CATALOGNAME_CSWgmtcoast-low = gmtcoast_low SPKG_DESC_CSWgmtcoast-low = Low resolution coastlines for the Generic Mapping Tools (GMT) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From gadavis at users.sourceforge.net Tue Feb 1 21:31:17 2011 From: gadavis at users.sourceforge.net (gadavis at users.sourceforge.net) Date: Tue, 01 Feb 2011 20:31:17 +0000 Subject: [csw-devel] SF.net SVN: gar:[13163] csw/mgar/pkg/gmt Message-ID: Revision: 13163 http://gar.svn.sourceforge.net/gar/?rev=13163&view=rev Author: gadavis Date: 2011-02-01 20:31:16 +0000 (Tue, 01 Feb 2011) Log Message: ----------- gmt - change datadir to /opt/csw/share/gmt Modified Paths: -------------- csw/mgar/pkg/gmt/trunk/Makefile csw/mgar/pkg/gmtcoast/trunk/Makefile Modified: csw/mgar/pkg/gmt/trunk/Makefile =================================================================== --- csw/mgar/pkg/gmt/trunk/Makefile 2011-02-01 18:06:01 UTC (rev 13162) +++ csw/mgar/pkg/gmt/trunk/Makefile 2011-02-01 20:31:16 UTC (rev 13163) @@ -57,6 +57,9 @@ libdir_install = $(exec_prefix)/lib/gmt EXTRA_LDFLAGS += -R $(libdir)/$(MM_LIBDIR) +## GMT spews a number of directories into share +datadir = /opt/csw/share/gmt + ## $(GMT_LIBS) gets passed to ./configure as LIBS ## src/Makefile doesn't use LDFLAGS so we hijack $(LIBS) to fix the RUNPATH ## We could also use LD_OPTS, but that would require reverse-engineering the Modified: csw/mgar/pkg/gmtcoast/trunk/Makefile =================================================================== --- csw/mgar/pkg/gmtcoast/trunk/Makefile 2011-02-01 18:06:01 UTC (rev 13162) +++ csw/mgar/pkg/gmtcoast/trunk/Makefile 2011-02-01 20:31:16 UTC (rev 13163) @@ -28,6 +28,9 @@ INSTALL_SCRIPTS = custom TEST_SCRIPTS = +# This should match value in gmt/trunk/Makefile +datadir = /opt/csw/share/gmt + ## The tarballs just dump into the current directory WORKSRC = $(WORKDIR) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Wed Feb 2 04:23:01 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Wed, 02 Feb 2011 03:23:01 +0000 Subject: [csw-devel] SF.net SVN: gar:[13164] csw/mgar/pkg/git/trunk/Makefile Message-ID: Revision: 13164 http://gar.svn.sourceforge.net/gar/?rev=13164&view=rev Author: bdwalton Date: 2011-02-02 03:23:00 +0000 (Wed, 02 Feb 2011) Log Message: ----------- git/trunk: ignore usr/share in gitweb.cgi; it is in a comment Modified Paths: -------------- csw/mgar/pkg/git/trunk/Makefile Modified: csw/mgar/pkg/git/trunk/Makefile =================================================================== --- csw/mgar/pkg/git/trunk/Makefile 2011-02-01 20:31:16 UTC (rev 13163) +++ csw/mgar/pkg/git/trunk/Makefile 2011-02-02 03:23:00 UTC (rev 13164) @@ -155,6 +155,7 @@ CHECKPKG_OVERRIDES_CSWgit += surplus-dependency|CSWpmtermreadkey CHECKPKG_OVERRIDES_CSWgit += file-with-bad-content|/usr/local|root/opt/csw/share/man/man1/git-config.1 CHECKPKG_OVERRIDES_CSWgit += file-with-bad-content|/usr/share|root/opt/csw/libexec/git-core/git-send-email +CHECKPKG_OVERRIDES_CSWgit += file-with-bad-content|/usr/share|root/opt/csw/share/gitweb/gitweb.cgi CHECKPKG_OVERRIDES_CSWgitgui += surplus-dependency|CSWtk CHECKPKG_OVERRIDES_CSWgitgui += surplus-dependency|CSWgit CHECKPKG_OVERRIDES_CSWgitemacs += surplus-dependency|CSWgit This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Wed Feb 2 04:30:19 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Wed, 02 Feb 2011 03:30:19 +0000 Subject: [csw-devel] SF.net SVN: gar:[13165] csw/mgar/pkg/git/trunk Message-ID: Revision: 13165 http://gar.svn.sourceforge.net/gar/?rev=13165&view=rev Author: bdwalton Date: 2011-02-02 03:30:19 +0000 (Wed, 02 Feb 2011) Log Message: ----------- git/trunk: patch instaweb search path for httpd Modified Paths: -------------- csw/mgar/pkg/git/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/git/trunk/files/0005-Add-OpenCSW-apache2-path-to-instaweb-search-path.patch Modified: csw/mgar/pkg/git/trunk/Makefile =================================================================== --- csw/mgar/pkg/git/trunk/Makefile 2011-02-02 03:23:00 UTC (rev 13164) +++ csw/mgar/pkg/git/trunk/Makefile 2011-02-02 03:30:19 UTC (rev 13165) @@ -90,6 +90,7 @@ PATCHFILES += 0002-Alter-the-value-of-_PATH_DEFPATH-when-paths.h-not-pr.patch PATCHFILES += 0003-Update-path-in-sample-hook-file.patch PATCHFILES += 0004-Use-bash-and-set-PATH-in-contributed-hook-file.patch +PATCHFILES += 0005-Add-OpenCSW-apache2-path-to-instaweb-search-path.patch fdirs = $(bindir_install) $(mandir) $(libexecdir_install) define _git_files Added: csw/mgar/pkg/git/trunk/files/0005-Add-OpenCSW-apache2-path-to-instaweb-search-path.patch =================================================================== --- csw/mgar/pkg/git/trunk/files/0005-Add-OpenCSW-apache2-path-to-instaweb-search-path.patch (rev 0) +++ csw/mgar/pkg/git/trunk/files/0005-Add-OpenCSW-apache2-path-to-instaweb-search-path.patch 2011-02-02 03:30:19 UTC (rev 13165) @@ -0,0 +1,31 @@ +From ff5bf85995a459ded56e68fb4c4edef05380550d Mon Sep 17 00:00:00 2001 +From: Ben Walton +Date: Wed, 2 Feb 2011 04:26:57 +0100 +Subject: [PATCH] Add OpenCSW apache2 path to instaweb search path + +We make sure that git instaweb will prefer our own apache2 if it is +available, but leave all the other options available to. This will +require a checkpkg override on the /usr/local path and a note at +release time. + +Signed-off-by: Ben Walton +--- + git-instaweb.sh | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/git-instaweb.sh b/git-instaweb.sh +index 10fcebb..7fc62f7 100755 +--- a/git-instaweb.sh ++++ b/git-instaweb.sh +@@ -75,7 +75,7 @@ resolve_full_httpd () { + # these days and those are not in most users $PATHs + # in addition, we may have generated a server script + # in $fqgitdir/gitweb. +- for i in /usr/local/sbin /usr/sbin "$root" "$fqgitdir/gitweb" ++ for i in /opt/csw/apache2/sbin /usr/local/sbin /usr/sbin "$root" "$fqgitdir/gitweb" + do + if test -x "$i/$httpd_only" + then +-- +1.7.3.2 + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Wed Feb 2 05:00:30 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Wed, 02 Feb 2011 04:00:30 +0000 Subject: [csw-devel] SF.net SVN: gar:[13166] csw/mgar/pkg/git/trunk/Makefile Message-ID: Revision: 13166 http://gar.svn.sourceforge.net/gar/?rev=13166&view=rev Author: bdwalton Date: 2011-02-02 04:00:30 +0000 (Wed, 02 Feb 2011) Log Message: ----------- git/trunk: ignore usr/local in git-instaweb Modified Paths: -------------- csw/mgar/pkg/git/trunk/Makefile Modified: csw/mgar/pkg/git/trunk/Makefile =================================================================== --- csw/mgar/pkg/git/trunk/Makefile 2011-02-02 03:30:19 UTC (rev 13165) +++ csw/mgar/pkg/git/trunk/Makefile 2011-02-02 04:00:30 UTC (rev 13166) @@ -157,6 +157,7 @@ CHECKPKG_OVERRIDES_CSWgit += file-with-bad-content|/usr/local|root/opt/csw/share/man/man1/git-config.1 CHECKPKG_OVERRIDES_CSWgit += file-with-bad-content|/usr/share|root/opt/csw/libexec/git-core/git-send-email CHECKPKG_OVERRIDES_CSWgit += file-with-bad-content|/usr/share|root/opt/csw/share/gitweb/gitweb.cgi +CHECKPKG_OVERRIDES_CSWgit += file-with-bad-content|/usr/local|root/opt/csw/libexec/git-core/git-instaweb CHECKPKG_OVERRIDES_CSWgitgui += surplus-dependency|CSWtk CHECKPKG_OVERRIDES_CSWgitgui += surplus-dependency|CSWgit CHECKPKG_OVERRIDES_CSWgitemacs += surplus-dependency|CSWgit This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Wed Feb 2 08:34:51 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Wed, 02 Feb 2011 07:34:51 +0000 Subject: [csw-devel] SF.net SVN: gar:[13167] csw/mgar/pkg/lang-python/atomixlib/trunk/Makefile Message-ID: Revision: 13167 http://gar.svn.sourceforge.net/gar/?rev=13167&view=rev Author: wahwah Date: 2011-02-02 07:34:51 +0000 (Wed, 02 Feb 2011) Log Message: ----------- atomixlib: Initial commit Modified Paths: -------------- csw/mgar/pkg/lang-python/atomixlib/trunk/Makefile Modified: csw/mgar/pkg/lang-python/atomixlib/trunk/Makefile =================================================================== --- csw/mgar/pkg/lang-python/atomixlib/trunk/Makefile 2011-02-02 04:00:30 UTC (rev 13166) +++ csw/mgar/pkg/lang-python/atomixlib/trunk/Makefile 2011-02-02 07:34:51 UTC (rev 13167) @@ -17,4 +17,6 @@ CATALOGNAME_CSWpy-atomixlib = py_atomixlib DEP_PKGS = CSWpy-amara CONFIGURE_ARGS = $(DIRPATHS) +ARCHALL_CSWpy-atomixlib = 1 +CHECKPKG_OVERRIDES_CSWpy-atomixlib += surplus-dependency|CSWpy-amara include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Wed Feb 2 09:03:54 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Wed, 02 Feb 2011 08:03:54 +0000 Subject: [csw-devel] SF.net SVN: gar:[13168] csw/mgar/pkg/gar/trunk Message-ID: Revision: 13168 http://gar.svn.sourceforge.net/gar/?rev=13168&view=rev Author: wahwah Date: 2011-02-02 08:03:54 +0000 (Wed, 02 Feb 2011) Log Message: ----------- gar: Update packaging, adding mgar wrapper Also removing garit from the package, it doesn't seem to be useful. Modified Paths: -------------- csw/mgar/pkg/gar/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/gar/trunk/files/COPYING Property Changed: ---------------- csw/mgar/pkg/gar/trunk/Makefile Modified: csw/mgar/pkg/gar/trunk/Makefile =================================================================== --- csw/mgar/pkg/gar/trunk/Makefile 2011-02-02 07:34:51 UTC (rev 13167) +++ csw/mgar/pkg/gar/trunk/Makefile 2011-02-02 08:03:54 UTC (rev 13168) @@ -1,3 +1,5 @@ +# $Id$ + NAME = gar VERSION = 2.0 CATEGORIES = utils @@ -9,7 +11,8 @@ # No master sites, we already have GAR in the repository MASTER_SITES = svn-http://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/ SVNHTTP_CO_ARGS = --no-auth-cache -DISTFILES = v1 v2 +DISTFILES += v1 v2 +DISTFILES += COPYING NOCHECKSUM = v1 v2 DISTFILES += garit @@ -20,7 +23,8 @@ NOSOURCEPACKAGE = 1 -RUNTIME_DEP_PKGS_CSWgar = $(PREREQUISITE_BASE_PKGS) +RUNTIME_DEP_PKGS_CSWgar += $(PREREQUISITE_BASE_PKGS) +RUNTIME_DEP_PKGS_CSWgar += CSWruby SPKG_DESC_CSWgar = The GAR package build system @@ -33,18 +37,31 @@ ARCHALL = 1 +CHECKPKG_OVERRIDES_CSWgar += surplus-dependency +# We know about them, they are okay. +CHECKPKG_OVERRIDES_CSWgar += file-with-bad-content +CHECKPKG_OVERRIDES_CSWgar += archall-with-arch-paths|/opt/csw/src/gar/v2/etc/commondirs-i386 + +EXTRA_MERGE_EXCLUDE_FILES += $(prefix)/src/gar/v2/.gitignore + include gar/category.mk SPKG_REVSTAMP := $(SPKG_REVSTAMP)_rev=$(call _REVISION) +post-fetch: + svn export https://opencsw.svn.sourceforge.net/svnroot/opencsw/gar-wrapper/mgar $(DOWNLOADDIR)/mgar + @$(MAKECOOKIE) + install-gar: @echo " ==> Installing $(NAME)" - - rm -f $(DESTDIR)$(bindir)/garit ginstall -d $(DESTDIR)$(bindir) - ginstall $(WORKSRC)/garit $(DESTDIR)$(bindir)/garit + # garit seems to be not developed yet. Not including for now. + # rm -f $(DESTDIR)$(bindir)/garit + # ginstall $(WORKSRC)/garit $(DESTDIR)$(bindir)/garit ginstall -d $(DESTDIR)$(prefix)/src/gar + ginstall $(DOWNLOADDIR)/mgar $(DESTDIR)$(bindir)/mgar cd $(WORKSRC) && pax -r -w -v -s ,.*/\.svn.*,, v1 v2 $(DESTDIR)$(prefix)/src/gar + @$(MAKECOOKIE) # This is a workaround for builds that are done with umask 0027. There's a # problem in which pax does not preserve the access bits. Property changes on: csw/mgar/pkg/gar/trunk/Makefile ___________________________________________________________________ Added: svn:keywords + Id Added: csw/mgar/pkg/gar/trunk/files/COPYING =================================================================== --- csw/mgar/pkg/gar/trunk/files/COPYING (rev 0) +++ csw/mgar/pkg/gar/trunk/files/COPYING 2011-02-02 08:03:54 UTC (rev 13168) @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + 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 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + 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, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Wed Feb 2 09:34:47 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Wed, 02 Feb 2011 08:34:47 +0000 Subject: [csw-devel] SF.net SVN: gar:[13169] csw/mgar/pkg/gar/trunk/Makefile Message-ID: Revision: 13169 http://gar.svn.sourceforge.net/gar/?rev=13169&view=rev Author: wahwah Date: 2011-02-02 08:34:47 +0000 (Wed, 02 Feb 2011) Log Message: ----------- gar: Needs to depend on CSWnamazu Modified Paths: -------------- csw/mgar/pkg/gar/trunk/Makefile Modified: csw/mgar/pkg/gar/trunk/Makefile =================================================================== --- csw/mgar/pkg/gar/trunk/Makefile 2011-02-02 08:03:54 UTC (rev 13168) +++ csw/mgar/pkg/gar/trunk/Makefile 2011-02-02 08:34:47 UTC (rev 13169) @@ -25,6 +25,7 @@ RUNTIME_DEP_PKGS_CSWgar += $(PREREQUISITE_BASE_PKGS) RUNTIME_DEP_PKGS_CSWgar += CSWruby +RUNTIME_DEP_PKGS_CSWgar += CSWnamazu SPKG_DESC_CSWgar = The GAR package build system This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 2 09:48:47 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 02 Feb 2011 08:48:47 +0000 Subject: [csw-devel] SF.net SVN: gar:[13170] csw/mgar/pkg Message-ID: Revision: 13170 http://gar.svn.sourceforge.net/gar/?rev=13170&view=rev Author: dmichelsen Date: 2011-02-02 08:48:47 +0000 (Wed, 02 Feb 2011) Log Message: ----------- talloc: Initial commit Added Paths: ----------- csw/mgar/pkg/talloc/ csw/mgar/pkg/talloc/Makefile csw/mgar/pkg/talloc/branches/ csw/mgar/pkg/talloc/tags/ csw/mgar/pkg/talloc/trunk/ csw/mgar/pkg/talloc/trunk/Makefile csw/mgar/pkg/talloc/trunk/checksums csw/mgar/pkg/talloc/trunk/files/ Copied: csw/mgar/pkg/talloc/Makefile (from rev 13157, csw/mgar/pkg/template/Makefile) =================================================================== --- csw/mgar/pkg/talloc/Makefile (rev 0) +++ csw/mgar/pkg/talloc/Makefile 2011-02-02 08:48:47 UTC (rev 13170) @@ -0,0 +1,15 @@ +# vim: ft=make ts=4 sw=4 noet + +default: + @echo "You are in the pkg/ directory." + +%: + $(MAKE) -C trunk $* + +paranoid-%: + $(MAKE) -C trunk $* || exit 2 + +export BUILDLOG ?= $(shell pwd)/buildlog.txt + +report-%: + $(MAKE) -C trunk $* || echo " *** make $* in $$i failed ***" >> $(BUILDLOG) Property changes on: csw/mgar/pkg/talloc/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/talloc/trunk/Makefile =================================================================== --- csw/mgar/pkg/talloc/trunk/Makefile (rev 0) +++ csw/mgar/pkg/talloc/trunk/Makefile 2011-02-02 08:48:47 UTC (rev 13170) @@ -0,0 +1,58 @@ +# $Id$ +NAME = talloc +VERSION = 2.0.5 +CATEGORIES = lib + +DESCRIPTION = A hierarchical, reference counted memory pool system +define BLURB +endef + +MASTER_SITES = http://samba.org/ftp/talloc/ +DISTFILES = $(DISTNAME).tar.gz + +# File name regex to get notifications about upstream software releases +UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz + +PACKAGES += CSWlibtalloc2 +CATALOGNAME_CSWlibtalloc2 = libtalloc2 +SPKG_DESC_CSWlibtalloc2 = A hierarchical, reference counted memory pool system, libtalloc.so.2 +PKGFILES_CSWlibtalloc2 = $(call baseisadirs,$(libdir),libtalloc\.so\.2(\.\d+)*) + +PACKAGES += CSWlibtalloc-dev +CATALOGNAME_CSWlibtalloc-dev = libtalloc_dev +SPKG_DESC_CSWlibtalloc-dev = Development Files for libtalloc +RUNTIME_DEP_PKGS_CSWlibtalloc-dev += CSWlibtalloc2 +RUNTIME_DEP_PKGS_CSWlibtalloc-dev += CSWpy-talloc +# PKGFILES is catchall + +PACKAGES += CSWpy-talloc +CATALOGNAME_CSWpy-talloc = py_talloc +SPKG_DESC_CSWpy-talloc = Python Bindings for libtalloc +PKGFILES_CSWpy-talloc += $(call baseisadirs,$(libdir),libpytalloc-util\.so\.2(\.\d+)*) +PKGFILES_CSWpy-talloc += $(libdir)/python/.* +RUNTIME_DEP_PKGS_CSWpy-talloc += CSWlibtalloc2 +RUNTIME_DEP_PKGS_CSWpy-talloc += CSWlibpython2-6-1-0 +CHECKPKG_OVERRIDES_CSWpy-talloc += shared-lib-pkgname-mismatch|file=opt/csw/lib/libpytalloc-util.so.2.0.5|soname=libpytalloc-util.so.2|pkgname=CSWpy-talloc|expected=CSWlibpytalloc-util2 + +PACKAGES += CSWpy-talloc-dev +CATALOGNAME_CSWpy-talloc-dev = py_talloc_dev +SPKG_DESC_CSWpy-talloc-dev = Development Files for libtalloc Python Bindings +PKGFILES_CSWpy-talloc-dev += $(includedir)/pytalloc\.h +PKGFILES_CSWpy-talloc-dev += $(call baseisadirs,$(libdir),libpytalloc-util\.so) +PKGFILES_CSWpy-talloc-dev += $(call baseisadirs,$(libdir),pkgconfig/pytalloc-util\.pc) +RUNTIME_DEP_PKGS_CSWpy-talloc-dev = CSWpython-devel +RUNTIME_DEP_PKGS_CSWpy-talloc-dev = CSWpy-talloc + +VENDOR_URL = http://talloc.samba.org/talloc/doc/html/index.html + +LICENSE = NEWS + +BUILD64 = 1 +NODIRPATHS = --exec_prefix +CONFIGURE_ARGS = $(DIRPATHS) +CONFIGURE_ARGS += --exec-prefix=$(exec_prefix) + +EXTRA_TEST_EXPORTS = LD_LIBRARY_PATH +LD_LIBRARY_PATH=$(abspath $(WORKSRC)/bin/shared) + +include gar/category.mk Property changes on: csw/mgar/pkg/talloc/trunk/Makefile ___________________________________________________________________ Added: svn:keywords + Id Added: csw/mgar/pkg/talloc/trunk/checksums =================================================================== --- csw/mgar/pkg/talloc/trunk/checksums (rev 0) +++ csw/mgar/pkg/talloc/trunk/checksums 2011-02-02 08:48:47 UTC (rev 13170) @@ -0,0 +1 @@ +6e3fdfbc43dde8ccba27b6af894b8fb2 talloc-2.0.5.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From idogan23 at users.sourceforge.net Wed Feb 2 11:38:21 2011 From: idogan23 at users.sourceforge.net (idogan23 at users.sourceforge.net) Date: Wed, 02 Feb 2011 10:38:21 +0000 Subject: [csw-devel] SF.net SVN: gar:[13171] csw/mgar/pkg Message-ID: Revision: 13171 http://gar.svn.sourceforge.net/gar/?rev=13171&view=rev Author: idogan23 Date: 2011-02-02 10:38:20 +0000 (Wed, 02 Feb 2011) Log Message: ----------- drill: rename Modified Paths: -------------- csw/mgar/pkg/ldns_drill/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/ldns_drill/ Removed Paths: ------------- csw/mgar/pkg/drill/ Modified: csw/mgar/pkg/ldns_drill/trunk/Makefile =================================================================== --- csw/mgar/pkg/drill/trunk/Makefile 2011-02-02 08:48:47 UTC (rev 13170) +++ csw/mgar/pkg/ldns_drill/trunk/Makefile 2011-02-02 10:38:20 UTC (rev 13171) @@ -1,5 +1,5 @@ NAME = drill -VERSION = 1.6.7 +VERSION = 1.6.8 CATEGORIES = utils DESCRIPTION = A dig style dnssec aware dns debugging tool @@ -28,6 +28,8 @@ RUNTIME_DEP_PKGS = CSWlibldns1 RUNTIME_DEP_PKGS += CSWosslrt +INCOMPATIBLE_PKGS_CSWdrill = CSWdrill + CONFIGURE_ARGS = $(DIRPATHS) CONFIGURE_ARGS += --with-ssl=/opt/csw CONFIGURE_ARGS += --with-ldns=/opt/csw This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From idogan23 at users.sourceforge.net Wed Feb 2 12:21:27 2011 From: idogan23 at users.sourceforge.net (idogan23 at users.sourceforge.net) Date: Wed, 02 Feb 2011 11:21:27 +0000 Subject: [csw-devel] SF.net SVN: gar:[13172] csw/mgar/pkg/ldns_drill/trunk Message-ID: Revision: 13172 http://gar.svn.sourceforge.net/gar/?rev=13172&view=rev Author: idogan23 Date: 2011-02-02 11:21:27 +0000 (Wed, 02 Feb 2011) Log Message: ----------- package renamed to ldsn_drill Modified Paths: -------------- csw/mgar/pkg/ldns_drill/trunk/Makefile csw/mgar/pkg/ldns_drill/trunk/checksums Modified: csw/mgar/pkg/ldns_drill/trunk/Makefile =================================================================== --- csw/mgar/pkg/ldns_drill/trunk/Makefile 2011-02-02 10:38:20 UTC (rev 13171) +++ csw/mgar/pkg/ldns_drill/trunk/Makefile 2011-02-02 11:21:27 UTC (rev 13172) @@ -1,8 +1,8 @@ -NAME = drill +NAME = ldns_drill VERSION = 1.6.8 CATEGORIES = utils -DESCRIPTION = A dig style dnssec aware dns debugging tool +DESCRIPTION = A dig style dnssec aware dns debugging tool (ldns) define BLURB Drill is a tool a la dig from BIND. It was designed with DNSSEC in mind and should be a useful debugging/query tool for DNSSEC. @@ -11,6 +11,8 @@ MASTER_SITES = http://www.nlnetlabs.nl/projects/ldns/ DISTFILES = ldns-$(VERSION).tar.gz +PACKAGES = CSWldnsdrill + PACKAGING_PLATFORMS = solaris9-sparc solaris9-i386 # We define upstream file regex so we can be notifed of new upstream software release Modified: csw/mgar/pkg/ldns_drill/trunk/checksums =================================================================== --- csw/mgar/pkg/ldns_drill/trunk/checksums 2011-02-02 10:38:20 UTC (rev 13171) +++ csw/mgar/pkg/ldns_drill/trunk/checksums 2011-02-02 11:21:27 UTC (rev 13172) @@ -1 +1 @@ -7c0c50ee6b91ae6b713616b70005ad03 ldns-1.6.7.tar.gz +17d15e0d185a6258eed2c3806d8fc7c5 ldns-1.6.8.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 2 14:54:42 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 02 Feb 2011 13:54:42 +0000 Subject: [csw-devel] SF.net SVN: gar:[13173] csw/mgar/pkg/talloc/trunk/Makefile Message-ID: Revision: 13173 http://gar.svn.sourceforge.net/gar/?rev=13173&view=rev Author: dmichelsen Date: 2011-02-02 13:54:42 +0000 (Wed, 02 Feb 2011) Log Message: ----------- talloc: Split off libpytalloc-util.so.2 Modified Paths: -------------- csw/mgar/pkg/talloc/trunk/Makefile Modified: csw/mgar/pkg/talloc/trunk/Makefile =================================================================== --- csw/mgar/pkg/talloc/trunk/Makefile 2011-02-02 11:21:27 UTC (rev 13172) +++ csw/mgar/pkg/talloc/trunk/Makefile 2011-02-02 13:54:42 UTC (rev 13173) @@ -16,7 +16,7 @@ PACKAGES += CSWlibtalloc2 CATALOGNAME_CSWlibtalloc2 = libtalloc2 SPKG_DESC_CSWlibtalloc2 = A hierarchical, reference counted memory pool system, libtalloc.so.2 -PKGFILES_CSWlibtalloc2 = $(call baseisadirs,$(libdir),libtalloc\.so\.2(\.\d+)*) +PKGFILES_CSWlibtalloc2 += $(call baseisadirs,$(libdir),libtalloc\.so\.2(\.\d+)*) PACKAGES += CSWlibtalloc-dev CATALOGNAME_CSWlibtalloc-dev = libtalloc_dev @@ -25,14 +25,20 @@ RUNTIME_DEP_PKGS_CSWlibtalloc-dev += CSWpy-talloc # PKGFILES is catchall +PACKAGES += CSWlibpytalloc-util2 +CATALOGNAME_CSWlibpytalloc-util2 = libpytalloc_util2 +SPKG_DESC_CSWlibpytalloc-util2 = Python talloc library, libpytalloc-util.so.2 +RUNTIME_DEP_PKGS_CSWlibpytalloc-util2 += CSWlibtalloc2 +RUNTIME_DEP_PKGS_CSWlibpytalloc-util2 += CSWlibpython2-6-1-0 +PKGFILES_CSWlibpytalloc-util2 = $(call baseisadirs,$(libdir),libpytalloc-util\.so\.2(\.\d+)*) + PACKAGES += CSWpy-talloc CATALOGNAME_CSWpy-talloc = py_talloc SPKG_DESC_CSWpy-talloc = Python Bindings for libtalloc -PKGFILES_CSWpy-talloc += $(call baseisadirs,$(libdir),libpytalloc-util\.so\.2(\.\d+)*) PKGFILES_CSWpy-talloc += $(libdir)/python/.* RUNTIME_DEP_PKGS_CSWpy-talloc += CSWlibtalloc2 +RUNTIME_DEP_PKGS_CSWpy-talloc += CSWlibpytalloc-util2 RUNTIME_DEP_PKGS_CSWpy-talloc += CSWlibpython2-6-1-0 -CHECKPKG_OVERRIDES_CSWpy-talloc += shared-lib-pkgname-mismatch|file=opt/csw/lib/libpytalloc-util.so.2.0.5|soname=libpytalloc-util.so.2|pkgname=CSWpy-talloc|expected=CSWlibpytalloc-util2 PACKAGES += CSWpy-talloc-dev CATALOGNAME_CSWpy-talloc-dev = py_talloc_dev @@ -40,8 +46,9 @@ PKGFILES_CSWpy-talloc-dev += $(includedir)/pytalloc\.h PKGFILES_CSWpy-talloc-dev += $(call baseisadirs,$(libdir),libpytalloc-util\.so) PKGFILES_CSWpy-talloc-dev += $(call baseisadirs,$(libdir),pkgconfig/pytalloc-util\.pc) -RUNTIME_DEP_PKGS_CSWpy-talloc-dev = CSWpython-devel -RUNTIME_DEP_PKGS_CSWpy-talloc-dev = CSWpy-talloc +RUNTIME_DEP_PKGS_CSWpy-talloc-dev += CSWpython-devel +RUNTIME_DEP_PKGS_CSWpy-talloc-dev += CSWpy-talloc +RUNTIME_DEP_PKGS_CSWpy-talloc-dev += CSWlibpytalloc-util2 VENDOR_URL = http://talloc.samba.org/talloc/doc/html/index.html This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 2 16:06:57 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 02 Feb 2011 15:06:57 +0000 Subject: [csw-devel] SF.net SVN: gar:[13174] csw/mgar/pkg Message-ID: Revision: 13174 http://gar.svn.sourceforge.net/gar/?rev=13174&view=rev Author: dmichelsen Date: 2011-02-02 15:06:56 +0000 (Wed, 02 Feb 2011) Log Message: ----------- aria2: Initial commit, now hangs on ugly c++ problem Added Paths: ----------- csw/mgar/pkg/aria2/ csw/mgar/pkg/aria2/Makefile csw/mgar/pkg/aria2/branches/ csw/mgar/pkg/aria2/tags/ csw/mgar/pkg/aria2/trunk/ csw/mgar/pkg/aria2/trunk/Makefile csw/mgar/pkg/aria2/trunk/checksums csw/mgar/pkg/aria2/trunk/files/ csw/mgar/pkg/aria2/trunk/files/0001-Remove-tailing-commas-in-enum.patch csw/mgar/pkg/aria2/trunk/files/0002-Use-inttypes-if-stdint-is-not-available.patch Copied: csw/mgar/pkg/aria2/Makefile (from rev 13157, csw/mgar/pkg/template/Makefile) =================================================================== --- csw/mgar/pkg/aria2/Makefile (rev 0) +++ csw/mgar/pkg/aria2/Makefile 2011-02-02 15:06:56 UTC (rev 13174) @@ -0,0 +1,15 @@ +# vim: ft=make ts=4 sw=4 noet + +default: + @echo "You are in the pkg/ directory." + +%: + $(MAKE) -C trunk $* + +paranoid-%: + $(MAKE) -C trunk $* || exit 2 + +export BUILDLOG ?= $(shell pwd)/buildlog.txt + +report-%: + $(MAKE) -C trunk $* || echo " *** make $* in $$i failed ***" >> $(BUILDLOG) Property changes on: csw/mgar/pkg/aria2/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/aria2/trunk/Makefile =================================================================== --- csw/mgar/pkg/aria2/trunk/Makefile (rev 0) +++ csw/mgar/pkg/aria2/trunk/Makefile 2011-02-02 15:06:56 UTC (rev 13174) @@ -0,0 +1,21 @@ +# $Id$ +NAME = aria2 +VERSION = 1.10.9 +CATEGORIES = utils + +DESCRIPTION = The Next Generation Download Utility +define BLURB +endef + +MASTER_SITES = $(SF_MIRROR) +DISTFILES = $(DISTNAME).tar.xz + +PATCHFILES += 0001-Remove-tailing-commas-in-enum.patch +PATCHFILES += 0002-Use-inttypes-if-stdint-is-not-available.patch + +# File name regex to get notifications about upstream software releases +UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.xz + +CONFIGURE_ARGS = $(DIRPATHS) + +include gar/category.mk Property changes on: csw/mgar/pkg/aria2/trunk/Makefile ___________________________________________________________________ Added: svn:keywords + Id Added: csw/mgar/pkg/aria2/trunk/checksums =================================================================== --- csw/mgar/pkg/aria2/trunk/checksums (rev 0) +++ csw/mgar/pkg/aria2/trunk/checksums 2011-02-02 15:06:56 UTC (rev 13174) @@ -0,0 +1 @@ +531b27fec0ec3ecae6f8afa2b6445e7e aria2-1.10.9.tar.xz Added: csw/mgar/pkg/aria2/trunk/files/0001-Remove-tailing-commas-in-enum.patch =================================================================== --- csw/mgar/pkg/aria2/trunk/files/0001-Remove-tailing-commas-in-enum.patch (rev 0) +++ csw/mgar/pkg/aria2/trunk/files/0001-Remove-tailing-commas-in-enum.patch 2011-02-02 15:06:56 UTC (rev 13174) @@ -0,0 +1,39 @@ +From 76455a514108a4bae8346ebb4f81e927bc11d384 Mon Sep 17 00:00:00 2001 +From: Dagobert Michelsen +Date: Wed, 2 Feb 2011 15:42:22 +0100 +Subject: [PATCH 1/2] Remove tailing commas in enum + +--- + src/Logger.h | 2 +- + src/PeerStat.h | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/Logger.h b/src/Logger.h +index 6d64e6e..5cec7f4 100644 +--- a/src/Logger.h ++++ b/src/Logger.h +@@ -51,7 +51,7 @@ public: + A2_INFO = 1 << 1, + A2_NOTICE = 1 << 2, + A2_WARN = 1 << 3, +- A2_ERROR = 1 << 4, ++ A2_ERROR = 1 << 4 + }; + private: + LEVEL logLevel_; +diff --git a/src/PeerStat.h b/src/PeerStat.h +index fc491c1..48f3dd2 100644 +--- a/src/PeerStat.h ++++ b/src/PeerStat.h +@@ -49,7 +49,7 @@ class PeerStat { + public: + enum STATUS { + IDLE, +- ACTIVE, ++ ACTIVE + }; + private: + cuid_t cuid_; +-- +1.7.3.2 + Added: csw/mgar/pkg/aria2/trunk/files/0002-Use-inttypes-if-stdint-is-not-available.patch =================================================================== --- csw/mgar/pkg/aria2/trunk/files/0002-Use-inttypes-if-stdint-is-not-available.patch (rev 0) +++ csw/mgar/pkg/aria2/trunk/files/0002-Use-inttypes-if-stdint-is-not-available.patch 2011-02-02 15:06:56 UTC (rev 13174) @@ -0,0 +1,132 @@ +From 226b1019fd220a305bc3e9f364685c3fb2ff584e Mon Sep 17 00:00:00 2001 +From: Dagobert Michelsen +Date: Wed, 2 Feb 2011 15:43:26 +0100 +Subject: [PATCH 2/2] Use inttypes if stdint is not available + +--- + src/DownloadResult.h | 8 +++++++- + src/ProgressAwareEntry.h | 9 ++++++++- + src/Segment.h | 9 ++++++++- + src/TimeA2.h | 8 +++++++- + src/TransferStat.h | 8 +++++++- + src/common.h | 8 +++++++- + 6 files changed, 44 insertions(+), 6 deletions(-) + +diff --git a/src/DownloadResult.h b/src/DownloadResult.h +index f224750..e62f925 100644 +--- a/src/DownloadResult.h ++++ b/src/DownloadResult.h +@@ -37,7 +37,13 @@ + + #include "common.h" + +-#include ++#ifdef HAVE_STDINT_H ++# include ++#else ++# ifdef HAVE_INTTYPES_H ++# include ++# endif ++#endif + + #include + #include +diff --git a/src/ProgressAwareEntry.h b/src/ProgressAwareEntry.h +index 48f0ad0..d658ef1 100644 +--- a/src/ProgressAwareEntry.h ++++ b/src/ProgressAwareEntry.h +@@ -37,7 +37,14 @@ + + #include "common.h" + +-#include ++#ifdef HAVE_STDINT_H ++# include ++#else ++# ifdef HAVE_INTTYPES_H ++# include ++# endif ++#endif ++ + #include + + #include "SharedHandle.h" +diff --git a/src/Segment.h b/src/Segment.h +index b8f38c9..efc181d 100644 +--- a/src/Segment.h ++++ b/src/Segment.h +@@ -37,7 +37,14 @@ + + #include "common.h" + +-#include ++#ifdef HAVE_STDINT_H ++# include ++#else ++# ifdef HAVE_INTTYPES_H ++# include ++# endif ++#endif ++ + #include + + #include "SharedHandle.h" +diff --git a/src/TimeA2.h b/src/TimeA2.h +index 97302a5..dd2a1fc 100644 +--- a/src/TimeA2.h ++++ b/src/TimeA2.h +@@ -37,7 +37,13 @@ + + #include "common.h" + +-#include ++#ifdef HAVE_STDINT_H ++# include ++#else ++# ifdef HAVE_INTTYPES_H ++# include ++# endif ++#endif + + #include + +diff --git a/src/TransferStat.h b/src/TransferStat.h +index b8ffef4..480fccf 100644 +--- a/src/TransferStat.h ++++ b/src/TransferStat.h +@@ -36,7 +36,13 @@ + #define D_TRANSFER_STAT_H + + #include "common.h" +-#include ++#ifdef HAVE_STDINT_H ++# include ++#else ++# ifdef HAVE_INTTYPES_H ++# include ++# endif ++#endif + + namespace aria2 { + +diff --git a/src/common.h b/src/common.h +index dee2bff..c2b9717 100644 +--- a/src/common.h ++++ b/src/common.h +@@ -77,6 +77,12 @@ typedef _off_t off_t; + // use C99 limit macros + #define __STDC_LIMIT_MACROS + // included here for compatibility issues with old compiler/libraries. +-#include ++#ifdef HAVE_STDINT_H ++# include ++#else ++# ifdef HAVE_INTTYPES_H ++# include ++# endif ++#endif + + #endif // D_COMMON_H +-- +1.7.3.2 + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 2 16:21:14 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 02 Feb 2011 15:21:14 +0000 Subject: [csw-devel] SF.net SVN: gar:[13175] csw/mgar/pkg/pixman/trunk Message-ID: Revision: 13175 http://gar.svn.sourceforge.net/gar/?rev=13175&view=rev Author: dmichelsen Date: 2011-02-02 15:21:14 +0000 (Wed, 02 Feb 2011) Log Message: ----------- pixman: Update to 0.21.4 Modified Paths: -------------- csw/mgar/pkg/pixman/trunk/Makefile csw/mgar/pkg/pixman/trunk/checksums Added Paths: ----------- csw/mgar/pkg/pixman/trunk/files/0001-Use-inttypes-if-stdint-is-not-available.patch Removed Paths: ------------- csw/mgar/pkg/pixman/trunk/files/pixman-bits-image.c.diff csw/mgar/pkg/pixman/trunk/files/pixman-private.h.diff Modified: csw/mgar/pkg/pixman/trunk/Makefile =================================================================== --- csw/mgar/pkg/pixman/trunk/Makefile 2011-02-02 15:06:56 UTC (rev 13174) +++ csw/mgar/pkg/pixman/trunk/Makefile 2011-02-02 15:21:14 UTC (rev 13175) @@ -1,5 +1,5 @@ NAME = pixman -VERSION = 0.18.0 +VERSION = 0.21.4 CATEGORIES = lib DESCRIPTION = The pixel-manipulation library for X and cairo @@ -9,20 +9,27 @@ MASTER_SITES = http://www.cairographics.org/releases/ DISTFILES = $(NAME)-$(VERSION).tar.gz +PATCHFILES += 0001-Use-inttypes-if-stdint-is-not-available.patch + # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz -# Same as from gar/x11/categories/x11/category.mk -EXTRA_CFLAGS = -xlibmil -errtags=yes -erroff=E_EMPTY_DECLARATION -EXTRA_CXXFLAGS = -xlibmil -xlibmopt -features=tmplife -norunpath +# It should be sufficient to add '-mt', but then I get +# undefined symbol on ___tls_get_addr. Explicit linkage against libthread.so +# solved it, but I am unsure if this is correct. +EXTRA_CFLAGS = -mt +EXTRA_LINKER_FLAGS = -mt -lthread BUILD64 = 1 NOISALIST = 1 - -PATCHFILES = pixman-private.h.diff - CONFIGURE_ARGS = $(DIRPATHS) CONFIGURE_ARGS += --disable-gtk -CONFIGURE_ARGS += --disable-timers +CONFIGURE_ARGS-i386 = --disable-sse2 +CONFIGURE_ARGS += $(CONFIGURE_ARGS-$(ISA)) + +#CONFIGURE_ARGS += --disable-timers +#CONFIGURE_ARGS += --disable-gcc-inline-asm +# CONFIGURE_ARGS += --disable-openmp + include gar/category.mk Modified: csw/mgar/pkg/pixman/trunk/checksums =================================================================== --- csw/mgar/pkg/pixman/trunk/checksums 2011-02-02 15:06:56 UTC (rev 13174) +++ csw/mgar/pkg/pixman/trunk/checksums 2011-02-02 15:21:14 UTC (rev 13175) @@ -1,2 +1 @@ -a4fb870fc325be258089f1683642e976 pixman-0.18.0.tar.gz -f78d71433a7d574ff66b7d2bf3ea2a49 pixman-private.h.diff +e50975ace979cd416a505827c15191b4 pixman-0.21.4.tar.gz Added: csw/mgar/pkg/pixman/trunk/files/0001-Use-inttypes-if-stdint-is-not-available.patch =================================================================== --- csw/mgar/pkg/pixman/trunk/files/0001-Use-inttypes-if-stdint-is-not-available.patch (rev 0) +++ csw/mgar/pkg/pixman/trunk/files/0001-Use-inttypes-if-stdint-is-not-available.patch 2011-02-02 15:21:14 UTC (rev 13175) @@ -0,0 +1,32 @@ +From 51a0082ec56c17697871d3f08910a435fefefbe2 Mon Sep 17 00:00:00 2001 +From: Dagobert Michelsen +Date: Wed, 2 Feb 2011 16:17:35 +0100 +Subject: [PATCH] Use inttypes if stdint is not available + +--- + test/lowlevel-blt-bench.c | 9 ++++++++- + 1 files changed, 8 insertions(+), 1 deletions(-) + +diff --git a/test/lowlevel-blt-bench.c b/test/lowlevel-blt-bench.c +index f7ebb1f..c3e402f 100644 +--- a/test/lowlevel-blt-bench.c ++++ b/test/lowlevel-blt-bench.c +@@ -22,7 +22,14 @@ + * DEALINGS IN THE SOFTWARE. + */ + +-#include ++#ifdef HAVE_STDINT_H ++# include ++#else ++# ifdef HAVE_INTTYPES_H ++# include ++# endif ++#endif ++ + #include + #include + #include +-- +1.7.3.2 + Deleted: csw/mgar/pkg/pixman/trunk/files/pixman-bits-image.c.diff =================================================================== --- csw/mgar/pkg/pixman/trunk/files/pixman-bits-image.c.diff 2011-02-02 15:06:56 UTC (rev 13174) +++ csw/mgar/pkg/pixman/trunk/files/pixman-bits-image.c.diff 2011-02-02 15:21:14 UTC (rev 13175) @@ -1,12 +0,0 @@ -diff --speed-large-files --minimal -Nru pixman-0.15.12.orig/pixman/pixman-bits-image.c pixman-0.15.12/pixman/pixman-bits-image.c ---- pixman-0.15.12.orig/pixman/pixman-bits-image.c 2009-06-18 23:17:05.103503620 +0200 -+++ pixman-0.15.12/pixman/pixman-bits-image.c 2009-06-18 23:17:14.684711072 +0200 -@@ -251,7 +251,7 @@ - coords[i + 1] = y; - } - -- return bits_image_fetch_pixels_src_clip (image, buffer, n_pixels); -+ bits_image_fetch_pixels_src_clip (image, buffer, n_pixels); - } - - #define N_TMP_PIXELS (256) Deleted: csw/mgar/pkg/pixman/trunk/files/pixman-private.h.diff =================================================================== --- csw/mgar/pkg/pixman/trunk/files/pixman-private.h.diff 2011-02-02 15:06:56 UTC (rev 13174) +++ csw/mgar/pkg/pixman/trunk/files/pixman-private.h.diff 2011-02-02 15:21:14 UTC (rev 13175) @@ -1,11 +0,0 @@ -diff --speed-large-files --minimal -Nru pixman-0.15.12.orig/pixman/pixman-private.h pixman-0.15.12/pixman/pixman-private.h ---- pixman-0.15.12.orig/pixman/pixman-private.h 2009-06-18 23:17:05.103503620 +0200 -+++ pixman-0.15.12/pixman/pixman-private.h 2009-06-18 23:17:14.684711072 +0200 -@@ -788,6 +788,7 @@ - pixman_region16_data_t *empty_data, - pixman_region16_data_t *broken_data); - -+#undef PIXMAN_TIMERS - #ifdef PIXMAN_TIMERS - - /* Timing */ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 2 16:42:47 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 02 Feb 2011 15:42:47 +0000 Subject: [csw-devel] SF.net SVN: gar:[13176] csw/mgar/pkg/pixman/trunk/Makefile Message-ID: Revision: 13176 http://gar.svn.sourceforge.net/gar/?rev=13176&view=rev Author: dmichelsen Date: 2011-02-02 15:42:47 +0000 (Wed, 02 Feb 2011) Log Message: ----------- pixman: Split off library package Modified Paths: -------------- csw/mgar/pkg/pixman/trunk/Makefile Modified: csw/mgar/pkg/pixman/trunk/Makefile =================================================================== --- csw/mgar/pkg/pixman/trunk/Makefile 2011-02-02 15:21:14 UTC (rev 13175) +++ csw/mgar/pkg/pixman/trunk/Makefile 2011-02-02 15:42:47 UTC (rev 13176) @@ -14,6 +14,25 @@ # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES += CSWpixman +CATALOGNAME_CSWpixman = pixman +SPKG_DESC_CSWpixman = Legacy package as contents moved to CSWlibpixman1-0 +PKGFILES_CSWpixman = NOFILES +ARCHALL_CSWpixman = 1 +RUNTIME_DEP_PKGS_CSWpixman = CSWlibpixman1-0 +CHECKPKG_OVERRIDES_CSWpixman += surplus-dependency|CSWlibpixman1-0 + +PACKAGES += CSWlibpixman1-0 +CATALOGNAME_CSWlibpixman1-0 = libpixman1_0 +SPKG_DESC_CSWlibpixman1-0 = The pixel-manipulation library for X and cairo, libpixman-1.so.0 +PKGFILES_CSWlibpixman1-0 += $(call baseisadirs,$(libdir),libpixman-1\.so\.0(\.\d+)*) + +PACKAGES += CSWlibpixman-dev +CATALOGNAME_CSWlibpixman-dev = libpixman_dev +SPKG_DESC_CSWlibpixman-dev = Development files for libpixman +# PKGFILES is catchall +RUNTIME_DEP_PKGS_CSWlibpixman-dev += CSWlibpixman1-0 + # It should be sufficient to add '-mt', but then I get # undefined symbol on ___tls_get_addr. Explicit linkage against libthread.so # solved it, but I am unsure if this is correct. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 2 16:57:56 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 02 Feb 2011 15:57:56 +0000 Subject: [csw-devel] SF.net SVN: gar:[13177] csw/mgar/pkg Message-ID: Revision: 13177 http://gar.svn.sourceforge.net/gar/?rev=13177&view=rev Author: dmichelsen Date: 2011-02-02 15:57:55 +0000 (Wed, 02 Feb 2011) Log Message: ----------- tardy: Initial commit Added Paths: ----------- csw/mgar/pkg/tardy/ csw/mgar/pkg/tardy/Makefile csw/mgar/pkg/tardy/branches/ csw/mgar/pkg/tardy/tags/ csw/mgar/pkg/tardy/trunk/ csw/mgar/pkg/tardy/trunk/Makefile csw/mgar/pkg/tardy/trunk/checksums csw/mgar/pkg/tardy/trunk/files/ csw/mgar/pkg/tardy/trunk/files/0001-Add-includes-for-va_list-on-Solaris.patch Copied: csw/mgar/pkg/tardy/Makefile (from rev 13170, csw/mgar/pkg/template/Makefile) =================================================================== --- csw/mgar/pkg/tardy/Makefile (rev 0) +++ csw/mgar/pkg/tardy/Makefile 2011-02-02 15:57:55 UTC (rev 13177) @@ -0,0 +1,15 @@ +# vim: ft=make ts=4 sw=4 noet + +default: + @echo "You are in the pkg/ directory." + +%: + $(MAKE) -C trunk $* + +paranoid-%: + $(MAKE) -C trunk $* || exit 2 + +export BUILDLOG ?= $(shell pwd)/buildlog.txt + +report-%: + $(MAKE) -C trunk $* || echo " *** make $* in $$i failed ***" >> $(BUILDLOG) Property changes on: csw/mgar/pkg/tardy/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/tardy/trunk/Makefile =================================================================== --- csw/mgar/pkg/tardy/trunk/Makefile (rev 0) +++ csw/mgar/pkg/tardy/trunk/Makefile 2011-02-02 15:57:55 UTC (rev 13177) @@ -0,0 +1,32 @@ +# $Id$ +NAME = tardy +VERSION = 1.20 +CATEGORIES = utils + +DESCRIPTION = A tar(1) Postprocessor +define BLURB +endef + +MASTER_SITES = $(SF_MIRROR) +DISTFILES = $(DISTNAME).tar.gz + +PATCHFILES += 0001-Add-includes-for-va_list-on-Solaris.patch + +# File name regex to get notifications about upstream software releases +UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz + +LICENSE = LICENSE + +PACKAGES = CSWtardy +CATALOGNAME_CSWtardy = tardy +SPKG_DESC_CSWtardy = $(DESCRIPTION) +RUNTIME_DEP_PKGS_CSWtardy += CSWzlib + +CONFIGURE_ARGS = $(DIRPATHS) + +include gar/category.mk + +pre-install-modulated: + ginstall -d $(DESTDIR)$(bindir) + ginstall -d $(DESTDIR)$(mandir)/man1 + ginstall $(WORKSRC)/man1/tardy.1 $(DESTDIR)$(mandir)/man1/tardy.1 Property changes on: csw/mgar/pkg/tardy/trunk/Makefile ___________________________________________________________________ Added: svn:keywords + Id Added: csw/mgar/pkg/tardy/trunk/checksums =================================================================== --- csw/mgar/pkg/tardy/trunk/checksums (rev 0) +++ csw/mgar/pkg/tardy/trunk/checksums 2011-02-02 15:57:55 UTC (rev 13177) @@ -0,0 +1 @@ +160c411a436b1dd3dca7ef03d69073c7 tardy-1.20.tar.gz Added: csw/mgar/pkg/tardy/trunk/files/0001-Add-includes-for-va_list-on-Solaris.patch =================================================================== --- csw/mgar/pkg/tardy/trunk/files/0001-Add-includes-for-va_list-on-Solaris.patch (rev 0) +++ csw/mgar/pkg/tardy/trunk/files/0001-Add-includes-for-va_list-on-Solaris.patch 2011-02-02 15:57:55 UTC (rev 13177) @@ -0,0 +1,27 @@ +From 3df26d1b1acabc7378025bcec65661a7989fa38e Mon Sep 17 00:00:00 2001 +From: Dagobert Michelsen +Date: Wed, 2 Feb 2011 16:01:41 +0100 +Subject: [PATCH] Add includes for va_list on Solaris + +--- + libtardy/main.h | 6 ++++++ + 1 files changed, 6 insertions(+), 0 deletions(-) + +diff --git a/libtardy/main.h b/libtardy/main.h +index 9a79536..f29aac1 100644 +--- a/libtardy/main.h ++++ b/libtardy/main.h +@@ -42,4 +42,10 @@ + // #define DEBUG + // + ++// Make sure Sun Studio knows about va_list ++#ifdef __SUNPRO_CC ++#include ++#include ++#endif ++ + #endif // MAIN_H +-- +1.7.3.2 + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 2 17:01:20 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 02 Feb 2011 16:01:20 +0000 Subject: [csw-devel] SF.net SVN: gar:[13178] csw/mgar/pkg/tardy/trunk/Makefile Message-ID: Revision: 13178 http://gar.svn.sourceforge.net/gar/?rev=13178&view=rev Author: dmichelsen Date: 2011-02-02 16:01:20 +0000 (Wed, 02 Feb 2011) Log Message: ----------- tardy: Add upstream bug report link Modified Paths: -------------- csw/mgar/pkg/tardy/trunk/Makefile Modified: csw/mgar/pkg/tardy/trunk/Makefile =================================================================== --- csw/mgar/pkg/tardy/trunk/Makefile 2011-02-02 15:57:55 UTC (rev 13177) +++ csw/mgar/pkg/tardy/trunk/Makefile 2011-02-02 16:01:20 UTC (rev 13178) @@ -10,6 +10,8 @@ MASTER_SITES = $(SF_MIRROR) DISTFILES = $(DISTNAME).tar.gz +# Use patch until this is fixed: +# https://sourceforge.net/tracker/?func=detail&aid=3170673&group_id=116896&atid=676344 PATCHFILES += 0001-Add-includes-for-va_list-on-Solaris.patch # File name regex to get notifications about upstream software releases This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Wed Feb 2 18:33:30 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Wed, 02 Feb 2011 17:33:30 +0000 Subject: [csw-devel] SF.net SVN: gar:[13179] csw/mgar/gar/v2/lib/python/catalog_notifier.py Message-ID: Revision: 13179 http://gar.svn.sourceforge.net/gar/?rev=13179&view=rev Author: wahwah Date: 2011-02-02 17:33:30 +0000 (Wed, 02 Feb 2011) Log Message: ----------- catalog-notifier: A bugfix for whitelist handling When there's no whitelist defined, it should send messages to everyone. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/catalog_notifier.py Modified: csw/mgar/gar/v2/lib/python/catalog_notifier.py =================================================================== --- csw/mgar/gar/v2/lib/python/catalog_notifier.py 2011-02-02 16:01:20 UTC (rev 13178) +++ csw/mgar/gar/v2/lib/python/catalog_notifier.py 2011-02-02 17:33:30 UTC (rev 13179) @@ -257,7 +257,8 @@ for email in notifications: if options.send_notifications: logging.debug("email: %s", repr(email)) - if email not in whitelist: continue + if whitelist and email not in whitelist: + continue logging.debug("Sending.") msg = MIMEText(notifications[email]) msg["Subject"] = "OpenCSW catalog update report" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Wed Feb 2 22:40:47 2011 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Wed, 02 Feb 2011 21:40:47 +0000 Subject: [csw-devel] SF.net SVN: gar:[13180] csw/mgar/pkg Message-ID: Revision: 13180 http://gar.svn.sourceforge.net/gar/?rev=13180&view=rev Author: bonivart Date: 2011-02-02 21:40:47 +0000 (Wed, 02 Feb 2011) Log Message: ----------- dialog: initial gar commit, update to 1.1r20110118 Added Paths: ----------- csw/mgar/pkg/dialog/ csw/mgar/pkg/dialog/branches/ csw/mgar/pkg/dialog/tags/ csw/mgar/pkg/dialog/trunk/ csw/mgar/pkg/dialog/trunk/Makefile csw/mgar/pkg/dialog/trunk/checksums csw/mgar/pkg/dialog/trunk/files/ Property changes on: csw/mgar/pkg/dialog/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/dialog/trunk/Makefile =================================================================== --- csw/mgar/pkg/dialog/trunk/Makefile (rev 0) +++ csw/mgar/pkg/dialog/trunk/Makefile 2011-02-02 21:40:47 UTC (rev 13180) @@ -0,0 +1,30 @@ +NAME = dialog +VERSION = 1.1r20110118 +VERSION2 = 1.1 +RELEASE = 20110118 +DISTNAME = $(NAME)-$(VERSION2)-$(RELEASE) +WORKSRC = $(WORKDIR)/$(DISTNAME) +CATEGORIES = utils + +DESCRIPTION = A script-interpreter which provides a set of curses widgets +define BLURB + A script-interpreter which provides a set of curses widgets +endef + +MASTER_SITES = http://invisible-island.net/datafiles/release/ +DISTFILES = $(NAME).tar.gz + +CHECKPKG_OVERRIDES_CSWdialog += file-with-bad-content +CHECKPKG_OVERRIDES_CSWdialog += missing-dependency|CSWpython + +SKIPTEST = 1 + +CONFIGURE_ARGS = $(DIRPATHS) + +include gar/category.mk + +post-install-modulated: + @echo " ==> Post-install for $(NAME) (custom)" + @ginstall -d $(DESTDIR)$(docdir)/$(NAME)/samples + @cp -r $(WORKSRC)/samples $(DESTDIR)$(docdir)/$(NAME)/ + @$(MAKECOOKIE) Added: csw/mgar/pkg/dialog/trunk/checksums =================================================================== --- csw/mgar/pkg/dialog/trunk/checksums (rev 0) +++ csw/mgar/pkg/dialog/trunk/checksums 2011-02-02 21:40:47 UTC (rev 13180) @@ -0,0 +1 @@ +07d6ab77bd8c12c3def07ed72a706194 dialog.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From maciej at opencsw.org Thu Feb 3 10:37:30 2011 From: maciej at opencsw.org (Maciej (Matchek) Blizinski) Date: Thu, 3 Feb 2011 09:37:30 +0000 Subject: [csw-devel] SF.net SVN: gar:[13007] csw/mgar/pkg/krb5-lib/trunk In-Reply-To: References: <233DAC6F-6BC2-4B08-A22E-4F08C2CC35A4@opencsw.org> Message-ID: No dia 20 de Janeiro de 2011 08:28, Peter FELECAN escreveu: > "Maciej (Matchek) Blizinski" writes: >> >> PostgreSQL shared libraries and devel packages are ready, but won't be >> accepted by Phil who doesn't accept the idea of placing shared >> libraries in /opt/csw/lib. > > Can you make a clean slate proposal for that, submit it to > (re)discussion and after that to vote? Thanks for this suggestion. I wrote up the proposal and sent it out[1] for discussion. Maciej [1] http://lists.opencsw.org/pipermail/maintainers/2011-February/013917.html From bonivart at users.sourceforge.net Thu Feb 3 14:05:40 2011 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Thu, 03 Feb 2011 13:05:40 +0000 Subject: [csw-devel] SF.net SVN: gar:[13181] csw/mgar/pkg/pkgutil/trunk/Makefile Message-ID: Revision: 13181 http://gar.svn.sourceforge.net/gar/?rev=13181&view=rev Author: bonivart Date: 2011-02-03 13:05:40 +0000 (Thu, 03 Feb 2011) Log Message: ----------- pkgutilplus: add missing file (#4684) Modified Paths: -------------- csw/mgar/pkg/pkgutil/trunk/Makefile Modified: csw/mgar/pkg/pkgutil/trunk/Makefile =================================================================== --- csw/mgar/pkg/pkgutil/trunk/Makefile 2011-02-02 21:40:47 UTC (rev 13180) +++ csw/mgar/pkg/pkgutil/trunk/Makefile 2011-02-03 13:05:40 UTC (rev 13181) @@ -52,7 +52,7 @@ PKGFILES_CSWpkgutilplus = .*bldcat.* PKGFILES_CSWpkgutilplus += .*chkcat.* PKGFILES_CSWpkgutilplus += .*pkgutilplus.* -PKGFILES_CSWpkgutilplus += .*build_sun_catalog +PKGFILES_CSWpkgutilplus += .*build_sun_catalog.* PKGFILES_CSWpkgutilplus += .*opencsw.py PKGFILES_CSWpkgutilplus += .*cswcatalog This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Feb 3 17:56:22 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 03 Feb 2011 16:56:22 +0000 Subject: [csw-devel] SF.net SVN: gar:[13182] csw/mgar/pkg/xerces-c/trunk/Makefile Message-ID: Revision: 13182 http://gar.svn.sourceforge.net/gar/?rev=13182&view=rev Author: dmichelsen Date: 2011-02-03 16:56:22 +0000 (Thu, 03 Feb 2011) Log Message: ----------- xerces-c: Change package from *devel to *dev Modified Paths: -------------- csw/mgar/pkg/xerces-c/trunk/Makefile Modified: csw/mgar/pkg/xerces-c/trunk/Makefile =================================================================== --- csw/mgar/pkg/xerces-c/trunk/Makefile 2011-02-03 13:05:40 UTC (rev 13181) +++ csw/mgar/pkg/xerces-c/trunk/Makefile 2011-02-03 16:56:22 UTC (rev 13182) @@ -32,16 +32,16 @@ RUNTIME_DEP_PKGS_CSWlibxerces-c3-1 += CSWoldaprt RUNTIME_DEP_PKGS_CSWlibxerces-c3-1 += CSWlibicu46 -PACKAGES += CSWlibxerces-c-devel -CATALOGNAME_CSWlibxerces-c-devel = libxerces_c_devel -SPKG_DESC_CSWlibxerces-c-devel = Development files for Xerces -RUNTIME_DEP_PKGS_CSWlibxerces-c-devel += CSWlibxerces-c3-1 -RUNTIME_DEP_PKGS_CSWlibxerces-c-devel += CSWcurlrt -RUNTIME_DEP_PKGS_CSWlibxerces-c-devel += CSWlibidn -RUNTIME_DEP_PKGS_CSWlibxerces-c-devel += CSWzlib -RUNTIME_DEP_PKGS_CSWlibxerces-c-devel += CSWlibcares -RUNTIME_DEP_PKGS_CSWlibxerces-c-devel += CSWosslrt -RUNTIME_DEP_PKGS_CSWlibxerces-c-devel += CSWoldaprt +PACKAGES += CSWlibxerces-c-dev +CATALOGNAME_CSWlibxerces-c-dev = libxerces_c_dev +SPKG_DESC_CSWlibxerces-c-dev = Development files for Xerces +RUNTIME_DEP_PKGS_CSWlibxerces-c-dev += CSWlibxerces-c3-1 +RUNTIME_DEP_PKGS_CSWlibxerces-c-dev += CSWcurlrt +RUNTIME_DEP_PKGS_CSWlibxerces-c-dev += CSWlibidn +RUNTIME_DEP_PKGS_CSWlibxerces-c-dev += CSWzlib +RUNTIME_DEP_PKGS_CSWlibxerces-c-dev += CSWlibcares +RUNTIME_DEP_PKGS_CSWlibxerces-c-dev += CSWosslrt +RUNTIME_DEP_PKGS_CSWlibxerces-c-dev += CSWoldaprt PACKAGES += CSWxerces-c CATALOGNAME_CSWxerces-c = xerces_c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Thu Feb 3 18:46:57 2011 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Thu, 03 Feb 2011 17:46:57 +0000 Subject: [csw-devel] SF.net SVN: gar:[13183] csw/mgar/pkg/dialog/trunk/Makefile Message-ID: Revision: 13183 http://gar.svn.sourceforge.net/gar/?rev=13183&view=rev Author: bonivart Date: 2011-02-03 17:46:56 +0000 (Thu, 03 Feb 2011) Log Message: ----------- dialog: use ncurses Modified Paths: -------------- csw/mgar/pkg/dialog/trunk/Makefile Modified: csw/mgar/pkg/dialog/trunk/Makefile =================================================================== --- csw/mgar/pkg/dialog/trunk/Makefile 2011-02-03 16:56:22 UTC (rev 13182) +++ csw/mgar/pkg/dialog/trunk/Makefile 2011-02-03 17:46:56 UTC (rev 13183) @@ -14,12 +14,15 @@ MASTER_SITES = http://invisible-island.net/datafiles/release/ DISTFILES = $(NAME).tar.gz +RUNTIME_DEP_PKGS += CSWncurses + CHECKPKG_OVERRIDES_CSWdialog += file-with-bad-content CHECKPKG_OVERRIDES_CSWdialog += missing-dependency|CSWpython SKIPTEST = 1 CONFIGURE_ARGS = $(DIRPATHS) +CONFIGURE_ARGS += --with-ncurses include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Thu Feb 3 22:55:08 2011 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Thu, 03 Feb 2011 21:55:08 +0000 Subject: [csw-devel] SF.net SVN: gar:[13184] csw/mgar/pkg/cpan/Compress-Raw-Zlib/trunk/Makefile Message-ID: Revision: 13184 http://gar.svn.sourceforge.net/gar/?rev=13184&view=rev Author: bonivart Date: 2011-02-03 21:55:08 +0000 (Thu, 03 Feb 2011) Log Message: ----------- pm_compressrawzlib: remove zlib as dep Modified Paths: -------------- csw/mgar/pkg/cpan/Compress-Raw-Zlib/trunk/Makefile Modified: csw/mgar/pkg/cpan/Compress-Raw-Zlib/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Compress-Raw-Zlib/trunk/Makefile 2011-02-03 17:46:56 UTC (rev 13183) +++ csw/mgar/pkg/cpan/Compress-Raw-Zlib/trunk/Makefile 2011-02-03 21:55:08 UTC (rev 13184) @@ -14,8 +14,6 @@ CATALOGNAME = pm_compressrawzlib PACKAGES = CSWpmcompressrawzlib -RUNTIME_DEP_PKGS += CSWzlib - EXTRA_MERGE_EXCLUDE_FILES = .*\/man\/man3.* .*\/man\/man1.* include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Fri Feb 4 04:23:30 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Fri, 04 Feb 2011 03:23:30 +0000 Subject: [csw-devel] SF.net SVN: gar:[13185] csw/mgar/pkg/gettext/trunk/files/ 0001-Use-the-auto-detected-SHELL-to-run-convert-archive.patch Message-ID: Revision: 13185 http://gar.svn.sourceforge.net/gar/?rev=13185&view=rev Author: bdwalton Date: 2011-02-04 03:23:30 +0000 (Fri, 04 Feb 2011) Log Message: ----------- gettext/trunk: update patch to work with new configure tweak patch Modified Paths: -------------- csw/mgar/pkg/gettext/trunk/files/0001-Use-the-auto-detected-SHELL-to-run-convert-archive.patch Modified: csw/mgar/pkg/gettext/trunk/files/0001-Use-the-auto-detected-SHELL-to-run-convert-archive.patch =================================================================== --- csw/mgar/pkg/gettext/trunk/files/0001-Use-the-auto-detected-SHELL-to-run-convert-archive.patch 2011-02-03 21:55:08 UTC (rev 13184) +++ csw/mgar/pkg/gettext/trunk/files/0001-Use-the-auto-detected-SHELL-to-run-convert-archive.patch 2011-02-04 03:23:30 UTC (rev 13185) @@ -1,4 +1,4 @@ -From 5ab8effba3fe58f3adf06190be6e27ada75f2658 Mon Sep 17 00:00:00 2001 +From 2ecccf6cc0d6b295ce6839b3ba9a92e430b1cf7a Mon Sep 17 00:00:00 2001 From: Ben Walton Date: Thu, 26 Aug 2010 03:44:59 +0200 Subject: [PATCH] Use the auto-detected SHELL to run convert-archive @@ -7,11 +7,38 @@ construct that it's broken /bin/sh couldn't handle. We now force the use of the auto-detected POSIX-compliant SHELL to run that script. +We alter both Makefile.in and Makefile.am, which makes this change +sticky across automake invocations. We bumped this after applying Peter +Felecan's configure changes. + Signed-off-by: Ben Walton --- + gettext-tools/misc/Makefile.am | 4 ++-- gettext-tools/misc/Makefile.in | 4 ++-- - 1 files changed, 2 insertions(+), 2 deletions(-) + 2 files changed, 4 insertions(+), 4 deletions(-) +diff --git a/gettext-tools/misc/Makefile.am b/gettext-tools/misc/Makefile.am +index 4147e18..14cdc93 100644 +--- a/gettext-tools/misc/Makefile.am ++++ b/gettext-tools/misc/Makefile.am +@@ -52,7 +52,7 @@ archive.git.tar.gz: archive.dir.tar.gz + else \ + inputfile='$(srcdir)'/archive.dir.tar.gz; \ + fi; \ +- ./convert-archive dir git "$$inputfile" $@ ++ $(SHELL) ./convert-archive dir git "$$inputfile" $@ + + # The archive.cvs.tar.gz is generated from archive.dir.tar.gz. + archive.cvs.tar.gz: archive.dir.tar.gz +@@ -61,7 +61,7 @@ archive.cvs.tar.gz: archive.dir.tar.gz + else \ + inputfile='$(srcdir)'/archive.dir.tar.gz; \ + fi; \ +- ./convert-archive dir cvs "$$inputfile" $@ ++ $(SHELL) ./convert-archive dir cvs "$$inputfile" $@ + + # Emacs Lisp code. + diff --git a/gettext-tools/misc/Makefile.in b/gettext-tools/misc/Makefile.in index 8d2b112..bc42b35 100644 --- a/gettext-tools/misc/Makefile.in @@ -35,5 +62,5 @@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. -- -1.7.1 +1.7.3.2 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From maciej at opencsw.org Fri Feb 4 11:34:48 2011 From: maciej at opencsw.org (=?UTF-8?Q?Maciej_Blizi=C5=84ski?=) Date: Fri, 4 Feb 2011 10:34:48 +0000 Subject: [csw-devel] SF.net SVN: gar:[13171] csw/mgar/pkg In-Reply-To: References: Message-ID: 2011/2/2 : > +INCOMPATIBLE_PKGS_CSWdrill = CSWdrill This looks like a declaration that a package is incompatible with itself. I'll add a check for that. From ihsan at opencsw.org Fri Feb 4 12:46:00 2011 From: ihsan at opencsw.org (=?UTF-8?B?xLBoc2FuIERvxJ9hbg==?=) Date: Fri, 04 Feb 2011 12:46:00 +0100 Subject: [csw-devel] SF.net SVN: gar:[13171] csw/mgar/pkg In-Reply-To: References: Message-ID: <4D4BE6F8.9080303@opencsw.org> Hello Maciej, On 02/ 4/11 11:34 AM, Maciej Blizi?ski wrote: >> +INCOMPATIBLE_PKGS_CSWdrill = CSWdrill > > This looks like a declaration that a package is incompatible with > itself. I'll add a check for that. I've renamed the package from CSWdrill to CSWldnsdrill. --> http://lists.opencsw.org/pipermail/pkgsubmissions/2011-January/002126.html Ihsan -- ihsan at dogan.ch http://blog.dogan.ch/ From dmichelsen at users.sourceforge.net Fri Feb 4 12:46:53 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 04 Feb 2011 11:46:53 +0000 Subject: [csw-devel] SF.net SVN: gar:[13186] csw/mgar/pkg Message-ID: Revision: 13186 http://gar.svn.sourceforge.net/gar/?rev=13186&view=rev Author: dmichelsen Date: 2011-02-04 11:46:53 +0000 (Fri, 04 Feb 2011) Log Message: ----------- mod_auth_kerb: Initial commit Added Paths: ----------- csw/mgar/pkg/mod_auth_kerb/ csw/mgar/pkg/mod_auth_kerb/Makefile csw/mgar/pkg/mod_auth_kerb/branches/ csw/mgar/pkg/mod_auth_kerb/tags/ csw/mgar/pkg/mod_auth_kerb/trunk/ csw/mgar/pkg/mod_auth_kerb/trunk/Makefile csw/mgar/pkg/mod_auth_kerb/trunk/checksums csw/mgar/pkg/mod_auth_kerb/trunk/files/ csw/mgar/pkg/mod_auth_kerb/trunk/files/0001-Fix-install-destination.patch csw/mgar/pkg/mod_auth_kerb/trunk/files/CSWap2modauthkerb.postinstall csw/mgar/pkg/mod_auth_kerb/trunk/files/CSWap2modauthkerb.preremove Copied: csw/mgar/pkg/mod_auth_kerb/Makefile (from rev 13185, csw/mgar/pkg/template/Makefile) =================================================================== --- csw/mgar/pkg/mod_auth_kerb/Makefile (rev 0) +++ csw/mgar/pkg/mod_auth_kerb/Makefile 2011-02-04 11:46:53 UTC (rev 13186) @@ -0,0 +1,15 @@ +# vim: ft=make ts=4 sw=4 noet + +default: + @echo "You are in the pkg/ directory." + +%: + $(MAKE) -C trunk $* + +paranoid-%: + $(MAKE) -C trunk $* || exit 2 + +export BUILDLOG ?= $(shell pwd)/buildlog.txt + +report-%: + $(MAKE) -C trunk $* || echo " *** make $* in $$i failed ***" >> $(BUILDLOG) Property changes on: csw/mgar/pkg/mod_auth_kerb/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/mod_auth_kerb/trunk/Makefile =================================================================== --- csw/mgar/pkg/mod_auth_kerb/trunk/Makefile (rev 0) +++ csw/mgar/pkg/mod_auth_kerb/trunk/Makefile 2011-02-04 11:46:53 UTC (rev 13186) @@ -0,0 +1,55 @@ +NAME = mod_auth_kerb +VERSION = 5.4 +CATEGORIES = server + +DESCRIPTION = Apache Kerberos authentication module +define BLURB + This is the Apache RADIUS authentication module. It allows any Apache web-server + to become a RADIUS client for authentication and accounting requests. You will, + however, need to supply your own RADIUS server to perform the actual authentication. +endef + +SF_PROJ = modauthkerb +MASTER_SITES = $(SF_MIRROR) +DISTFILES = $(NAME)-$(VERSION).tar.gz +DISTFILES += CSWap2modauthkerb.postinstall +DISTFILES += CSWap2modauthkerb.preremove + +PATCHFILES += 0001-Fix-install-destination.patch + +UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz + +VENDOR_URL = http://modauthkerb.sourceforge.net/ +LICENSE = LICENSE + +PACKAGES = CSWap2modauthkerb +CATALOGNAME = ap2_mod_auth_kerb +RUNTIME_DEP_PKGS_CSWap2modauthkerb += CSWkrb5lib +RUNTIME_DEP_PKGS_CSWap2modauthkerb += CSWapache2 +CHECKPKG_OVERRIDES_CSWap2modauthkerb += surplus-dependency|CSWapache2 + +# That path is almost ok +CHECKPKG_OVERRIDES_CSWap2modauthkerb += bad-rpath-entry|/opt/csw/lib/|opt/csw/apache2/libexec/mod_auth_kerb.so + +# Apache paths +AP2_ROOT = $(prefix)/apache2 +AP2_LIBEXEC = $(DESTDIR)$(AP2_ROOT)/libexec + +CONFIGURE_ARGS += $(DIRPATHS) +CONFIGURE_ARGS += --without-krb4 +CONFIGURE_ARGS += --with-krb5=$(prefix) +CONFIGURE_ARGS += --with-apache=$(prefix)/apache2 + +# The package does not provide a check +TEST_SCRIPTS = + +INSTALL_OVERRIDE_VARS = AP2_LIBEXEC +INSTALL_OVERRIDE_VAR_AP2_LIBEXEC = $(AP2_LIBEXEC) + +include gar/category.mk + +pre-install-modulated: + ginstall -d $(AP2_LIBEXEC) + ginstall -d $(DESTDIR)$(docdir)/$(CATALOGNAME) + ginstall $(WORKSRC)/README $(WORKSRC)/INSTALL $(DESTDIR)$(docdir)/$(CATALOGNAME) + @$(MAKECOOKIE) Property changes on: csw/mgar/pkg/mod_auth_kerb/trunk/Makefile ___________________________________________________________________ Added: svn:keywords + Id Added: csw/mgar/pkg/mod_auth_kerb/trunk/checksums =================================================================== --- csw/mgar/pkg/mod_auth_kerb/trunk/checksums (rev 0) +++ csw/mgar/pkg/mod_auth_kerb/trunk/checksums 2011-02-04 11:46:53 UTC (rev 13186) @@ -0,0 +1 @@ +642b81763ad3ca81dba359cb952da5e3 mod_auth_kerb-5.4.tar.gz Added: csw/mgar/pkg/mod_auth_kerb/trunk/files/0001-Fix-install-destination.patch =================================================================== --- csw/mgar/pkg/mod_auth_kerb/trunk/files/0001-Fix-install-destination.patch (rev 0) +++ csw/mgar/pkg/mod_auth_kerb/trunk/files/0001-Fix-install-destination.patch 2011-02-04 11:46:53 UTC (rev 13186) @@ -0,0 +1,37 @@ +From f60dd9c4b6212a72c125f40f4112795ee22c2fe9 Mon Sep 17 00:00:00 2001 +From: Dagobert Michelsen +Date: Fri, 4 Feb 2011 12:25:23 +0100 +Subject: [PATCH] Fix install destination + +--- + Makefile.in | 2 +- + apxs.sh | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/Makefile.in b/Makefile.in +index 36f6046..6c1cb62 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -16,7 +16,7 @@ src/mod_auth_kerb.so: src/mod_auth_kerb.c $(SPNEGO_SRCS) + ./apxs.sh "${CPPFLAGS}" "${LDFLAGS}" "${SPNEGO_SRCS}" "${APXS}" "-c" "src/mod_auth_kerb.c" + + install: +- ./apxs.sh "${CPPFLAGS}" "${LDFLAGS}" "${SPNEGO_SRCS}" "${APXS}" "-c -i" "src/mod_auth_kerb.c" ++ ./apxs.sh "${CPPFLAGS}" "${LDFLAGS}" "" "${APXS}" "-i -S LIBEXECDIR=$(AP2_LIBEXEC)" "src/mod_auth_kerb.la" + + clean: + for i in . src spnegokrb5; do \ +diff --git a/apxs.sh b/apxs.sh +index cdb3e65..dfe893a 100755 +--- a/apxs.sh ++++ b/apxs.sh +@@ -1,5 +1,5 @@ + #!/bin/sh + cppflags=`[ -n "$1" ] && echo $1 | sed -e 's/\([^ ]*\)/-Wc,\1/g'` + ldflags=`[ -n "$2" ] && echo $2 | sed -e 's/\([^ ]*\)/-Wl,\1/g'` +-ret=eval "$4" $5 $cppflags $ldflags src/mod_auth_kerb.c $3 ++ret=eval "$4" $5 $cppflags $ldflags $6 $3 + exit $ret +-- +1.7.3.2 + Added: csw/mgar/pkg/mod_auth_kerb/trunk/files/CSWap2modauthkerb.postinstall =================================================================== --- csw/mgar/pkg/mod_auth_kerb/trunk/files/CSWap2modauthkerb.postinstall (rev 0) +++ csw/mgar/pkg/mod_auth_kerb/trunk/files/CSWap2modauthkerb.postinstall 2011-02-04 11:46:53 UTC (rev 13186) @@ -0,0 +1,25 @@ +#!/bin/sh + +CSW_PREFIX=${PKG_INSTALL_ROOT}/opt/csw +AP2_PREFIX=$CSW_PREFIX/apache2 +AP2_BINDIR=$AP2_PREFIX/sbin +AP2_LIBEXEC=$AP2_PREFIX/libexec +AP2_CONFDIR=$AP2_PREFIX/etc +AP2_EXTRADIR=$AP2_CONFDIR/extra +AP2_CONFIG=$AP2_CONFDIR/httpd.conf + +# Enable the auth_kerb modules +PKG_INSTALL_ROOT=${PKG_INSTALL_ROOT:-'/'} +chroot $PKG_INSTALL_ROOT \ + $AP2_BINDIR/apxs -S LIBEXECDIR=$AP2_LIBEXEC -e -a -n \ + auth_kerb mod_auth_kerb.so + +# Finito +cat < Revision: 13187 http://gar.svn.sourceforge.net/gar/?rev=13187&view=rev Author: dmichelsen Date: 2011-02-04 12:13:59 +0000 (Fri, 04 Feb 2011) Log Message: ----------- msmtp: Fix post install Modified Paths: -------------- csw/mgar/pkg/msmtp/trunk/Makefile Modified: csw/mgar/pkg/msmtp/trunk/Makefile =================================================================== --- csw/mgar/pkg/msmtp/trunk/Makefile 2011-02-04 11:46:53 UTC (rev 13186) +++ csw/mgar/pkg/msmtp/trunk/Makefile 2011-02-04 12:13:59 UTC (rev 13187) @@ -39,20 +39,25 @@ RUNTIME_DEP_PKGS_CSWmsmtp += CSWlibgsasl7 RUNTIME_DEP_PKGS_CSWmsmtp += CSWggettextrt +sysconfdir = /etc/opt/csw CONFIGURE_ARGS = $(DIRPATHS) TEST_TARGET = check include gar/category.mk -post-install: - @rm -f $(DESTDIR)$(infodir)/dir - @ginstall -d $(DESTDIR)$(docdir) - @ginstall $(WORKSRC)/doc/Mutt+msmtp.txt \ - $(WORKSRC)/doc/msmtp.html \ - $(WORKSRC)/doc/msmtp.pdf \ - $(DESTDIR)$(docdir) - @ginstall -d $(DESTDIR)$(sysconfdir) - @ginstall $(WORKSRC)/doc/msmtprc-system.example \ +post-install-modulated: DOCDIR=$(docdir)/msmtp +post-install-modulated: + ginstall -d $(DESTDIR)$(DOCDIR) + ginstall $(WORKSRC)/doc/Mutt+msmtp.txt $(DESTDIR)$(DOCDIR) + # ginstall $(WORKSRC)/doc/msmtp.html $(DESTDIR)$(DOCDIR) + # ginstall $(WORKSRC)/doc/msmtp.pdf $(DESTDIR)$(DOCDIR) + ginstall -d $(DESTDIR)$(sysconfdir) + ginstall $(WORKSRC)/doc/msmtprc-system.example \ $(WORKSRC)/doc/msmtprc-user.example \ $(DESTDIR)$(sysconfdir) + perl -pi -e 's,/usr/local/etc,$(sysconfdir),;' \ + -e 's,/usr/local/bin,$(bindir),;' \ + $(DESTDIR)$(infodir)/msmtp.info \ + $(DESTDIR)$(DOCDIR)/Mutt+msmtp.txt + @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Feb 4 13:20:44 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 04 Feb 2011 12:20:44 +0000 Subject: [csw-devel] SF.net SVN: gar:[13188] csw/mgar/pkg/mod_auth_kerb/trunk/Makefile Message-ID: Revision: 13188 http://gar.svn.sourceforge.net/gar/?rev=13188&view=rev Author: dmichelsen Date: 2011-02-04 12:20:44 +0000 (Fri, 04 Feb 2011) Log Message: ----------- mod_auth_kerb: Add patch location Modified Paths: -------------- csw/mgar/pkg/mod_auth_kerb/trunk/Makefile Modified: csw/mgar/pkg/mod_auth_kerb/trunk/Makefile =================================================================== --- csw/mgar/pkg/mod_auth_kerb/trunk/Makefile 2011-02-04 12:13:59 UTC (rev 13187) +++ csw/mgar/pkg/mod_auth_kerb/trunk/Makefile 2011-02-04 12:20:44 UTC (rev 13188) @@ -15,6 +15,8 @@ DISTFILES += CSWap2modauthkerb.postinstall DISTFILES += CSWap2modauthkerb.preremove +# Apply patch until this is fixed: +# https://sourceforge.net/tracker/?func=detail&atid=464524&aid=3172644&group_id=51775 PATCHFILES += 0001-Fix-install-destination.patch UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Feb 4 13:38:02 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 04 Feb 2011 12:38:02 +0000 Subject: [csw-devel] SF.net SVN: gar:[13189] csw/mgar/gar/v2/gar.pkg.mk Message-ID: Revision: 13189 http://gar.svn.sourceforge.net/gar/?rev=13189&view=rev Author: dmichelsen Date: 2011-02-04 12:38:02 +0000 (Fri, 04 Feb 2011) Log Message: ----------- mGAR v2: Sanitize catalogname Modified Paths: -------------- csw/mgar/gar/v2/gar.pkg.mk Modified: csw/mgar/gar/v2/gar.pkg.mk =================================================================== --- csw/mgar/gar/v2/gar.pkg.mk 2011-02-04 12:20:44 UTC (rev 13188) +++ csw/mgar/gar/v2/gar.pkg.mk 2011-02-04 12:38:02 UTC (rev 13189) @@ -32,12 +32,12 @@ ifeq ($(origin PACKAGES), undefined) PACKAGES = $(if $(filter %.gspec,$(DISTFILES)),,CSW$(NAME)) -CATALOGNAME ?= $(if $(filter %.gspec,$(DISTFILES)),,$(NAME)) +CATALOGNAME ?= $(if $(filter %.gspec,$(DISTFILES)),,$(subst -,_,$(NAME))) SRCPACKAGE_BASE = $(firstword $(basename $(filter %.gspec,$(DISTFILES))) $(PACKAGES)) SRCPACKAGE ?= $(SRCPACKAGE_BASE)-src SPKG_SPECS ?= $(basename $(filter %.gspec,$(DISTFILES))) $(PACKAGES) $(if $(NOSOURCEPACKAGE),,$(SRCPACKAGE)) else -CATALOGNAME ?= $(if $(filter-out $(firstword $(PACKAGES)),$(PACKAGES)),,$(patsubst CSW%,%,$(PACKAGES))) +CATALOGNAME ?= $(if $(filter-out $(firstword $(PACKAGES)),$(PACKAGES)),,$(subst -,_,$(patsubst CSW%,%,$(PACKAGES)))) SRCPACKAGE_BASE = $(firstword $(PACKAGES)) SRCPACKAGE ?= $(SRCPACKAGE_BASE)-src SPKG_SPECS ?= $(sort $(basename $(filter %.gspec,$(DISTFILES))) $(PACKAGES) $(if $(NOSOURCEPACKAGE),,$(SRCPACKAGE))) @@ -112,7 +112,7 @@ $(if $(CATALOGNAME), $(CATALOGNAME), $(if $(filter $(1),$(PACKAGES)), - $(patsubst CSW%,%,$(1)), + $(subst -,_,$(patsubst CSW%,%,$(1))), $(if $(realpath files/$(1).gspec), $(shell perl -F'\s+' -ane 'print "$$F[2]" if( $$F[0] eq "%var" && $$F[1] eq "bitname")' files/$(1).gspec), $(error The catalog name for the package '$1' could not be determined, because it was neither in PACKAGES nor was there a gspec-file) @@ -297,7 +297,7 @@ PKGFILES_DEVEL += $(includedir)/.* PKGFILES_DEVEL += $(sharedstatedir)/aclocal/.* PKGFILES_DEVEL += $(mandir)/man1/.*-config\.1.* -PKGFILES_DEVEL += $(mandir)/man3/.* +PKGFILES_DEVEL += $(mandir)/man3/.*\.3 # PKGFILES_DOC selects files beloging to a documentation package PKGFILES_DOC = $(docdir)/.* @@ -719,6 +719,7 @@ reset-merge-checkpkgoverrides: @rm -f $(COOKIEDIR)/merge-checkpkgoverrides $(foreach SPEC,$(_PKG_SPECS),$(COOKIEDIR)/merge-checkpkgoverrides-$(SPEC)) + @rm -f $(foreach S,$(SPKG_SPECS),$(WORKDIR_GLOBAL)/checkpkg_override.$S) merge-alternatives-%: @echo "[ Generating alternatives for package $* ]" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From maciej at opencsw.org Fri Feb 4 14:02:51 2011 From: maciej at opencsw.org (=?UTF-8?Q?Maciej_Blizi=C5=84ski?=) Date: Fri, 4 Feb 2011 13:02:51 +0000 Subject: [csw-devel] SF.net SVN: gar:[13171] csw/mgar/pkg In-Reply-To: <4D4BE6F8.9080303@opencsw.org> References: <4D4BE6F8.9080303@opencsw.org> Message-ID: 2011/2/4 ?hsan Do?an : > Hello Maciej, > > On 02/ 4/11 11:34 AM, Maciej Blizi?ski wrote: > >>> +INCOMPATIBLE_PKGS_CSWdrill = CSWdrill >> >> This looks like a declaration that a package is incompatible with >> itself. ?I'll add a check for that. > > I've renamed the package from CSWdrill to CSWldnsdrill. > --> > http://lists.opencsw.org/pipermail/pkgsubmissions/2011-January/002126.html Right, so I understand that what you do in cases of renames, is that you declare an i-dep on the old package: INCOMPATIBLE_PKGS_CSWldnsdrill = CSWdrill From dmichelsen at users.sourceforge.net Fri Feb 4 15:08:35 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 04 Feb 2011 14:08:35 +0000 Subject: [csw-devel] SF.net SVN: gar:[13190] csw/mgar/pkg/yaz/trunk/Makefile Message-ID: Revision: 13190 http://gar.svn.sourceforge.net/gar/?rev=13190&view=rev Author: dmichelsen Date: 2011-02-04 14:08:34 +0000 (Fri, 04 Feb 2011) Log Message: ----------- yaz: Add overrides and path fixes Modified Paths: -------------- csw/mgar/pkg/yaz/trunk/Makefile Modified: csw/mgar/pkg/yaz/trunk/Makefile =================================================================== --- csw/mgar/pkg/yaz/trunk/Makefile 2011-02-04 12:38:02 UTC (rev 13189) +++ csw/mgar/pkg/yaz/trunk/Makefile 2011-02-04 14:08:34 UTC (rev 13190) @@ -22,6 +22,8 @@ CATALOGNAME_CSWlibyaz4 = libyaz4 SPKG_DESC_CSWlibyaz4 = Toolkit for Z39.50/SRW/SRU clients and servers, libyaz.so.4 PKGFILES_CSWlibyaz4 = $(call baseisadirs,$(libdir),libyaz.*\.so\.4(\.\d+)*) +# These are always bumped together +CHECKPKG_OVERRIDES_CSWlibyaz4 += shared-lib-pkgname-mismatch RUNTIME_DEP_PKGS_CSWlibyaz4 += CSWzlib RUNTIME_DEP_PKGS_CSWlibyaz4 += CSWlibxml2 RUNTIME_DEP_PKGS_CSWlibyaz4 += CSWgcrypt @@ -40,6 +42,11 @@ PKGFILES_CSWlibyaz-devel += $(docdir)/yaz/.* PKGFILES_CSWlibyaz-devel += $(mandir)/man7/.* RUNTIME_DEP_PKGS_CSWlibyaz-devel += CSWlibyaz4 +# These are default locations for docbook files, they can be specified with a --with-* option +CHECKPKG_OVERRIDES_CSWlibyaz-devel += file-with-bad-content|/usr/local|root/opt/csw/share/aclocal/yaz.m4 +CHECKPKG_OVERRIDES_CSWlibyaz-devel += file-with-bad-content|/usr/share|root/opt/csw/share/aclocal/yaz.m4 +# These are the default on configuration +CHECKPKG_OVERRIDES_CSWlibyaz-devel += file-with-bad-content|/usr/local|root/opt/csw/share/doc/yaz/installation.unix.html # %{_bindir}/yaz-config # %{_bindir}/yaz-asncomp @@ -76,19 +83,16 @@ MERGE_SCRIPTS_isa-extra = copy-relocated-only copy-config-only MERGE_DIRS_isa-extra = $(libdir) -# This is a bug in checkpkg -CHECKPKG_OVERRIDES_CSWlibyaz4 += shared-lib-pkgname-mismatch -CHECKPKG_OVERRIDES_CSWlibyaz-devel += wrong-docdir|expected=/opt/csw/shared/doc/libyaz_devel/...|in-package=/opt/csw/share/doc/yaz/license.html +include gar/category.mk -# These can go away after CSWlibicu46 has been officially released -CHECKPKG_OVERRIDES_CSWlibyaz4 += soname-not-found -CHECKPKG_OVERRIDES_CSWlibyaz4 += unidentified-dependency|CSWlibicu46 -CHECKPKG_OVERRIDES_CSWlibyaz4 += surplus-dependency|CSWlibicu46 -CHECKPKG_OVERRIDES_CSWyaz-icu += soname-not-found -CHECKPKG_OVERRIDES_CSWyaz-icu += unidentified-dependency|CSWlibicu46 -CHECKPKG_OVERRIDES_CSWyaz-icu += surplus-dependency|CSWlibicu46 -CHECKPKG_OVERRIDES_CSWyaz += soname-not-found -CHECKPKG_OVERRIDES_CSWyaz += unidentified-dependency|CSWlibicu46 -CHECKPKG_OVERRIDES_CSWyaz += surplus-dependency|CSWlibicu46 - -include gar/category.mk +post-extract-modulated: + -perl -pi -e 's,/usr/local/share,$(sharedstatedir),;' \ + $(WORKSRC)/client/client.c \ + $(WORKSRC)/doc/yaz.7 + -perl -pi -e 's,/usr/share,$(sharedstatedir),;' \ + $(WORKSRC)/doc/yaz-asncomp-man.xml + -perl -pi -e 's,/usr/share/yaz/etc,$(sysconfdir),;' \ + $(WORKSRC)/doc/tools.xml + -perl -pi -e 's,/usr/local,$(prefix),;' \ + $(WORKSRC)/doc/yaz-config.1 + @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Fri Feb 4 16:36:17 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Fri, 04 Feb 2011 15:36:17 +0000 Subject: [csw-devel] SF.net SVN: gar:[13191] csw/mgar/pkg/puppet/trunk Message-ID: Revision: 13191 http://gar.svn.sourceforge.net/gar/?rev=13191&view=rev Author: wahwah Date: 2011-02-04 15:36:17 +0000 (Fri, 04 Feb 2011) Log Message: ----------- puppet: Update to 2.6.4 Also, removing one /usr/share reference. Modified Paths: -------------- csw/mgar/pkg/puppet/trunk/Makefile csw/mgar/pkg/puppet/trunk/checksums Added Paths: ----------- csw/mgar/pkg/puppet/trunk/files/0003-Use-opt-csw-share-puppet-modules-as-default.patch Modified: csw/mgar/pkg/puppet/trunk/Makefile =================================================================== --- csw/mgar/pkg/puppet/trunk/Makefile 2011-02-04 14:08:34 UTC (rev 13190) +++ csw/mgar/pkg/puppet/trunk/Makefile 2011-02-04 15:36:17 UTC (rev 13191) @@ -7,7 +7,7 @@ # [1] http://garylaw.net/packages/puppet-build.sh NAME = puppet -VERSION = 0.25.4 +VERSION = 2.6.4 CATEGORIES = apps define BLURB @@ -40,6 +40,7 @@ RUNTIME_DEP_PKGS = CSWfacter RUNTIME_DEP_PKGS += CSWruby RUNTIME_DEP_PKGS_CSWpuppetmaster += CSWpuppet +RUNTIME_DEP_PKGS_CSWpuppetmaster += CSWruby PKGFILES_CSWpuppetmaster = $(sysconfdir)/init\.d/cswpuppetmasterd PKGFILES_CSWpuppetmaster += $(sbindir)/puppetmasterd @@ -58,7 +59,14 @@ PATCHFILES = 0001-pkgutil-support.patch PATCHFILES += 0002-Using-the-single-option-of-pkgutil.patch +PATCHFILES += 0003-Use-opt-csw-share-puppet-modules-as-default.patch +CHECKPKG_OVERRIDES_CSWpuppet += surplus-dependency|CSWfacter +CHECKPKG_OVERRIDES_CSWpuppetmaster += surplus-dependency|CSWruby +# Puppet has hardcoded paths to look at for many OSes, many of which involve +# /usr/share and /usr/local. +CHECKPKG_OVERRIDES_CSWpuppet += file-with-bad-content + include gar/category.mk install-puppet: @@ -84,4 +92,7 @@ ginstall -d -m 755 $(DESTDIR)$(sysconfdir)/pkg/puppet ginstall -m 644 $(FILEDIR)/cswusergroup \ $(DESTDIR)$(sysconfdir)/pkg/puppet/cswusergroup + ( [ -d $(DESTDIR)/var/lib ] && echo "$(DESTDIR)/var/lib" must not exist && false ) || true + mkdir -p $(DESTDIR)$(localstatedir)/lib + rm $(DESTDIR)$(libdir)/ruby/site_ruby/1.8/puppet/provider/package/yumhelper.py @$(MAKECOOKIE) Modified: csw/mgar/pkg/puppet/trunk/checksums =================================================================== --- csw/mgar/pkg/puppet/trunk/checksums 2011-02-04 14:08:34 UTC (rev 13190) +++ csw/mgar/pkg/puppet/trunk/checksums 2011-02-04 15:36:17 UTC (rev 13191) @@ -1,6 +1 @@ -abaa404420106f9f28e9e1218b4e365b 0001-pkgutil-support.patch -9c27c0cdca051eae986b56b91ef889ca 0002-Using-the-single-option-of-pkgutil.patch -f4a95dece2231805abf4754d72471de4 cswpuppetd -aba2c79e589b9bd1c881a22aa663a213 cswpuppetmasterd -3ab0d4f9801075bc78b68b766b496fc7 cswusergroup -69c97019fda5620f9f45f6ad64407e3b puppet-0.25.4.tar.gz +c0b86f40c8000dae2f0f7f2f91579c2a puppet-2.6.4.tar.gz Added: csw/mgar/pkg/puppet/trunk/files/0003-Use-opt-csw-share-puppet-modules-as-default.patch =================================================================== --- csw/mgar/pkg/puppet/trunk/files/0003-Use-opt-csw-share-puppet-modules-as-default.patch (rev 0) +++ csw/mgar/pkg/puppet/trunk/files/0003-Use-opt-csw-share-puppet-modules-as-default.patch 2011-02-04 15:36:17 UTC (rev 13191) @@ -0,0 +1,25 @@ +From b7667135e124a195d33790fcddcc9f2c9d42f638 Mon Sep 17 00:00:00 2001 +From: Maciej Blizinski +Date: Fri, 4 Feb 2011 16:32:56 +0100 +Subject: [PATCH] Use /opt/csw/share/puppet/modules as default + +--- + lib/puppet/defaults.rb | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/lib/puppet/defaults.rb b/lib/puppet/defaults.rb +index 4521a59..9912c7b 100644 +--- a/lib/puppet/defaults.rb ++++ b/lib/puppet/defaults.rb +@@ -421,7 +421,7 @@ module Puppet + authorization system for `puppet master`." + ], + :ca => [true, "Wether the master should function as a certificate authority."], +- :modulepath => {:default => "$confdir/modules:/usr/share/puppet/modules", ++ :modulepath => {:default => "$confdir/modules:/opt/csw/share/puppet/modules", + :desc => "The search path for modules as a colon-separated list of + directories.", :type => :setting }, # We don't want this to be considered a file, since it's multiple files. + :ssl_client_header => ["HTTP_X_CLIENT_DN", "The header containing an authenticated +-- +1.7.3.2 + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Fri Feb 4 17:16:55 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Fri, 04 Feb 2011 16:16:55 +0000 Subject: [csw-devel] SF.net SVN: gar:[13192] csw/mgar/pkg/puppet Message-ID: Revision: 13192 http://gar.svn.sourceforge.net/gar/?rev=13192&view=rev Author: wahwah Date: 2011-02-04 16:16:54 +0000 (Fri, 04 Feb 2011) Log Message: ----------- puppet: Hand-merge of two branches Modified Paths: -------------- csw/mgar/pkg/puppet/branches/puppet-2.6.x/Makefile csw/mgar/pkg/puppet/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/puppet/trunk/files/CSWpuppet.cron.root Modified: csw/mgar/pkg/puppet/branches/puppet-2.6.x/Makefile =================================================================== --- csw/mgar/pkg/puppet/branches/puppet-2.6.x/Makefile 2011-02-04 15:36:17 UTC (rev 13191) +++ csw/mgar/pkg/puppet/branches/puppet-2.6.x/Makefile 2011-02-04 16:16:54 UTC (rev 13192) @@ -7,7 +7,7 @@ # [1] http://garylaw.net/packages/puppet-build.sh NAME = puppet -VERSION = 2.6.1 +VERSION = 2.6.4 CATEGORIES = apps define BLURB @@ -36,7 +36,7 @@ # Disabling SMF support for puppetd. There are problems with it. It's a # better choice to run it from cron. # INITSMF = $(sysconfdir)/init\.d/cswpuppetd -INITSMF += /etc$(prefix)/init\.d/cswpuppetmasterd +INITSMF += $(sysconfdir)/init\.d/cswpuppetmasterd USERGROUP = $(sysconfdir)/pkg/puppet/cswusergroup # Creating a separate package CSWpuppetmaster so that the cswpuppetmaster @@ -52,7 +52,7 @@ RUNTIME_DEP_PKGS_CSWpuppetmaster += CSWpuppet RUNTIME_DEP_PKGS_CSWpuppetmaster += CSWruby -PKGFILES_CSWpuppetmaster = $(prefix)/etc/init\.d/cswpuppetmasterd +PKGFILES_CSWpuppetmaster = $(sysconfdir)/init\.d/cswpuppetmasterd PKGFILES_CSWpuppetmaster += $(sbindir)/puppetmasterd PKGFILES_CSWpuppetmaster += $(mandir)/man8/puppetmasterd.8 PKGFILES_CSWpuppetmaster += $(libdir)/.*/puppet/application/puppetmasterd.rb @@ -84,13 +84,12 @@ ginstall -m 755 -d $(DESTDIR) ginstall -m 755 -d $(DESTDIR)$(sysconfdir)/puppet ginstall -m 755 -d $(DESTDIR)$(localstatedir)/puppet/run - ginstall -m 755 -d $(DESTDIR)/etc$(prefix)/init.d - # $(sysconfdir)/pkg//crontabs ginstall -m 755 -d $(DESTDIR)$(CRONDIR) ginstall -m 644 \ $(FILEDIR)/CSWpuppet.cron.root \ $(DESTDIR)$(CRONDIR)/root - ginstall -m 755 $(FILEDIR)/cswpuppetd $(DESTDIR)/etc$(prefix)/init.d + ginstall -m 755 -d $(DESTDIR)$(sysconfdir)/init.d + ginstall -m 755 $(FILEDIR)/cswpuppetd $(DESTDIR)$(sysconfdir)/init.d ginstall -m 755 $(FILEDIR)/cswpuppetmasterd $(DESTDIR)/etc$(prefix)/init.d (cd $(WORKSRC) && \ gsed -e "s|/var/puppet|/var/opt/csw/puppet|g" -i ./lib/puppet/defaults.rb; \ Modified: csw/mgar/pkg/puppet/trunk/Makefile =================================================================== --- csw/mgar/pkg/puppet/trunk/Makefile 2011-02-04 15:36:17 UTC (rev 13191) +++ csw/mgar/pkg/puppet/trunk/Makefile 2011-02-04 16:16:54 UTC (rev 13192) @@ -22,17 +22,23 @@ MASTER_SITES = http://reductivelabs.com/downloads/puppet/ DISTFILES = $(NAME)-$(VERSION).tar.gz -DISTFILES += cswpuppetd cswpuppetmasterd cswusergroup +DISTFILES += cswpuppetd +DISTFILES += cswpuppetmasterd +DISTFILES += cswusergroup +DISTFILES += CSWpuppet.cron.root UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz -SPKG_SOURCEURL = http://reductivelabs.com/products/puppet/ +SPKG_SOURCEURL = http://www.puppetlabs.com/ -INITSMF = $(sysconfdir)/init\.d/cswpuppetd +# Disabling SMF support for puppetd. There are problems with it. It's a +# better choice to run it from cron. +# INITSMF = $(sysconfdir)/init\.d/cswpuppetd INITSMF += $(sysconfdir)/init\.d/cswpuppetmasterd USERGROUP = $(sysconfdir)/pkg/puppet/cswusergroup # Creating a separate package CSWpuppetmaster so that the cswpuppetmaster # service isn't started upon the installation of CSWpuppet. -PACKAGES = CSWpuppet CSWpuppetmaster +PACKAGES += CSWpuppetmaster +PACKAGES += CSWpuppet SPKG_DESC_CSWpuppet = System configuration management tool, client daemon SPKG_DESC_CSWpuppetmaster = System configuration management tool, server @@ -61,7 +67,12 @@ PATCHFILES += 0002-Using-the-single-option-of-pkgutil.patch PATCHFILES += 0003-Use-opt-csw-share-puppet-modules-as-default.patch -CHECKPKG_OVERRIDES_CSWpuppet += surplus-dependency|CSWfacter +CHECKPKG_OVERRIDES_CSWpuppet += surplus-dependency|CSWfacter +CHECKPKG_OVERRIDES_CSWpuppetmaster += surplus-dependency|CSWpuppet + +CRONDIR = $(sysconfdir)/pkg/CSWpuppet/crontabs +CRONTABS = $(CRONDIR)/root +CHECKPKG_OVERRIDES_CSWpuppet += init-file-missing-cswinitsmf-class|/etc/opt/csw/init.d/cswpuppetd|class=none CHECKPKG_OVERRIDES_CSWpuppetmaster += surplus-dependency|CSWruby # Puppet has hardcoded paths to look at for many OSes, many of which involve # /usr/share and /usr/local. @@ -73,9 +84,14 @@ ginstall -m 755 -d $(DESTDIR) ginstall -m 755 -d $(DESTDIR)$(sysconfdir)/puppet ginstall -m 755 -d $(DESTDIR)$(localstatedir)/puppet/run + ginstall -m 755 -d $(DESTDIR)$(CRONDIR) + ginstall -m 644 \ + $(FILEDIR)/CSWpuppet.cron.root \ + $(DESTDIR)$(CRONDIR)/root ginstall -m 755 -d $(DESTDIR)$(sysconfdir)/init.d ginstall -m 755 $(FILEDIR)/cswpuppetd $(DESTDIR)$(sysconfdir)/init.d ginstall -m 755 $(FILEDIR)/cswpuppetmasterd $(DESTDIR)$(sysconfdir)/init.d + ginstall -m 755 $(FILEDIR)/cswpuppetmasterd $(DESTDIR)/etc$(prefix)/init.d (cd $(WORKSRC) && \ gsed -e "s|/var/puppet|/var/opt/csw/puppet|g" -i ./lib/puppet/defaults.rb; \ gsed -e "s|/etc/puppet|/etc/opt/csw/puppet|g" -i ./lib/puppet/defaults.rb; \ @@ -94,5 +110,9 @@ $(DESTDIR)$(sysconfdir)/pkg/puppet/cswusergroup ( [ -d $(DESTDIR)/var/lib ] && echo "$(DESTDIR)/var/lib" must not exist && false ) || true mkdir -p $(DESTDIR)$(localstatedir)/lib + # For this file to run, CSWpuppet would need to depend on CSWpython, + # and we don't want that. It could be split off to another package, but + # this file doesn't seem to be of any use on Solaris, so we can safely + # remove it. rm $(DESTDIR)$(libdir)/ruby/site_ruby/1.8/puppet/provider/package/yumhelper.py @$(MAKECOOKIE) Copied: csw/mgar/pkg/puppet/trunk/files/CSWpuppet.cron.root (from rev 13190, csw/mgar/pkg/puppet/branches/puppet-2.6.x/files/CSWpuppet.cron.root) =================================================================== --- csw/mgar/pkg/puppet/trunk/files/CSWpuppet.cron.root (rev 0) +++ csw/mgar/pkg/puppet/trunk/files/CSWpuppet.cron.root 2011-02-04 16:16:54 UTC (rev 13192) @@ -0,0 +1 @@ +0,30 * * * * /opt/csw/sbin/puppetd --no-daemon --onetime This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Feb 4 17:17:08 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 04 Feb 2011 16:17:08 +0000 Subject: [csw-devel] SF.net SVN: gar:[13193] csw/mgar/pkg/memcached/trunk Message-ID: Revision: 13193 http://gar.svn.sourceforge.net/gar/?rev=13193&view=rev Author: dmichelsen Date: 2011-02-04 16:17:08 +0000 (Fri, 04 Feb 2011) Log Message: ----------- memcached: Update to 1.4.5 and add lots of fixes Modified Paths: -------------- csw/mgar/pkg/memcached/trunk/Makefile csw/mgar/pkg/memcached/trunk/checksums Added Paths: ----------- csw/mgar/pkg/memcached/trunk/files/0001-Fix-alignment-check-as-84148994-0x05040302.patch csw/mgar/pkg/memcached/trunk/files/0001-Make-sure-to-wait-for-data.patch csw/mgar/pkg/memcached/trunk/files/0002-Take-endianness-into-account-on-alignment-check.patch Modified: csw/mgar/pkg/memcached/trunk/Makefile =================================================================== --- csw/mgar/pkg/memcached/trunk/Makefile 2011-02-04 16:16:54 UTC (rev 13192) +++ csw/mgar/pkg/memcached/trunk/Makefile 2011-02-04 16:17:08 UTC (rev 13193) @@ -1,5 +1,5 @@ NAME = memcached -VERSION = 1.4.4 +VERSION = 1.4.5 CATEGORIES = net DESCRIPTION = Distributed memory object caching system @@ -12,23 +12,45 @@ MASTER_SITES = http://memcached.googlecode.com/files/ DISTFILES = $(NAME)-$(VERSION).tar.gz +# Use patches until this is applied: +# https://github.com/memcached/memcached/pull/3 +PATCHFILES += 0001-Fix-alignment-check-as-84148994-0x05040302.patch +PATCHFILES += 0002-Take-endianness-into-account-on-alignment-check.patch + +PATCHFILES += 0001-Make-sure-to-wait-for-data.patch + +# If we enable GIT patching this makes a .git repo in $WORKSRC. +# Unfortunatly this triggers maintainer mode for t/whitespace.t which +# then fails because the developer GIT repo contains more things than the +# distributed release tarball. +NOGITPATCH = 1 + # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz -SPKG_SOURCEURL = http://www.danga.com/memcached/ +VENDOR_URL = http://memcached.org/ BUILD_DEP_PKGS = CSWlibevent-devel -RUNTIME_DEP_PKGS = CSWlibevent +RUNTIME_DEP_PKGS = CSWlibevent2-0-5 -# Solaris 8 Sparc does work, but Solaris 8 x86 has many failed tests due to -# errors in Solaris 8 itself. For consistency we build from Solaris 9 on for -# both ISAs. PACKAGING_PLATFORMS = solaris9-sparc solaris9-i386 +# Make special version for Solaris 10 with enabled DTrace +PACKAGING_PLATFORMS += solaris10-sparc solaris10-i386 BUILD64 = 1 CONFIGURE_ARGS = $(DIRPATHS) +# SASL is not 64 bit yet! +#CONFIGURE_ARGS += --enable-sasl +#CONFIGURE_ARGS += --enable-sasl-pwdb -SKIPTEST ?= 1 +CONFIGURE_ARGS-sol5.10 += --enable-dtrace +CONFIGURE_ARGS += $(CONFIGURE_ARGS-sol$(GAROSREL)) +# From Trond Norbye: +# The 101 test is a "bogus" test (it is there to prove that a deadlock is in the +# client and not in the memcached server) and it will suck up all resources on the box... +#SKIP_TEST_101 = 1 +#EXTRA_TEST_EXPORTS = SKIP_TEST_101 + include gar/category.mk Modified: csw/mgar/pkg/memcached/trunk/checksums =================================================================== --- csw/mgar/pkg/memcached/trunk/checksums 2011-02-04 16:16:54 UTC (rev 13192) +++ csw/mgar/pkg/memcached/trunk/checksums 2011-02-04 16:17:08 UTC (rev 13193) @@ -1 +1 @@ -5ca5b24de347e97ac1f48f3785b4178a memcached-1.4.4.tar.gz +583441a25f937360624024f2881e5ea8 memcached-1.4.5.tar.gz Added: csw/mgar/pkg/memcached/trunk/files/0001-Fix-alignment-check-as-84148994-0x05040302.patch =================================================================== --- csw/mgar/pkg/memcached/trunk/files/0001-Fix-alignment-check-as-84148994-0x05040302.patch (rev 0) +++ csw/mgar/pkg/memcached/trunk/files/0001-Fix-alignment-check-as-84148994-0x05040302.patch 2011-02-04 16:17:08 UTC (rev 13193) @@ -0,0 +1,25 @@ +From 0bbc9aaa1c7648670375cd2ed23754f736ac12aa Mon Sep 17 00:00:00 2001 +From: Dagobert Michelsen +Date: Wed, 19 Jan 2011 14:16:22 +0100 +Subject: [PATCH 1/2] Fix alignment check as 84148994 == 0x05040302 + +--- + configure.ac | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 2a1b703..1fc9ebc 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -423,7 +423,7 @@ AC_DEFUN([AC_C_ALIGNMENT], + *ptr = 0x1; + + // catch unaligned word access (ARM cpus) +- *buf = 1; *(buf +1) = 2; *(buf + 2) = 2; *(buf + 3) = 3; *(buf + 4) = 4; ++ *buf = 1; *(buf +1) = 2; *(buf + 2) = 3; *(buf + 3) = 4; *(buf + 4) = 5; + int* i = (int*)(buf+1); + return (84148994 == i) ? 0 : 1; + ]) +-- +1.7.3.2 + Added: csw/mgar/pkg/memcached/trunk/files/0001-Make-sure-to-wait-for-data.patch =================================================================== --- csw/mgar/pkg/memcached/trunk/files/0001-Make-sure-to-wait-for-data.patch (rev 0) +++ csw/mgar/pkg/memcached/trunk/files/0001-Make-sure-to-wait-for-data.patch 2011-02-04 16:17:08 UTC (rev 13193) @@ -0,0 +1,29 @@ +From 393936cffd43bd2070c902f55b88dbde9e4c56f4 Mon Sep 17 00:00:00 2001 +From: Dagobert Michelsen +Date: Fri, 4 Feb 2011 16:58:41 +0100 +Subject: [PATCH] Make sure to wait for data + +--- + t/binary.t | 6 +++++- + 1 files changed, 5 insertions(+), 1 deletions(-) + +diff --git a/t/binary.t b/t/binary.t +index 1108b8e..de7555e 100755 +--- a/t/binary.t ++++ b/t/binary.t +@@ -535,7 +535,11 @@ sub _handle_single_response { + my $self = shift; + my $myopaque = shift; + +- $self->{socket}->recv(my $response, ::MIN_RECV_BYTES); ++ my $response; ++ do { ++ $self->{socket}->recv(my $lresponse, ::MIN_RECV_BYTES); ++ $response .= $lresponse; ++ } while( length($response) < ::MIN_RECV_BYTES ); + Test::More::is(length($response), ::MIN_RECV_BYTES, "Expected read length"); + + my ($magic, $cmd, $keylen, $extralen, $datatype, $status, $remaining, +-- +1.7.3.2 + Added: csw/mgar/pkg/memcached/trunk/files/0002-Take-endianness-into-account-on-alignment-check.patch =================================================================== --- csw/mgar/pkg/memcached/trunk/files/0002-Take-endianness-into-account-on-alignment-check.patch (rev 0) +++ csw/mgar/pkg/memcached/trunk/files/0002-Take-endianness-into-account-on-alignment-check.patch 2011-02-04 16:17:08 UTC (rev 13193) @@ -0,0 +1,31 @@ +From 9990a716a025efad8d53a6788b8614c9bfd89075 Mon Sep 17 00:00:00 2001 +From: Dagobert Michelsen +Date: Wed, 19 Jan 2011 14:50:32 +0100 +Subject: [PATCH 2/2] Take endianness into account on alignment check + +--- + configure.ac | 8 +++++++- + 1 files changed, 7 insertions(+), 1 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 1fc9ebc..98b6812 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -425,7 +425,13 @@ AC_DEFUN([AC_C_ALIGNMENT], + // catch unaligned word access (ARM cpus) + *buf = 1; *(buf +1) = 2; *(buf + 2) = 3; *(buf + 3) = 4; *(buf + 4) = 5; + int* i = (int*)(buf+1); +- return (84148994 == i) ? 0 : 1; ++ return ( ++#ifdef ENDIAN_BIG ++ 0x02030405 ++#else ++ 0x05040302 ++#endif ++ == *i) ? 0 : 1; + ]) + ],[ + ac_cv_c_alignment=none +-- +1.7.3.2 + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Fri Feb 4 17:44:00 2011 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Fri, 04 Feb 2011 16:44:00 +0000 Subject: [csw-devel] SF.net SVN: gar:[13194] csw/mgar/pkg/pkgutil/trunk Message-ID: Revision: 13194 http://gar.svn.sourceforge.net/gar/?rev=13194&view=rev Author: bonivart Date: 2011-02-04 16:44:00 +0000 (Fri, 04 Feb 2011) Log Message: ----------- pkgutil: 2.3 beta 2 Modified Paths: -------------- csw/mgar/pkg/pkgutil/trunk/Makefile csw/mgar/pkg/pkgutil/trunk/checksums Modified: csw/mgar/pkg/pkgutil/trunk/Makefile =================================================================== --- csw/mgar/pkg/pkgutil/trunk/Makefile 2011-02-04 16:17:08 UTC (rev 13193) +++ csw/mgar/pkg/pkgutil/trunk/Makefile 2011-02-04 16:44:00 UTC (rev 13194) @@ -2,7 +2,7 @@ # svn co -r 9999 https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 gar NAME = pkgutil -VERSION = 2.3b1 +VERSION = 2.3b2 GARVERSION = $(VERSION) CATEGORIES = utils @@ -17,7 +17,8 @@ # Disable inclusion of CSWcommon by default. COMMON_PKG_DEPENDS = -MASTER_SITES = $(SF_MIRRORS) +#MASTER_SITES = $(SF_MIRRORS) +MASTER_SITES = http://sourceforge.net/projects/pkgutil/files/pkgutil/2.3/ DISTFILES = $(NAME)-$(VERSION).zip DISTFILES += $(call admfiles,CSWpkgutil,prototype preremove postinstall) @@ -46,7 +47,8 @@ SPKG_DESC_CSWpkgutilplus = Extends pkgutil functionality # Explicitly depend on CSWcommon here since it's not the default -RUNTIME_DEP_PKGS_CSWpkgutilplus = CSWcommon CSWperl CSWgnupg CSWpkgutil CSWcswpkgloghooks CSWpython +RUNTIME_DEP_PKGS_CSWpkgutilplus = CSWcommon CSWperl CSWgnupg CSWpkgutil +RUNTIME_DEP_PKGS_CSWpkgutilplus += CSWcswpkgloghooks CSWpython CSWpmstringapprox #RUNTIME_DEP_PKGS_CSWpkgutilplus += CSWpmwwwcurl PKGFILES_CSWpkgutilplus = .*bldcat.* Modified: csw/mgar/pkg/pkgutil/trunk/checksums =================================================================== --- csw/mgar/pkg/pkgutil/trunk/checksums 2011-02-04 16:17:08 UTC (rev 13193) +++ csw/mgar/pkg/pkgutil/trunk/checksums 2011-02-04 16:44:00 UTC (rev 13194) @@ -5,4 +5,4 @@ b5fffa0be100ddbb7262ce3a0a4e3bb7 build_sun_catalog.py 7ad27336f90e73da3254a61d91025ee5 cswcatalog 3a6b789b3d5e05f41d2363dd26a92acf opencsw.py -aa6964f9b17e91088662dc1ea3b66e6d pkgutil-2.3b1.zip +84b84029f721981edb741e503d03e59d pkgutil-2.3b2.zip This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Fri Feb 4 17:47:33 2011 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Fri, 04 Feb 2011 16:47:33 +0000 Subject: [csw-devel] SF.net SVN: gar:[13195] csw/mgar/pkg/pkgutil/trunk/Makefile Message-ID: Revision: 13195 http://gar.svn.sourceforge.net/gar/?rev=13195&view=rev Author: bonivart Date: 2011-02-04 16:47:32 +0000 (Fri, 04 Feb 2011) Log Message: ----------- pkgutil: CSWpmstringapprox not installed on build servers Modified Paths: -------------- csw/mgar/pkg/pkgutil/trunk/Makefile Modified: csw/mgar/pkg/pkgutil/trunk/Makefile =================================================================== --- csw/mgar/pkg/pkgutil/trunk/Makefile 2011-02-04 16:44:00 UTC (rev 13194) +++ csw/mgar/pkg/pkgutil/trunk/Makefile 2011-02-04 16:47:32 UTC (rev 13195) @@ -35,6 +35,8 @@ PACKAGING_PLATFORMS = solaris8-sparc solaris8-i386 +CHECKPKG_OVERRIDES_CSWpkgutilplus += unidentified-dependency|CSWpmstringapprox +CHECKPKG_OVERRIDES_CSWpkgutilplus += surplus-dependency|CSWpmstringapprox CHECKPKG_OVERRIDES_CSWpkgutilplus += surplus-dependency|CSWperl CHECKPKG_OVERRIDES_CSWpkgutilplus += surplus-dependency|CSWcswpkgloghooks CHECKPKG_OVERRIDES_CSWpkgutilplus += surplus-dependency|CSWgnupg This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Fri Feb 4 20:56:11 2011 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Fri, 04 Feb 2011 19:56:11 +0000 Subject: [csw-devel] SF.net SVN: gar:[13196] csw/mgar/pkg/sendmail/trunk Message-ID: Revision: 13196 http://gar.svn.sourceforge.net/gar/?rev=13196&view=rev Author: bonivart Date: 2011-02-04 19:56:11 +0000 (Fri, 04 Feb 2011) Log Message: ----------- sendmail: minimal updates on Mike Watters previous work Modified Paths: -------------- csw/mgar/pkg/sendmail/trunk/Makefile csw/mgar/pkg/sendmail/trunk/checksums Modified: csw/mgar/pkg/sendmail/trunk/Makefile =================================================================== --- csw/mgar/pkg/sendmail/trunk/Makefile 2011-02-04 16:47:32 UTC (rev 13195) +++ csw/mgar/pkg/sendmail/trunk/Makefile 2011-02-04 19:56:11 UTC (rev 13196) @@ -1,10 +1,10 @@ NAME = sendmail -VERSION = 8.14.3 +VERSION = 8.14.4 CATEGORIES = server DESCRIPTION = Sendmail MTA define BLURB - XXX anacronism ;-) need text here + Sendmail MTA endef INSTALLISADIR = $(WORKROOTDIR)/install-$(GAROSREL)-$(MODULATION) @@ -14,7 +14,7 @@ MASTER_SITES = ftp://ftp.sendmail.org/pub/sendmail/ -MY_CLASSES = CSWsendmail.i.sol8 CSWsendmail.i.sol9 CSWsendmail.i.sol10 +MY_CLASSES = CSWsendmail.i.sol9 CSWsendmail.i.sol10 DISTFILES = $(NAME).$(VERSION).tar.gz DISTFILES += README.CSW sendmail.schema CSWsendmail.postinstall @@ -29,25 +29,22 @@ # we require PACKAGES = CSWsendmail -SPKG_SOURCEURL = http://www.sendmail.org/ +SPKG_SOURCEURL = http://www.sendmail.org SPKG_DESC_CSWsendmail = $(DESCRIPTION) CATALOGNAME_CSWsendmail = sendmail -RUNTIME_DEP_PKGS_CSWsendmail = CSWbdb CSWoldaprt CSWosslrt CSWsasl CSWtcpwrap +RUNTIME_DEP_PKGS_CSWsendmail = CSWbdb48 CSWoldaprt CSWosslrt CSWsasl CSWtcpwrap RUNTIME_DEP_PKGS_CSWsendmail += CSWcswclassutils PROTOTYPE_FILTER = awk \ - '$$$$2 ~/i.sol8/ { next } \ - $$$$2 ~/i.sol9/ { next } \ - $$$$2 ~/i.sol10/ { next } \ - $$$$3 ~/\/init\.d\/cswsendmail$$$$/ {$$$$2 = "cswinitsmf"} \ - $$$$3 ~/sol8\./ { $$$$2 = "sol8" } \ - $$$$3 ~/sol9\./ { $$$$2 = "sol9" } \ - $$$$3 ~/sol10\./ { $$$$2 = "sol10" } \ - { print } \ - END { { print "i i.sol8=CSWsendmail.i.sol8" } \ - { print "i i.sol9=CSWsendmail.i.sol9" } \ - { print "i i.sol10=CSWsendmail.i.sol10" } } ' + '$$$$2 ~/i.sol9/ { next } \ + $$$$2 ~/i.sol10/ { next } \ + $$$$3 ~/\/init\.d\/cswsendmail$$$$/ {$$$$2 = "cswinitsmf"} \ + $$$$3 ~/sol9\./ { $$$$2 = "sol9" } \ + $$$$3 ~/sol10\./ { $$$$2 = "sol10" } \ + { print } \ + END { { print "i i.sol9=CSWsendmail.i.sol9" } \ + { print "i i.sol10=CSWsendmail.i.sol10" } }' ENABLE_CHECK = 0 @@ -61,8 +58,9 @@ EXTRA_MERGE_SCRIPTS = OS include gar/category.mk -ADMSCRIPTS = preremove preinstall space depend i.sol8 i.sol9 i.sol10 +ADMSCRIPTS = preremove preinstall space depend i.sol9 i.sol10 + SOLVER = sol$(shell uname -r |sed 's/5\.//') PLATFORM = $(shell if [ `uname -i` = "i86pc" ] ; then echo i86pc ; else echo sun4 ; fi ) OBJDIR = $(WORKDIR)/$(DISTNAME)/obj.SunOS.$(GAROSREL).$(PLATFORM) Modified: csw/mgar/pkg/sendmail/trunk/checksums =================================================================== --- csw/mgar/pkg/sendmail/trunk/checksums 2011-02-04 16:47:32 UTC (rev 13195) +++ csw/mgar/pkg/sendmail/trunk/checksums 2011-02-04 19:56:11 UTC (rev 13196) @@ -1,24 +1 @@ -a9885ac08bd1f1d08e1e6fe0c5608408 download/CSWsendmail.checkinstall -c3da08ce0fb744123b3389dfdcaa22f7 download/CSWsendmail.i.sol10 -d0ddc9602bfbefac87467a418cc577cb download/CSWsendmail.i.sol8 -81131c94c1b339f08474bfc6a1ed934c download/CSWsendmail.i.sol9 -bd7692abc055a1da40d938379e92b12f download/CSWsendmail.postinstall -4c53e32ed6b4ac66c35d5079ebcb548d download/CSWsendmail.preinstall -644a174b1a1e74ef8655ea0002aff8f7 download/CSWsendmail.preremove -f49c3339aa897df97abf1baf54582fb8 download/CSWsendmail.space -6c030e7a797209ddfa4f6dbc531d753c download/README.CSW -e89e68f3e0ae84d665c4ab898a8f3325 download/Sun-sendmail-deactivate.sh -1c3a63f98171aa28a2714995ee938a2c download/Sun-sendmail-reactivate.sh -2bfc78e0f774b7168e29628b6a18570a download/aliases.CSW -f6aaf64942df693bfea12419f3746fc0 download/cswsendmail -c816378b3028cbab410f72168b571775 download/helpfile.CSW -d41d8cd98f00b204e9800998ecf8427e download/local-host-names.CSW -95c787a371c63caebc5d76faddba08e4 download/patch-CC-M.m4 -a5ee5d26e1f546a2da5fb9a513bd6bce download/sendmail.8.14.3.tar.gz -83532fac66f749a1532d461ce6bb2791 download/sendmail.cf.CSW -48851e45dca2a65a77f64f738bbf8d20 download/sendmail.schema -4dd792981f89ffa8b4602999a7c79441 download/site.config.m4 -d41d8cd98f00b204e9800998ecf8427e download/sm-client.st.CSW -d41d8cd98f00b204e9800998ecf8427e download/statistics.CSW -3fe39c11ac0598f3f9fa26b2676a2704 download/submit.cf.CSW -d41d8cd98f00b204e9800998ecf8427e download/trusted-users.CSW +1b23d5000c8e7bfe82ec1a27f2f5fdc5 sendmail.8.14.4.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From maciej at opencsw.org Sat Feb 5 20:20:52 2011 From: maciej at opencsw.org (maciej at opencsw.org) Date: Sat, 5 Feb 2011 20:20:52 +0100 Subject: [csw-devel] =?utf-8?q?=5BPOLICY=5D_opencsw-policy=3A_Abstract_and?= =?utf-8?q?_copyright?= Message-ID: <1296933652-32-1-git-send-email-maciej@opencsw.org> From: Maciej Blizinski Hello fellow maintainers, The topic of policy codification has been stuck on format discussions for last couple of weeks. It'd like to continue, under the assumption that there isn't that much interest in working with formats, and I can continue using asciidoc. I'd like to start laying the groundwork of the policy document. I'll be sending it in reasonably sized chunks, so that we can agree and commit them bit by bit. Here's the first chunk, which is a rough copy of the Debian policy manual abstract and copyright notice. It also defines the license as GPL 2.0+. Please provide your comments. If maintainers are OK with this change, I'll submit it to the code repository. Maciej --- pkg/opencsw-policy/trunk/Makefile | 7 +++-- pkg/opencsw-policy/trunk/checksums | 2 +- pkg/opencsw-policy/trunk/files/index.txt | 36 +++++++++++++++++++++++++++++- 3 files changed, 40 insertions(+), 5 deletions(-) diff --git a/pkg/opencsw-policy/trunk/Makefile b/pkg/opencsw-policy/trunk/Makefile index e2f2c18..698e2d0 100644 --- a/pkg/opencsw-policy/trunk/Makefile +++ b/pkg/opencsw-policy/trunk/Makefile @@ -10,14 +10,14 @@ define BLURB endef SPKG_SOURCEURL = http://www.opencsw.org MASTER_SITES = http://www.gnu.org/licenses/ -DISTFILES = fdl-1.3.txt +DISTFILES = gpl-2.0.txt CONFIGURE_SCRIPTS = BUILD_SCRIPTS = policy INSTALL_SCRIPTS = policy TEST_SCRIPTS = ARCHALL_CSWopencsw-policy = 1 CATALOGNAME_CSWopencsw-policy = opencsw_policy -LICENSE = fdl-1.3.txt +LICENSE = gpl-2.0.txt BUILD_DEP_PKGS = CSWasciidoc @@ -41,6 +41,7 @@ install-policy: @$(MAKECOOKIE) post-merge: + # For testing purposes if [ -d $(HOME)/public_html/policy ]; then \ - cp $(PKGROOT)/opt/csw/share/doc/opencsw_policy/index.html $(HOME)/public_html/policy; \ + rsync -vr $(PKGROOT)/opt/csw/share/doc/opencsw_policy/ $(HOME)/public_html/policy; \ fi diff --git a/pkg/opencsw-policy/trunk/checksums b/pkg/opencsw-policy/trunk/checksums index e6fa4f0..6986890 100644 --- a/pkg/opencsw-policy/trunk/checksums +++ b/pkg/opencsw-policy/trunk/checksums @@ -1 +1 @@ -10b9de612d532fdeeb7fe8fcd1435cc6 fdl-1.3.txt +b234ee4d69f5fce4486a80fdaf4a4263 gpl-2.0.txt diff --git a/pkg/opencsw-policy/trunk/files/index.txt b/pkg/opencsw-policy/trunk/files/index.txt index 7e9ee64..fbb183c 100644 --- a/pkg/opencsw-policy/trunk/files/index.txt +++ b/pkg/opencsw-policy/trunk/files/index.txt @@ -3,5 +3,39 @@ OpenCSW packaging policy $Id: Makefile 11888 2010-12-12 12:43:48Z skayser $ :toc: :website: http://www.opencsw.org - :leveloffset: 1 + +Abstract +======== + +This manual describes the policy requirements for the OpenCSW package +catalog. This includes the structure and contents of the OpenCSW package +catalog and several design issues of OpenCSW packages, as well as +technical requirements that each package must satisfy to be included in +the distribution. + +Copyright Notice +================ + +Copyright ? 2011 OpenCSW + +Parts of this manual are copied from the Debian GNU/Linux policy manual. +This manual is released with compliance with Debian manual's licensing +terms. + +This manual is free software; you may redistribute it and/or modify it +under the terms of the GNU General Public License as published by the +Free Software Foundation; either version 2, or (at your option) any +later version. + +This is distributed in the hope that it will be useful, but without any +warranty; without even the implied warranty of merchantability or +fitness for a particular purpose. See the GNU General Public License for +more details. + +A copy of the GNU General Public License is available on the World Wide +Web at the GNU General Public Licence. You can also obtain it by writing +to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, +Boston, MA 02110-1301, USA. + +include::shared-csw-opt.txt[] -- 1.7.3.2 From maciej at opencsw.org Sat Feb 5 20:27:50 2011 From: maciej at opencsw.org (=?UTF-8?Q?Maciej_Blizi=C5=84ski?=) Date: Sat, 5 Feb 2011 19:27:50 +0000 Subject: [csw-devel] SF.net SVN: gar:[13195] csw/mgar/pkg/pkgutil/trunk/Makefile In-Reply-To: References: Message-ID: 2011/2/4 : > Revision: 13195 > ? ? ? ? ?http://gar.svn.sourceforge.net/gar/?rev=13195&view=rev > Author: ? bonivart > Date: ? ? 2011-02-04 16:47:32 +0000 (Fri, 04 Feb 2011) > > Log Message: > ----------- > pkgutil: CSWpmstringapprox not installed on build servers Checkpkg no longer cares about build servers when checking. It only checks packages against the catalog. I'm not sure why was it reported as unknown, but it most probably wasn't related to installation status on the buildfarm. Maciej From wahwah at users.sourceforge.net Sat Feb 5 20:37:17 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sat, 05 Feb 2011 19:37:17 +0000 Subject: [csw-devel] SF.net SVN: gar:[13200] csw/mgar/gar/v2/lib/web/releases_web.py Message-ID: Revision: 13200 http://gar.svn.sourceforge.net/gar/?rev=13200&view=rev Author: wahwah Date: 2011-02-05 19:37:17 +0000 (Sat, 05 Feb 2011) Log Message: ----------- releases_web: Remove 'code_version' bit It was used to check if my changes made it to the web server. Modified Paths: -------------- csw/mgar/gar/v2/lib/web/releases_web.py Modified: csw/mgar/gar/v2/lib/web/releases_web.py =================================================================== --- csw/mgar/gar/v2/lib/web/releases_web.py 2011-02-05 19:36:48 UTC (rev 13199) +++ csw/mgar/gar/v2/lib/web/releases_web.py 2011-02-05 19:37:17 UTC (rev 13200) @@ -142,7 +142,6 @@ is to add the 'Content-Length' header. However, it sometimes still gets stuck and I don't know why. """ - code_version = "0x02" configuration.SetUpSqlobjectConnection() if catrel_name != 'unstable': # Updates via web are allowed only for the unstable catalog. @@ -183,7 +182,6 @@ response = json.dumps([ u"Added to catalog %s %s %s" % (catrel_name, arch_name, osrel_name), u"%s" % srv4.basename, - u"code_version" + str(code_version), ]) web.header('Content-Length', len(response)) return response @@ -195,7 +193,6 @@ 'application/x-vnd.opencsw.pkg;type=error-message') response = json.dumps({ "error_message": unicode(e), - "code_version": code_version, }) web.header('Content-Length', len(response)) return response This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sat Feb 5 20:37:45 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sat, 05 Feb 2011 19:37:45 +0000 Subject: [csw-devel] SF.net SVN: gar:[13201] csw/mgar/gar/v2/lib/python/README Message-ID: Revision: 13201 http://gar.svn.sourceforge.net/gar/?rev=13201&view=rev Author: wahwah Date: 2011-02-05 19:37:45 +0000 (Sat, 05 Feb 2011) Log Message: ----------- checkpkg: README updated, tabs removed Modified Paths: -------------- csw/mgar/gar/v2/lib/python/README Modified: csw/mgar/gar/v2/lib/python/README =================================================================== --- csw/mgar/gar/v2/lib/python/README 2011-02-05 19:37:17 UTC (rev 13200) +++ csw/mgar/gar/v2/lib/python/README 2011-02-05 19:37:45 UTC (rev 13201) @@ -4,14 +4,15 @@ Checks to implement: - foo_bar != CSWfoo-bar -> error - - *dev(el)? -> error, suggest *-devel + - *dev(el)? -> error, suggest *-dev - *-?rt -> error, suggest specific library packages - empty package without 'transitional' in the name --> error, suggest - 'transitional' + 'transitional' - CSWpmfoo --> error, suggest CSWpm-foo - Dependency on a transitional package --> error - ('transitional', 'stub', 'legacy') + ('transitional', 'stub', 'legacy') - Dependency on CSWcas-initsmf + rc* files --> error + - A package must not be incompatible with itself Development plan for checkpkg: @@ -19,7 +20,7 @@ - Allow maintainers to opt-out from these notifications - Add support for the 'overridden' field in the database - When adding a package to a catalog, store the time and date of the - addition + addition - Display stats from each run - Shorten the on-screen output, add commands to display override lines - Move the set check stats outside of checking functions, remove the special This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sat Feb 5 20:36:48 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sat, 05 Feb 2011 19:36:48 +0000 Subject: [csw-devel] SF.net SVN: gar:[13199] csw/mgar/gar/v2/lib/web/pkgdb_web.py Message-ID: Revision: 13199 http://gar.svn.sourceforge.net/gar/?rev=13199&view=rev Author: wahwah Date: 2011-02-05 19:36:48 +0000 (Sat, 05 Feb 2011) Log Message: ----------- pkgdb_web: A URL to return a whole catalog Slow (~30s), but useful to diff catalogs. Modified Paths: -------------- csw/mgar/gar/v2/lib/web/pkgdb_web.py Modified: csw/mgar/gar/v2/lib/web/pkgdb_web.py =================================================================== --- csw/mgar/gar/v2/lib/web/pkgdb_web.py 2011-02-05 19:36:20 UTC (rev 13198) +++ csw/mgar/gar/v2/lib/web/pkgdb_web.py 2011-02-05 19:36:48 UTC (rev 13199) @@ -23,6 +23,7 @@ r'/maintainers/(\d+)/checkpkg/', 'MaintainerCheckpkgReport', r'/error-tags/', 'ErrorTagList', r'/catalognames/([^/]+)/', 'Catalogname', + r'/rest/catalogs/([^/]+)/([^/]+)/([^/]+)/', 'Catalogs', r'/rest/catalogs/([^/]+)/([^/]+)/([^/]+)/pkgname-by-filename', 'PkgnameByFilename', r'/rest/srv4/([0-9a-f]{32})/', 'RestSrv4Detail', @@ -170,6 +171,19 @@ return render.ErrorTagList(tag_names) +class Catalogs(object): + def GET(self, catrel_name, arch_name, osrel_name): + ConnectToDatabase() + sqo_osrel, sqo_arch, sqo_catrel = pkgdb.GetSqoTriad( + osrel_name, arch_name, catrel_name) + pkgs = list(models.GetCatPackagesResult(sqo_osrel, sqo_arch, sqo_catrel)) + if not len(pkgs): + raise web.notfound() + web.header('Content-type', 'application/x-vnd.opencsw.pkg;type=srv4-list') + pkgs_data = [x.GetRestRepr()[1] for x in pkgs] + return json.dumps(pkgs_data) + + class PkgnameByFilename(object): def GET(self, catrel, arch, osrel): ConnectToDatabase() This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sat Feb 5 20:38:13 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sat, 05 Feb 2011 19:38:13 +0000 Subject: [csw-devel] SF.net SVN: gar:[13202] csw/mgar/gar/v2/lib/web/pkgdb_web.py Message-ID: Revision: 13202 http://gar.svn.sourceforge.net/gar/?rev=13202&view=rev Author: wahwah Date: 2011-02-05 19:38:13 +0000 (Sat, 05 Feb 2011) Log Message: ----------- pkgdb_web: Whitespace changes Adding more space between classes Modified Paths: -------------- csw/mgar/gar/v2/lib/web/pkgdb_web.py Modified: csw/mgar/gar/v2/lib/web/pkgdb_web.py =================================================================== --- csw/mgar/gar/v2/lib/web/pkgdb_web.py 2011-02-05 19:37:45 UTC (rev 13201) +++ csw/mgar/gar/v2/lib/web/pkgdb_web.py 2011-02-05 19:38:13 UTC (rev 13202) @@ -37,10 +37,12 @@ def ConnectToDatabase(): configuration.SetUpSqlobjectConnection() + class index(object): def GET(self): return render.index() + class Srv4List(object): def GET(self): ConnectToDatabase() @@ -54,6 +56,7 @@ pkgs_ago = [(x, Ago(now - x.mtime)) for x in pkgs] return render.Srv4List(pkgs_ago) + class Srv4Detail(object): def GET(self, md5_sum): ConnectToDatabase() @@ -117,6 +120,7 @@ catalogs.append(key) return render.CatalogList(catalogs) + class CatalogDetail(object): def GET(self, catrel_name, arch_name, osrel_name): ConnectToDatabase() @@ -126,6 +130,7 @@ pkgs = models.GetCatPackagesResult(sqo_osrel, sqo_arch, sqo_catrel) return render.CatalogDetail(cat_name, pkgs) + class MaintainerList(object): def GET(self): ConnectToDatabase() @@ -133,6 +138,7 @@ names = [tuple(x.email.split("@") + [x]) for x in maintainers] return render.MaintainerList(names) + class MaintainerDetail(object): def GET(self, id): ConnectToDatabase() @@ -145,6 +151,7 @@ ).orderBy('basename') return render.MaintainerDetail(maintainer, pkgs) + class MaintainerCheckpkgReport(object): def GET(self, id): ConnectToDatabase() @@ -162,6 +169,7 @@ tags_by_md5.setdefault(pkg.md5_sum, tags) return render.MaintainerCheckpkgReport(maintainer, pkgs, tags_by_md5) + class ErrorTagList(object): def GET(self): ConnectToDatabase() This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sat Feb 5 20:36:20 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sat, 05 Feb 2011 19:36:20 +0000 Subject: [csw-devel] SF.net SVN: gar:[13198] csw/mgar/gar/v2/lib/python Message-ID: Revision: 13198 http://gar.svn.sourceforge.net/gar/?rev=13198&view=rev Author: wahwah Date: 2011-02-05 19:36:20 +0000 (Sat, 05 Feb 2011) Log Message: ----------- pkgdb: Special REST client class Different parts of code can reuse REST interaction. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/catalog_notifier.py Added Paths: ----------- csw/mgar/gar/v2/lib/python/rest.py Modified: csw/mgar/gar/v2/lib/python/catalog_notifier.py =================================================================== --- csw/mgar/gar/v2/lib/python/catalog_notifier.py 2011-02-05 19:34:52 UTC (rev 13197) +++ csw/mgar/gar/v2/lib/python/catalog_notifier.py 2011-02-05 19:36:20 UTC (rev 13198) @@ -16,6 +16,7 @@ import os.path import smtplib from email.mime.text import MIMEText +import rest REPORT_TMPL = u"""Catalog update report for $email Catalog URL: $url @@ -81,21 +82,6 @@ #end if """ -class RestClient(object): - - def GetPkgByMd5(self, md5_sum): - url = "http://buildfarm.opencsw.org/pkgdb/rest/srv4/%s/" % md5_sum - logging.debug("GetPkgByMd5(): calling %s", url) - data = urllib2.urlopen(url).read() - return json.loads(data) - - def GetMaintainerByMd5(self, md5_sum): - pkg = self.GetPkgByMd5(md5_sum) - return { - "maintainer_email": pkg["maintainer_email"], - } - - class NotificationFormatter(object): def _GetPkgsByMaintainer(self, catalogs, rest_client): @@ -247,7 +233,7 @@ else: logging.debug("%s not found in previous_catalogs_by_triad", key) formatter = NotificationFormatter() - rest_client = RestClient() + rest_client = rest.RestClient() notifications = formatter.FormatNotifications( cat_tree_url, catalogs, rest_client) whitelist = frozenset() Added: csw/mgar/gar/v2/lib/python/rest.py =================================================================== --- csw/mgar/gar/v2/lib/python/rest.py (rev 0) +++ csw/mgar/gar/v2/lib/python/rest.py 2011-02-05 19:36:20 UTC (rev 13198) @@ -0,0 +1,33 @@ +#!/usr/bin/env python2.6 + +import logging +import urllib2 +import json + +BASE_URL = "http://buildfarm.opencsw.org/pkgdb/rest" + +class RestClient(object): + + def GetPkgByMd5(self, md5_sum): + url = BASE_URL + "/srv4/%s/" % md5_sum + logging.debug("GetPkgByMd5(): GET %s", url) + try: + data = urllib2.urlopen(url).read() + return json.loads(data) + except urllib2.HTTPError, e: + logging.warning(e) + return { + "maintainer_email": "Unknown", + } + + def GetMaintainerByMd5(self, md5_sum): + pkg = self.GetPkgByMd5(md5_sum) + return { + "maintainer_email": pkg["maintainer_email"], + } + + def GetCatalog(self, catrel, arch, osrel): + url = BASE_URL + "/catalogs/%s/%s/%s/" % (catrel, arch, osrel) + logging.debug("GetCatalog(): GET %s", url) + data = urllib2.urlopen(url).read() + return json.loads(data) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sat Feb 5 20:38:45 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sat, 05 Feb 2011 19:38:45 +0000 Subject: [csw-devel] SF.net SVN: gar:[13203] csw/mgar/gar/v2/lib/web/pkgdb_web.py Message-ID: Revision: 13203 http://gar.svn.sourceforge.net/gar/?rev=13203&view=rev Author: wahwah Date: 2011-02-05 19:38:45 +0000 (Sat, 05 Feb 2011) Log Message: ----------- pkgdb: Using "pkgname-list" as media type It's a list of pkgnames represented as strings. Modified Paths: -------------- csw/mgar/gar/v2/lib/web/pkgdb_web.py Modified: csw/mgar/gar/v2/lib/web/pkgdb_web.py =================================================================== --- csw/mgar/gar/v2/lib/web/pkgdb_web.py 2011-02-05 19:38:13 UTC (rev 13202) +++ csw/mgar/gar/v2/lib/web/pkgdb_web.py 2011-02-05 19:38:45 UTC (rev 13203) @@ -203,7 +203,7 @@ db_catalog = checkpkg_lib.Catalog() try: pkgs = db_catalog.GetPkgByPath(filename, osrel, arch, catrel) - web.header('Content-type', 'application/x-vnd.opencsw.pkg;type=pkg-list') + web.header('Content-type', 'application/x-vnd.opencsw.pkg;type=pkgname-list') web.header('X-Rest-Info', 'I could tell you about the format, but I won\'t') web.header('Content-Disposition', 'attachment; filename=%s' % send_filename) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sat Feb 5 20:34:52 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sat, 05 Feb 2011 19:34:52 +0000 Subject: [csw-devel] SF.net SVN: gar:[13197] csw/mgar/gar/v2/lib Message-ID: Revision: 13197 http://gar.svn.sourceforge.net/gar/?rev=13197&view=rev Author: wahwah Date: 2011-02-05 19:34:52 +0000 (Sat, 05 Feb 2011) Log Message: ----------- pkgdb: GetCatPackagesResult moved to models.py It's a reusable function. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/models.py csw/mgar/gar/v2/lib/python/pkgdb.py csw/mgar/gar/v2/lib/web/pkgdb_web.py Modified: csw/mgar/gar/v2/lib/python/models.py =================================================================== --- csw/mgar/gar/v2/lib/python/models.py 2011-02-04 19:56:11 UTC (rev 13196) +++ csw/mgar/gar/v2/lib/python/models.py 2011-02-05 19:34:52 UTC (rev 13197) @@ -326,3 +326,21 @@ pkginst = sqlobject.ForeignKey('Pkginst', notNone=True) dep_uniq_idx = sqlobject.DatabaseIndex( 'srv4_file', 'pkginst') + + +def GetCatPackagesResult(sqo_osrel, sqo_arch, sqo_catrel): + join = [ + sqlbuilder.INNERJOINOn(None, + Srv4FileInCatalog, + Srv4FileInCatalog.q.srv4file==Srv4FileStats.q.id), + ] + res = Srv4FileStats.select( + sqlobject.AND( + Srv4FileInCatalog.q.osrel==sqo_osrel, + Srv4FileInCatalog.q.arch==sqo_arch, + Srv4FileInCatalog.q.catrel==sqo_catrel, + Srv4FileStats.q.use_to_generate_catalogs==True, + ), + join=join, + ).orderBy('catalogname') + return res Modified: csw/mgar/gar/v2/lib/python/pkgdb.py =================================================================== --- csw/mgar/gar/v2/lib/python/pkgdb.py 2011-02-04 19:56:11 UTC (rev 13196) +++ csw/mgar/gar/v2/lib/python/pkgdb.py 2011-02-05 19:34:52 UTC (rev 13197) @@ -334,24 +334,6 @@ return sqo_osrel, sqo_arch, sqo_catrel -def GetCatPackagesResult(sqo_osrel, sqo_arch, sqo_catrel): - join = [ - sqlbuilder.INNERJOINOn(None, - m.Srv4FileInCatalog, - m.Srv4FileInCatalog.q.srv4file==m.Srv4FileStats.q.id), - ] - res = m.Srv4FileStats.select( - sqlobject.AND( - m.Srv4FileInCatalog.q.osrel==sqo_osrel, - m.Srv4FileInCatalog.q.arch==sqo_arch, - m.Srv4FileInCatalog.q.catrel==sqo_catrel, - m.Srv4FileStats.q.use_to_generate_catalogs==True, - ), - join=join, - ).orderBy('catalogname') - return res - - def main(): parser = optparse.OptionParser(USAGE) parser.add_option("-d", "--debug", dest="debug", @@ -534,7 +516,7 @@ elif (command, subcommand) == ('show', 'cat'): sqo_osrel, sqo_arch, sqo_catrel = GetSqoTriad( options.osrel, options.arch, options.catrel) - res = GetCatPackagesResult(sqo_osrel, sqo_arch, sqo_catrel) + res = m.GetCatPackagesResult(sqo_osrel, sqo_arch, sqo_catrel) for obj in res: print obj.catalogname, obj.basename, obj.md5_sum elif command == 'gen-cat': @@ -563,7 +545,7 @@ for arch in archs: sqo_osrel, sqo_arch, sqo_catrel = GetSqoTriad( osrel, arch, catrel) - pkgs = list(GetCatPackagesResult(sqo_osrel, sqo_arch, sqo_catrel)) + pkgs = list(m.GetCatPackagesResult(sqo_osrel, sqo_arch, sqo_catrel)) logging.debug("The catalog contains %s packages" % len(pkgs)) # For now, only making hardlinks to packages from allpkgs osrel_short = ShortenOsrel(osrel) Modified: csw/mgar/gar/v2/lib/web/pkgdb_web.py =================================================================== --- csw/mgar/gar/v2/lib/web/pkgdb_web.py 2011-02-04 19:56:11 UTC (rev 13196) +++ csw/mgar/gar/v2/lib/web/pkgdb_web.py 2011-02-05 19:34:52 UTC (rev 13197) @@ -122,7 +122,7 @@ cat_name = " ".join((catrel_name, arch_name, osrel_name)) sqo_osrel, sqo_arch, sqo_catrel = pkgdb.GetSqoTriad( osrel_name, arch_name, catrel_name) - pkgs = pkgdb.GetCatPackagesResult(sqo_osrel, sqo_arch, sqo_catrel) + pkgs = models.GetCatPackagesResult(sqo_osrel, sqo_arch, sqo_catrel) return render.CatalogDetail(cat_name, pkgs) class MaintainerList(object): This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sat Feb 5 20:39:43 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sat, 05 Feb 2011 19:39:43 +0000 Subject: [csw-devel] SF.net SVN: gar:[13205] csw/mgar/gar/v2/lib/python/package_checks_test.py Message-ID: Revision: 13205 http://gar.svn.sourceforge.net/gar/?rev=13205&view=rev Author: wahwah Date: 2011-02-05 19:39:43 +0000 (Sat, 05 Feb 2011) Log Message: ----------- checkpkg: Allow to run more than 1 test per class When writing tests for checkpkg checks, it would be nice to be able to write more than one test in one class, instead of creating a new class for every check. Adding a level of indirection, a function with takes a callback function as an argument, allows to do that. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/package_checks_test.py Modified: csw/mgar/gar/v2/lib/python/package_checks_test.py =================================================================== --- csw/mgar/gar/v2/lib/python/package_checks_test.py 2011-02-05 19:39:15 UTC (rev 13204) +++ csw/mgar/gar/v2/lib/python/package_checks_test.py 2011-02-05 19:39:43 UTC (rev 13205) @@ -51,10 +51,13 @@ checkpkg_lib.IndividualCheckInterface) def testDefault(self): + self.RunCheckpkgTest(self.CheckpkgTest) + + def RunCheckpkgTest(self, callback): self.logger_mock = stubs.LoggerStub() self.SetMessenger() self.SetErrorManagerMock() - self.CheckpkgTest() + callback() self.mox.ReplayAll() getattr(pc, self.FUNCTION_NAME)(self.pkg_data, self.error_mgr_mock, This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sat Feb 5 20:39:15 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sat, 05 Feb 2011 19:39:15 +0000 Subject: [csw-devel] SF.net SVN: gar:[13204] csw/mgar/gar/v2/lib/python Message-ID: Revision: 13204 http://gar.svn.sourceforge.net/gar/?rev=13204&view=rev Author: wahwah Date: 2011-02-05 19:39:15 +0000 (Sat, 05 Feb 2011) Log Message: ----------- checkpkg: Better messages for deprec. shared libs It's better to only include simple data in the error parameter, and provide a separate human-readable message through the Messenger class. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/dependency_checks.py csw/mgar/gar/v2/lib/python/package_checks_test.py Modified: csw/mgar/gar/v2/lib/python/dependency_checks.py =================================================================== --- csw/mgar/gar/v2/lib/python/dependency_checks.py 2011-02-05 19:38:45 UTC (rev 13203) +++ csw/mgar/gar/v2/lib/python/dependency_checks.py 2011-02-05 19:39:15 UTC (rev 13204) @@ -95,8 +95,11 @@ error_mgr.ReportError( pkgname, "deprecated-library", - ("%s %s %s/%s" - % (binary_info["path"], msg, resolved_path, soname))) + ("file=%s lib=%s/%s" + % (binary_info["path"], resolved_path, soname))) + messenger.Message( + "Binary %s links to a deprecated library %s/%s. %s" + % (binary_info["path"], resolved_path, soname, msg)) if not resolved: orphan_sonames.append((soname, binary_info["path"])) if path_list: Modified: csw/mgar/gar/v2/lib/python/package_checks_test.py =================================================================== --- csw/mgar/gar/v2/lib/python/package_checks_test.py 2011-02-05 19:38:45 UTC (rev 13203) +++ csw/mgar/gar/v2/lib/python/package_checks_test.py 2011-02-05 19:39:15 UTC (rev 13204) @@ -646,8 +646,8 @@ self.error_mgr_mock.ReportError( 'CSWrsync', 'deprecated-library', - u'opt/csw/bin/sparcv8/rsync Deprecated Berkeley DB location ' - u'/opt/csw/lib/libdb-4.7.so') + u'file=opt/csw/bin/sparcv8/rsync ' + u'lib=/opt/csw/lib/libdb-4.7.so') self.pkg_data = [self.pkg_data] for i in range(1): self.error_mgr_mock.NeedFile( This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sat Feb 5 20:40:14 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sat, 05 Feb 2011 19:40:14 +0000 Subject: [csw-devel] SF.net SVN: gar:[13206] csw/mgar/gar/v2/lib/python Message-ID: Revision: 13206 http://gar.svn.sourceforge.net/gar/?rev=13206&view=rev Author: wahwah Date: 2011-02-05 19:40:13 +0000 (Sat, 05 Feb 2011) Log Message: ----------- checkpkg: New check, /etc/foo --> error This new check catches paths such as /etc/puppet/auth.conf. It uses a whitelist: /opt/csw, /etc/opt/csw, /var/opt/csw. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/package_checks.py csw/mgar/gar/v2/lib/python/package_checks_test.py Modified: csw/mgar/gar/v2/lib/python/package_checks.py =================================================================== --- csw/mgar/gar/v2/lib/python/package_checks.py 2011-02-05 19:39:43 UTC (rev 13205) +++ csw/mgar/gar/v2/lib/python/package_checks.py 2011-02-05 19:40:13 UTC (rev 13206) @@ -156,6 +156,14 @@ }, } + +ALLOWED_STARTING_PATHS = frozenset([ + "/opt/csw", + "/etc/opt/csw", + "/var/opt/csw", +]) + + def RemovePackagesUnderInstallation(paths_and_pkgs_by_soname, pkgs_to_be_installed): """Emulates uninstallation of packages prior to installation @@ -1193,6 +1201,28 @@ % (pkgname, repr(pkgmap_entry["path"]), repr(pkgmap_entry["target"]))) +def CheckPrefixDirs(pkg_data, error_mgr, logger, messenger): + """Files are allowed to be in /opt/csw, /etc/opt/csw and /var/opt/csw.""" + pkgname = pkg_data["basic_stats"]["pkgname"] + paths_with_slashes = [(x, x + "/") for x in ALLOWED_STARTING_PATHS] + for pkgmap_entry in pkg_data["pkgmap"]: + if "path" not in pkgmap_entry: continue + if not pkgmap_entry["path"]: continue + allowed_found = False + for p, pslash in paths_with_slashes: + # We need to handle /opt/csw as an allowed path + if pkgmap_entry["path"] == p: + allowed_found = True + break + if pkgmap_entry["path"].startswith(pslash): + allowed_found = True + break + if not allowed_found: + error_mgr.ReportError( + "bad-location-of-file", + "file=%s" % pkgmap_entry["path"]) + + def CheckSonameMustNotBeEqualToFileNameIfFilenameEndsWithSo( pkg_data, error_mgr, logger, messenger): pass Modified: csw/mgar/gar/v2/lib/python/package_checks_test.py =================================================================== --- csw/mgar/gar/v2/lib/python/package_checks_test.py 2011-02-05 19:39:43 UTC (rev 13205) +++ csw/mgar/gar/v2/lib/python/package_checks_test.py 2011-02-05 19:40:13 UTC (rev 13206) @@ -1585,5 +1585,75 @@ self.error_mgr_mock.NeedFile('/opt/csw/lib/libpq.so.5', mox.IsA(str)) +class TestCheckPrefixDirs(CheckpkgUnitTestHelper, + unittest.TestCase): + FUNCTION_NAME = 'CheckPrefixDirs' + + def CheckpkgTest(self): + self.pkg_data = copy.deepcopy(tree_stats[0]) + self.pkg_data["pkgmap"].append( + {'class': 'none', + 'group': None, + 'line': None, + 'mode': None, + 'path': '/opt/csw/bin/foo', + 'type': 'f', + 'user': None, + 'target': None}) + + def CheckpkgTest2(self): + self.pkg_data = copy.deepcopy(tree_stats[0]) + self.pkg_data["pkgmap"].append( + {'class': 'none', + 'group': None, + 'line': None, + 'mode': None, + 'path': '/opt/cswbin/foo', + 'type': 'f', + 'user': None, + 'target': None}) + self.error_mgr_mock.ReportError( + 'bad-location-of-file', + 'file=/opt/cswbin/foo') + + def CheckpkgTest3(self): + self.pkg_data = copy.deepcopy(tree_stats[0]) + self.pkg_data["pkgmap"].append( + {'class': 'none', + 'group': None, + 'line': None, + 'mode': None, + 'path': '/var/opt/csw/foo', + 'type': 'f', + 'user': None, + 'target': None}) + + def CheckpkgTest4(self): + self.pkg_data = copy.deepcopy(tree_stats[0]) + self.pkg_data["pkgmap"].append( + {'class': 'none', + 'group': None, + 'line': None, + 'mode': None, + 'path': '/var/foo', + 'type': 'f', + 'user': None, + 'target': None}) + self.error_mgr_mock.ReportError( + 'bad-location-of-file', + 'file=/var/foo') + + # These three utility functions allow to run 3 tests in a single + # class. + def testTwo(self): + self.RunCheckpkgTest(self.CheckpkgTest2) + + def testThree(self): + self.RunCheckpkgTest(self.CheckpkgTest3) + + def testFour(self): + self.RunCheckpkgTest(self.CheckpkgTest4) + + if __name__ == '__main__': unittest.main() This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sat Feb 5 20:40:44 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sat, 05 Feb 2011 19:40:44 +0000 Subject: [csw-devel] SF.net SVN: gar:[13207] csw/mgar/pkg/opencsw-policy/trunk/files Message-ID: Revision: 13207 http://gar.svn.sourceforge.net/gar/?rev=13207&view=rev Author: wahwah Date: 2011-02-05 19:40:44 +0000 (Sat, 05 Feb 2011) Log Message: ----------- opencsw-policy: Clean up before populating We need a fresh start; removed a POC content to prepare a starting point for actual policy content. Modified Paths: -------------- csw/mgar/pkg/opencsw-policy/trunk/files/index.txt Removed Paths: ------------- csw/mgar/pkg/opencsw-policy/trunk/files/shared-csw-opt.txt Modified: csw/mgar/pkg/opencsw-policy/trunk/files/index.txt =================================================================== --- csw/mgar/pkg/opencsw-policy/trunk/files/index.txt 2011-02-05 19:40:13 UTC (rev 13206) +++ csw/mgar/pkg/opencsw-policy/trunk/files/index.txt 2011-02-05 19:40:44 UTC (rev 13207) @@ -5,5 +5,3 @@ :website: http://www.opencsw.org :leveloffset: 1 - -include::shared-csw-opt.txt[] Deleted: csw/mgar/pkg/opencsw-policy/trunk/files/shared-csw-opt.txt =================================================================== --- csw/mgar/pkg/opencsw-policy/trunk/files/shared-csw-opt.txt 2011-02-05 19:40:13 UTC (rev 13206) +++ csw/mgar/pkg/opencsw-policy/trunk/files/shared-csw-opt.txt 2011-02-05 19:40:44 UTC (rev 13207) @@ -1,169 +0,0 @@ -Shared /opt/csw -=============== - -When creating packages that require configuration files, or startup -information, etc. it is important to be aware that some sites may deploy their -systems with a shared /opt/csw across multiple machines. - -There are a few different variants of this. Among them are: - -* NFS-shared /opt/csw, shared read-only across multiple machines -* /opt/csw duplicated via rsync or other means -* A filesystem shared across multiple zones -* A filesystem shared across multiple "Boot Environments" on the same machine - (a la "beadm") - - -There are multiple reasons why a site may choose to go this route. One may be -that it is a heterogenous environment, and a central NFS server is simply -their standard way of sharing things out. One central file server, means one -and only central place to do backups, etc. - -Another reason may be: when you have a high number of zones on a box, having -every single pkgadd go through each zone and do the strange -child-zone-specific pkgadd/pkgrm, is too aggravating to deal with. So they may -choose to have /opt/csw be a NON-"inherit-pkg-dir" mount from the global zone. -Or, they may choose to not add packages in the global zone at all! but allow -one zone to be the csw package master, and then share /opt/csw from that zone, -to other zones. - -The good news for maintainers is, we dont need to know the specifics of each -site configuration. We can service any and all of the above cases quite -nicely, by following some basic principles. - -Yes, this unfortunately may mean more work for the maintainer! But this is -a major reason for people to value OpenCSW packages, over just a blind -"compile and install" approach. - -Categories of packaging challege --------------------------------- - -All software to be packaged will most likely fall into one, or sometimes two, of the following categories: - -* Standalone tools - No config needed! -* Machine-individual configuration/data always required -* Configuration "required", but almost always the same on ANYONE's site -* Daemons -* Programs that already are, or can be made to be, dual config (one global in /opt/csw/etc, and one in /etc/opt/csw) -* Optional configuration - -Lets address each of these one by one - -Standalone tools -~~~~~~~~~~~~~~~~ - -Congratulations you lucky person! You're done here! - -Machine-individual configuration always required -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Okay, some things (such as databases) always need a local configuration to -work. If you are nice, you may have provided some kind of postinstall script -to automate this as much as possible. However, NFS-shared type sites, dont -automatically get the postinstall run on each machine! At minimum, you need -to provide documentation (under our normal location of -/opt/csw/share/progname/) of what is required to get the software properly -working on each individual machine. Ideally, you would create some kind of -auto-install script, that can be called EITHER by postinstall, OR by hand, on -an individual machine that has nothing but /opt/csw mounted. - - -Configuration "required", but almost always the same -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -If you're really really REALLY sure that no sane person will ever edit the -config file, it might be okay to put it directly in /opt/csw/etc and be done -with it. However, the "right" way to handle this would be to put your expected -config as a template, /opt/csw/etc/yourprog.conf.CSW, and then use one of our -"cswclassutils" to automatically install and remove it to the normal place, IF -the site admin has not chosen to make local tweaks. That's it! You're done -here. - -Daemons -~~~~~~~ - -A lot to talk about here. As far as configs go, you could start by treating -them as the "machine local config always required" case, but there are -additional considerations. You really need to read the full Daemon -configuration page. - -Programs that already are, or can be made to be, dual config -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Happily, some enterprise-level software is already capable of having both -a "global" and a "local" set of configs. In this case, your task is easy. -Create the default global ones (ideally by following the steps in the "always -the same" item, above), and then provide sample local config files as -appropriate. Possibly, your template global config -file(/opt/csw/etc/prog.conf.CSW) will serve fine for this as well. If so, make -sure to comment that fact in your template one. There are some programs that -do not act this way "out of the box", but can be made to act this way, with -appropriate tweaks. For example, some programs allow for an optional -"include" syntax, that will pull in an extra config file if present, but not -complain too much if it is not there. In these cases, take advantage of this -syntax in the global file, and ship it as a dual config style package. - - -Optional configuration -~~~~~~~~~~~~~~~~~~~~~~ - -Some programs can "allow for" a local configuration, but can still run with -a reasonable set of defaults. If your program is in this category (or at least -can be MADE to fit in this category), then *just make sure that "it runs", if -nothing outside of /opt/csw gets distributed.* Put information in our usual -location of /opt/csw/share/progname/ of how to add in local tweaks. Provide -sample configs, or a setup script if appropriate. - -Summary of acceptable directory use ------------------------------------ - -It's possible to share the /opt/csw directory among multiple Solaris zones, or -among multiple systems, using NFS. Such setup required paying attention to -some details. In the case of sharing /opt/csw among sparse non-global Solaris -zones, the /opt/csw directory is going to be read-only. Some programs are -going to need separate configuration files, or a separate state keeping -directory. To have this setup working, one needs: - -[options="header"] -|=============================================================================== -| | directory | writable | Allowable use -| 1. | /opt/csw | No | Non-changable files, with exceptions below -| 2. | /opt/csw**/var** | No | *Never use this* -| 3. | /opt/csw**/etc** | (special) | -Use for template files(packaged), and global configs (postinstall/classutil) -generated from template files - -| 4. | **/var**/opt/csw | *Yes* | -Allowable for *run-time-only* data. Do not deliver files in package here - -| 5. | **/etc**/opt/csw | *Yes* | -Optional site-admin, or template-copied, configs only. No "packaged" files - -|=============================================================================== - -Note that for #3, if you have a postinstall or class action script generating -content in /opt/csw/etc, it must fail gracefully if /opt/csw is read-only. - -A very few, ancient packages are still using the /opt/csw/var and -/opt/csw/etc directories and may not work correctly. There's ongoing work -to update them to use the correct directories. - -GAR tweaks to set autoconf progs to use local /etc --------------------------------------------------- - -For the case of "Machine-individual configuration always required", in GAR, -only the two following variables need to be set, usually: - -.GAR configuration sample --------------------------------------------------------------------------------- -localstatedir = /var$(prefix) -sysconfdir = /etc$(prefix) --------------------------------------------------------------------------------- - -There are actually standard GNU autoconf (configure) settings, which will be passed on. - -See also --------- - -* Configuration directory migration -* http://www.opencsw.org/userguide/sharingcsw[Sharing /opt/csw] at opencsw.org This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at opencsw.org Sat Feb 5 20:41:44 2011 From: bonivart at opencsw.org (Peter Bonivart) Date: Sat, 5 Feb 2011 20:41:44 +0100 Subject: [csw-devel] SF.net SVN: gar:[13195] csw/mgar/pkg/pkgutil/trunk/Makefile In-Reply-To: References: Message-ID: 2011/2/5 Maciej Blizi?ski : >> pkgutil: CSWpmstringapprox not installed on build servers > > Checkpkg no longer cares about build servers when checking. ?It only > checks packages against the catalog. ?I'm not sure why was it reported > as unknown, but it most probably wasn't related to installation status > on the buildfarm. Good catch! :-) I run an old version of checkpkg for pkgutil so I can still build on Solaris 8 servers. /peter From wahwah at users.sourceforge.net Sun Feb 6 01:41:24 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sun, 06 Feb 2011 00:41:24 +0000 Subject: [csw-devel] SF.net SVN: gar:[13208] csw/mgar/pkg/libffi/trunk/Makefile Message-ID: Revision: 13208 http://gar.svn.sourceforge.net/gar/?rev=13208&view=rev Author: wahwah Date: 2011-02-06 00:41:24 +0000 (Sun, 06 Feb 2011) Log Message: ----------- libffi: Update to 3.0.9 Also: - Removes a conflict with CSWgcc3javart (libffi.so) - Moves libffi.so.5 to a specific package - Adds a patch which allows to compile _ctypes in Python Modified Paths: -------------- csw/mgar/pkg/libffi/trunk/Makefile Property Changed: ---------------- csw/mgar/pkg/libffi/trunk/Makefile Modified: csw/mgar/pkg/libffi/trunk/Makefile =================================================================== --- csw/mgar/pkg/libffi/trunk/Makefile 2011-02-05 19:40:44 UTC (rev 13207) +++ csw/mgar/pkg/libffi/trunk/Makefile 2011-02-06 00:41:24 UTC (rev 13208) @@ -1,3 +1,5 @@ +# $Id$ + NAME = libffi VERSION = 3.0.9 CATEGORIES = lib @@ -26,20 +28,33 @@ # originally for icc, but at least get the stuff to compile PATCHFILES += ffi64.c.patch -PACKAGES = CSWlibffi CSWlibffidevel +PACKAGES += CSWlibffi CATALOGNAME_CSWlibffi = libffi -CATALOGNAME_CSWlibffidevel = libffi_devel -SPKG_DESC_CSWlibffi = $(DESCRIPTION) -SPKG_DESC_CSWlibffidevel = $(DESCRIPTION) - developer package +SPKG_DESC_CSWlibffi = Empty transitional package +ARCHALL_CSWlibffi = 1 +# Backward compatibility ensured via a dependency +RUNTIME_DEP_PKGS_CSWlibffi += CSWlibffi5 +CHECKPKG_OVERRIDES_CSWlibffi += surplus-dependency|CSWlibffi5 -PKGFILES_CSWlibffidevel += $(PKGFILES_DEVEL) -PKGFILES_CSWlibffidevel += $(libdir)/.*/include/.* +PACKAGES += CSWlibffi-dev +CATALOGNAME_CSWlibffi-dev = libffi_dev +SPKG_DESC_CSWlibffi-dev = $(DESCRIPTION) - developer package +RUNTIME_DEP_PKGS_CSWlibffi-dev += CSWlibffi5 +PKGFILES_CSWlibffi-dev += $(PKGFILES_DEVEL) +PKGFILES_CSWlibffi-dev += $(libdir)/(.*/)?ffi/libffi\.so +PKGFILES_CSWlibffi-dev += $(libdir)/.*/include/.* +PKGFILES_CSWlibffi-dev += $(datadir)/.* -LICENSE = LICENSE +# An empty stub to let checkpkg know about the rename +PACKAGES += CSWlibffidevel +SPKG_DESC_CSWlibffidevel = A stub package, do not release +PKGFILES_CSWlibffidevel = NOFILES -RUNTIME_DEP_PKGS_CSWlibffidevel += CSWlibffi +PACKAGES += CSWlibffi5 +SPKG_DESC_CSWlibffi5 = $(DESCRIPTION) - libffi.so.5 +PKGFILES_CSWlibffi5 += .*/libffi\.so\.5.* -CHECKPKG_OVERRIDES_CSWlibffidevel += surplus-dependency|CSWlibffi +LICENSE = LICENSE UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz @@ -67,3 +82,9 @@ aclocal; \ automake) $(MAKECOOKIE) + +post-install-modulated: + rm $(DESTDIR)$(libdir)/libffi.so + ginstall -m 755 -d $(DESTDIR)$(libdir)/ffi + ln -s ../libffi.so.5.0.10 $(DESTDIR)$(libdir)/ffi/libffi.so + @$(MAKECOOKIE) Property changes on: csw/mgar/pkg/libffi/trunk/Makefile ___________________________________________________________________ Added: svn:keywords + Id This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From hson at users.sourceforge.net Sun Feb 6 04:50:19 2011 From: hson at users.sourceforge.net (hson at users.sourceforge.net) Date: Sun, 06 Feb 2011 03:50:19 +0000 Subject: [csw-devel] SF.net SVN: gar:[13209] csw/mgar/pkg/wireshark/trunk Message-ID: Revision: 13209 http://gar.svn.sourceforge.net/gar/?rev=13209&view=rev Author: hson Date: 2011-02-06 03:50:19 +0000 (Sun, 06 Feb 2011) Log Message: ----------- wireshark: Update to 1.4.3 Modified Paths: -------------- csw/mgar/pkg/wireshark/trunk/Makefile csw/mgar/pkg/wireshark/trunk/checksums Modified: csw/mgar/pkg/wireshark/trunk/Makefile =================================================================== --- csw/mgar/pkg/wireshark/trunk/Makefile 2011-02-06 00:41:24 UTC (rev 13208) +++ csw/mgar/pkg/wireshark/trunk/Makefile 2011-02-06 03:50:19 UTC (rev 13209) @@ -1,5 +1,5 @@ NAME = wireshark -VERSION = 1.4.0 +VERSION = 1.4.3 CATEGORIES = apps DESCRIPTION = Wireshark (was Ethereal) is a free network protocol analyzer Modified: csw/mgar/pkg/wireshark/trunk/checksums =================================================================== --- csw/mgar/pkg/wireshark/trunk/checksums 2011-02-06 00:41:24 UTC (rev 13208) +++ csw/mgar/pkg/wireshark/trunk/checksums 2011-02-06 03:50:19 UTC (rev 13209) @@ -1 +1 @@ -13b188baea23cdad40b7a55921384a77 wireshark-1.4.0.tar.bz2 +ac3dcc8c128c38d9ef3d9c93d1dec83e wireshark-1.4.3.tar.bz2 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sun Feb 6 10:48:14 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sun, 06 Feb 2011 09:48:14 +0000 Subject: [csw-devel] SF.net SVN: gar:[13210] csw/mgar/pkg/libffi/trunk/Makefile Message-ID: Revision: 13210 http://gar.svn.sourceforge.net/gar/?rev=13210&view=rev Author: wahwah Date: 2011-02-06 09:48:14 +0000 (Sun, 06 Feb 2011) Log Message: ----------- libffi: Header files moved to /opt/csw/include Modified Paths: -------------- csw/mgar/pkg/libffi/trunk/Makefile Modified: csw/mgar/pkg/libffi/trunk/Makefile =================================================================== --- csw/mgar/pkg/libffi/trunk/Makefile 2011-02-06 03:50:19 UTC (rev 13209) +++ csw/mgar/pkg/libffi/trunk/Makefile 2011-02-06 09:48:14 UTC (rev 13210) @@ -87,4 +87,11 @@ rm $(DESTDIR)$(libdir)/libffi.so ginstall -m 755 -d $(DESTDIR)$(libdir)/ffi ln -s ../libffi.so.5.0.10 $(DESTDIR)$(libdir)/ffi/libffi.so + ginstall -d -m 755 $(DESTDIR)$(includedir) + # By default, libffi installer puts include files into a subdirectory under + # /opt/csw/lib, which makes the header files hard to find. We're moving + # them to /opt/csw/include. + gmv -v $(DESTDIR)$(libdir)/$(NAME)-$(VERSION)/include/* $(DESTDIR)$(includedir) + rmdir $(DESTDIR)$(libdir)/$(NAME)-$(VERSION)/include + rmdir $(DESTDIR)$(libdir)/$(NAME)-$(VERSION) @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From maciej at opencsw.org Sun Feb 6 11:02:03 2011 From: maciej at opencsw.org (=?UTF-8?Q?Maciej_Blizi=C5=84ski?=) Date: Sun, 6 Feb 2011 10:02:03 +0000 Subject: [csw-devel] SF.net SVN: gar:[13183] csw/mgar/pkg/dialog/trunk/Makefile In-Reply-To: References: Message-ID: 2011/2/3 : > Revision: 13183 > ? ? ? ? ?http://gar.svn.sourceforge.net/gar/?rev=13183&view=rev > Author: ? bonivart > Date: ? ? 2011-02-03 17:46:56 +0000 (Thu, 03 Feb 2011) > > Log Message: > ----------- > dialog: use ncurses > > Modified Paths: > -------------- > ? ?csw/mgar/pkg/dialog/trunk/Makefile > > Modified: csw/mgar/pkg/dialog/trunk/Makefile > =================================================================== > --- csw/mgar/pkg/dialog/trunk/Makefile ?2011-02-03 16:56:22 UTC (rev 13182) > +++ csw/mgar/pkg/dialog/trunk/Makefile ?2011-02-03 17:46:56 UTC (rev 13183) > @@ -14,12 +14,15 @@ > ?MASTER_SITES = http://invisible-island.net/datafiles/release/ > ?DISTFILES = $(NAME).tar.gz > > +RUNTIME_DEP_PKGS += CSWncurses I think this is both a runtime and build time dependency, so you can say: DEP_PKGS += CSWncurses From bonivart at opencsw.org Sun Feb 6 12:08:11 2011 From: bonivart at opencsw.org (Peter Bonivart) Date: Sun, 6 Feb 2011 12:08:11 +0100 Subject: [csw-devel] SF.net SVN: gar:[13183] csw/mgar/pkg/dialog/trunk/Makefile In-Reply-To: References: Message-ID: 2011/2/6 Maciej Blizi?ski : >> +RUNTIME_DEP_PKGS += CSWncurses > > I think this is both a runtime and build time dependency, so you can say: > > DEP_PKGS += CSWncurses I didn't know I could do that, I use this page as reference: http://sourceforge.net/apps/trac/gar/wiki/GAR%20Variable%20Reference /peter From maciej at opencsw.org Sun Feb 6 12:32:05 2011 From: maciej at opencsw.org (=?UTF-8?Q?Maciej_Blizi=C5=84ski?=) Date: Sun, 6 Feb 2011 11:32:05 +0000 Subject: [csw-devel] SF.net SVN: gar:[13183] csw/mgar/pkg/dialog/trunk/Makefile In-Reply-To: References: Message-ID: 2011/2/6 Peter Bonivart : > 2011/2/6 Maciej Blizi?ski : >>> +RUNTIME_DEP_PKGS += CSWncurses >> >> I think this is both a runtime and build time dependency, so you can say: >> >> DEP_PKGS += CSWncurses > > I didn't know I could do that, I use this page as reference: > > http://sourceforge.net/apps/trac/gar/wiki/GAR%20Variable%20Reference I added DEP_PKGS to the wiki page. I know about this variable from Dago directly, perhaps it was not documented. From maciej at opencsw.org Sun Feb 6 13:26:44 2011 From: maciej at opencsw.org (=?UTF-8?Q?Maciej_Blizi=C5=84ski?=) Date: Sun, 6 Feb 2011 12:26:44 +0000 Subject: [csw-devel] SF.net SVN: gar:[13141] csw/mgar/pkg/gettext/trunk/Makefile In-Reply-To: References: Message-ID: 2011/1/30 : > Revision: 13141 > ? ? ? ? ?http://gar.svn.sourceforge.net/gar/?rev=13141&view=rev > Author: ? bdwalton > Date: ? ? 2011-01-30 23:27:40 +0000 (Sun, 30 Jan 2011) > > Log Message: > ----------- > gettext/trunk: cleanup more usr/{share,local} references in bindir, etc > > Modified Paths: > -------------- > ? ?csw/mgar/pkg/gettext/trunk/Makefile > > Modified: csw/mgar/pkg/gettext/trunk/Makefile > =================================================================== > --- csw/mgar/pkg/gettext/trunk/Makefile 2011-01-30 23:04:27 UTC (rev 13140) > +++ csw/mgar/pkg/gettext/trunk/Makefile 2011-01-30 23:27:40 UTC (rev 13141) > @@ -231,8 +231,13 @@ > ? ? ? ?$(MAKECOOKIE) > > ?post-merge: > - ? ? ? @(cd $(PKGROOT)$(docdir); \ > - ? ? ? ? ? ? ? find . -type f -print0 | \ > + ? ? ? @(cd $(PKGROOT); \ > + ? ? ? ? ? ? ? find .$(docdir) .$(datadir)/aclocal -type f -print0 | \ > ? ? ? ? ? ? ? ?xargs -0 perl -pi \ > ? ? ? ? ? ? ? ? ? ? ? ?-e "s#/usr/share#/opt/csw/share#g;" \ > - ? ? ? ? ? ? ? ? ? ? ? -e "s#/usr/local#/opt/csw#g;") > + ? ? ? ? ? ? ? ? ? ? ? -e "s#/usr/local#/opt/csw#g;"; \ > + ? ? ? ? ? ? ? perl -pi \ > + ? ? ? ? ? ? ? ? ? ? ? -e "s#/usr/share#/opt/csw/share#g;" \ > + ? ? ? ? ? ? ? ? ? ? ? -e "s#/usr/local#/opt/csw#g;" \ > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? .$(bindir)/ggettextize \ > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? .$(infodir)/gettext.info; ) Could we make it a GAR default? From bonivart at users.sourceforge.net Sun Feb 6 14:04:38 2011 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Sun, 06 Feb 2011 13:04:38 +0000 Subject: [csw-devel] SF.net SVN: gar:[13211] csw/mgar/pkg/geolitedb/trunk Message-ID: Revision: 13211 http://gar.svn.sourceforge.net/gar/?rev=13211&view=rev Author: bonivart Date: 2011-02-06 13:04:37 +0000 (Sun, 06 Feb 2011) Log Message: ----------- geolitedb: update to 110201 Modified Paths: -------------- csw/mgar/pkg/geolitedb/trunk/Makefile csw/mgar/pkg/geolitedb/trunk/checksums Modified: csw/mgar/pkg/geolitedb/trunk/Makefile =================================================================== --- csw/mgar/pkg/geolitedb/trunk/Makefile 2011-02-06 09:48:14 UTC (rev 13210) +++ csw/mgar/pkg/geolitedb/trunk/Makefile 2011-02-06 13:04:37 UTC (rev 13211) @@ -1,5 +1,5 @@ NAME = geolitedb -VERSION = 100302 +VERSION = 110201 CATEGORIES = net DESCRIPTION = Geolite country database Modified: csw/mgar/pkg/geolitedb/trunk/checksums =================================================================== --- csw/mgar/pkg/geolitedb/trunk/checksums 2011-02-06 09:48:14 UTC (rev 13210) +++ csw/mgar/pkg/geolitedb/trunk/checksums 2011-02-06 13:04:37 UTC (rev 13211) @@ -1,2 +1 @@ -ed834df1fb6cb5056f5310b98fc71811 COPYING -9096cf88a707dea9b8063b5abab60dbb GeoIP.dat.gz +f14f4b37ed5db77409cd1051468c79fd GeoIP.dat.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bwalton at opencsw.org Sun Feb 6 14:37:01 2011 From: bwalton at opencsw.org (Ben Walton) Date: Sun, 06 Feb 2011 08:37:01 -0500 Subject: [csw-devel] SF.net SVN: gar:[13141] csw/mgar/pkg/gettext/trunk/Makefile In-Reply-To: References: Message-ID: <1296999317-sup-5878@pinkfloyd.chass.utoronto.ca> Excerpts from Maciej Blizi?ski's message of Sun Feb 06 07:26:44 -0500 2011: > > ?post-merge: > > - ? ? ? @(cd $(PKGROOT)$(docdir); \ > > - ? ? ? ? ? ? ? find . -type f -print0 | \ > > + ? ? ? @(cd $(PKGROOT); \ > > + ? ? ? ? ? ? ? find .$(docdir) .$(datadir)/aclocal -type f -print0 | \ > > ? ? ? ? ? ? ? ?xargs -0 perl -pi \ > > ? ? ? ? ? ? ? ? ? ? ? ?-e "s#/usr/share#/opt/csw/share#g;" \ > > - ? ? ? ? ? ? ? ? ? ? ? -e "s#/usr/local#/opt/csw#g;") > > + ? ? ? ? ? ? ? ? ? ? ? -e "s#/usr/local#/opt/csw#g;"; \ > > + ? ? ? ? ? ? ? perl -pi \ > > + ? ? ? ? ? ? ? ? ? ? ? -e "s#/usr/share#/opt/csw/share#g;" \ > > + ? ? ? ? ? ? ? ? ? ? ? -e "s#/usr/local#/opt/csw#g;" \ > > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? .$(bindir)/ggettextize \ > > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? .$(infodir)/gettext.info; ) > > Could we make it a GAR default? I think it would be ok. I wouldn't want this for $(bindir) and a few other locations, but we could likely make this rule apply on $(datadir) without issues. Dago? Thanks -Ben -- Ben Walton Systems Programmer - CHASS University of Toronto C:416.407.5610 | W:416.978.4302 From bonivart at users.sourceforge.net Sun Feb 6 14:40:28 2011 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Sun, 06 Feb 2011 13:40:28 +0000 Subject: [csw-devel] SF.net SVN: gar:[13212] csw/mgar/pkg/cpan/Geo-IP-PurePerl/trunk Message-ID: Revision: 13212 http://gar.svn.sourceforge.net/gar/?rev=13212&view=rev Author: bonivart Date: 2011-02-06 13:40:27 +0000 (Sun, 06 Feb 2011) Log Message: ----------- pm_geoippureperl: update to 1.25 Modified Paths: -------------- csw/mgar/pkg/cpan/Geo-IP-PurePerl/trunk/Makefile csw/mgar/pkg/cpan/Geo-IP-PurePerl/trunk/checksums Removed Paths: ------------- csw/mgar/pkg/cpan/Geo-IP-PurePerl/trunk/files/CSWpmgeoippureperl.gspec Modified: csw/mgar/pkg/cpan/Geo-IP-PurePerl/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Geo-IP-PurePerl/trunk/Makefile 2011-02-06 13:04:37 UTC (rev 13211) +++ csw/mgar/pkg/cpan/Geo-IP-PurePerl/trunk/Makefile 2011-02-06 13:40:27 UTC (rev 13212) @@ -1,24 +1,27 @@ NAME = Geo-IP-PurePerl -VERSION = 1.23 +VERSION = 1.25 CATEGORIES = cpan AUTHOR = BORISZ DESCRIPTION = Look up country by IP Address define BLURB - This Perl module enables the user to find geographical and network information of - an IP address. This is the Pure Perl version. There is also a faster implementation, - Geo::IP which is a XS wrapper around the GeoIP C library, available from CPAN + This Perl module enables the user to find geographical and network + information of an IP address. This is the Pure Perl version. There + is also a faster implementation, Geo::IP which is a XS wrapper + around the GeoIP C library, available from CPAN endef DISTFILES = $(NAME)-$(VERSION).tar.gz -DISTFILES += $(call admfiles,CSWpmgeoippureperl,) -# We define upstream file regex so we can be notifed of new upstream software release +PACKAGES = CSWpmgeoippureperl +CATALOGNAME = pm_geoippureperl +ARCHALL = 1 + UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz RUNTIME_DEP_PKGS = CSWgeolitedb -EXTRA_MERGE_EXCLUDE_FILES = .*~ .*perllocal\.pod +CHECKPKG_OVERRIDES_CSWpmgeoippureperl += file-with-bad-content|/usr/local|root/opt/csw/share/perl/csw/Geo/IP/PurePerl.pm include gar/category.mk @@ -27,4 +30,7 @@ @( cd $(WORKSRC)/lib/Geo/IP ; \ sed 's/\/usr\/local\/share\/GeoIP\/GeoIP.dat/\/opt\/csw\/share\/GeoIP\/GeoIP.dat/' PurePerl.pm > tmp.sed ; \ mv tmp.sed PurePerl.pm ) + @( cd $(WORKSRC) ; \ + sed 's/\/usr\/local\/share\/GeoIP\/GeoIP.dat/\/opt\/csw\/share\/GeoIP\/GeoIP.dat/' geoip-lookup > tmp.sed ; \ + mv tmp.sed geoip-lookup ) @$(MAKECOOKIE) Modified: csw/mgar/pkg/cpan/Geo-IP-PurePerl/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/Geo-IP-PurePerl/trunk/checksums 2011-02-06 13:04:37 UTC (rev 13211) +++ csw/mgar/pkg/cpan/Geo-IP-PurePerl/trunk/checksums 2011-02-06 13:40:27 UTC (rev 13212) @@ -1,3 +1 @@ -fad130a33f98ff04aed6a5c9c64e45c9 download/Geo-IP-PurePerl-1.23.tar.gz -c0c93e9c654e4af6a01ecd3da4d036ef download/CSWpmgeoippureperl.gspec -fad130a33f98ff04aed6a5c9c64e45c9 download/Geo-IP-PurePerl-1.23.tar.gz +a47a1b71f7cd7c46cca9efcc448e0726 Geo-IP-PurePerl-1.25.tar.gz Deleted: csw/mgar/pkg/cpan/Geo-IP-PurePerl/trunk/files/CSWpmgeoippureperl.gspec =================================================================== --- csw/mgar/pkg/cpan/Geo-IP-PurePerl/trunk/files/CSWpmgeoippureperl.gspec 2011-02-06 13:04:37 UTC (rev 13211) +++ csw/mgar/pkg/cpan/Geo-IP-PurePerl/trunk/files/CSWpmgeoippureperl.gspec 2011-02-06 13:40:27 UTC (rev 13212) @@ -1,10 +0,0 @@ -%var bitname pm_geoippureperl -%var pkgname CSWpmgeoippureperl -%var arch all -%include url file://%{PKGLIB}/csw_cpan.gspec -%copyright - -Copyright (c) 2007, MaxMind LLC - -All rights reserved. This package is free software and is licensed under the GPL. -For details, see the COPYING file. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From maciej at opencsw.org Sun Feb 6 14:52:02 2011 From: maciej at opencsw.org (=?UTF-8?Q?Maciej_Blizi=C5=84ski?=) Date: Sun, 6 Feb 2011 13:52:02 +0000 Subject: [csw-devel] SF.net SVN: gar:[13141] csw/mgar/pkg/gettext/trunk/Makefile In-Reply-To: <1296999317-sup-5878@pinkfloyd.chass.utoronto.ca> References: <1296999317-sup-5878@pinkfloyd.chass.utoronto.ca> Message-ID: 2011/2/6 Ben Walton : > I think it would be ok. ?I wouldn't want this for $(bindir) and a few > other locations, but we could likely make this rule apply on > $(datadir) without issues. I can imagine a failure mode with libmagic: /opt/csw/share/misc/magic.mgc contains what Must Not Be Pronounced, and transforming it could lead to issues. Perhaps we should only change text files? From bonivart at users.sourceforge.net Sun Feb 6 14:58:49 2011 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Sun, 06 Feb 2011 13:58:49 +0000 Subject: [csw-devel] SF.net SVN: gar:[13213] csw/mgar/pkg/cpan Message-ID: Revision: 13213 http://gar.svn.sourceforge.net/gar/?rev=13213&view=rev Author: bonivart Date: 2011-02-06 13:58:49 +0000 (Sun, 06 Feb 2011) Log Message: ----------- pm_geoip: initial commit, does not build Added Paths: ----------- csw/mgar/pkg/cpan/Geo-IP/ csw/mgar/pkg/cpan/Geo-IP/branches/ csw/mgar/pkg/cpan/Geo-IP/tags/ csw/mgar/pkg/cpan/Geo-IP/trunk/ csw/mgar/pkg/cpan/Geo-IP/trunk/Makefile csw/mgar/pkg/cpan/Geo-IP/trunk/checksums csw/mgar/pkg/cpan/Geo-IP/trunk/files/ Property changes on: csw/mgar/pkg/cpan/Geo-IP/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/cpan/Geo-IP/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Geo-IP/trunk/Makefile (rev 0) +++ csw/mgar/pkg/cpan/Geo-IP/trunk/Makefile 2011-02-06 13:58:49 UTC (rev 13213) @@ -0,0 +1,21 @@ +NAME = Geo-IP +VERSION = 1.38 +CATEGORIES = cpan +AUTHOR = BORISZ + +DESCRIPTION = Look up location and network information by IP Address +define BLURB + This Perl module enables the user to find geographical and network + information of an IP address. +endef + +DISTFILES = $(NAME)-$(VERSION).tar.gz + +PACKAGES = CSWpmgeoip +CATALOGNAME = pm_geoip + +UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz + +RUNTIME_DEP_PKGS = CSWgeolitedb + +include gar/category.mk Added: csw/mgar/pkg/cpan/Geo-IP/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/Geo-IP/trunk/checksums (rev 0) +++ csw/mgar/pkg/cpan/Geo-IP/trunk/checksums 2011-02-06 13:58:49 UTC (rev 13213) @@ -0,0 +1 @@ +22ab07f98c79b316062881ed72cdc3c6 Geo-IP-1.38.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bwalton at opencsw.org Sun Feb 6 15:07:29 2011 From: bwalton at opencsw.org (Ben Walton) Date: Sun, 06 Feb 2011 09:07:29 -0500 Subject: [csw-devel] SF.net SVN: gar:[13141] csw/mgar/pkg/gettext/trunk/Makefile In-Reply-To: References: <1296999317-sup-5878@pinkfloyd.chass.utoronto.ca> Message-ID: <2ee5dfcd-740f-40ab-a360-fedacfe0a00c@email.android.com> That would require an external script with some mime smarts of it's own...it's a good point though. Thanks -Ben "Maciej Blizi?ski" wrote: 2011/2/6 Ben Walton : > I think it would be ok. I wouldn't want this for $(bindir) and a few > other locations, but we could likely make this rule apply on > $(datadir) without issues. I can imagine a failure mode with libmagic: /opt/csw/share/misc/magic.mgc contains what Must Not Be Pronounced, and transforming it could lead to issues. Perhaps we should only change text files? -------------- next part -------------- An HTML attachment was scrubbed... URL: From maciej at opencsw.org Sun Feb 6 15:27:34 2011 From: maciej at opencsw.org (=?UTF-8?Q?Maciej_Blizi=C5=84ski?=) Date: Sun, 6 Feb 2011 14:27:34 +0000 Subject: [csw-devel] SF.net SVN: gar:[13141] csw/mgar/pkg/gettext/trunk/Makefile In-Reply-To: <2ee5dfcd-740f-40ab-a360-fedacfe0a00c@email.android.com> References: <1296999317-sup-5878@pinkfloyd.chass.utoronto.ca> <2ee5dfcd-740f-40ab-a360-fedacfe0a00c@email.android.com> Message-ID: 2011/2/6 Ben Walton : > That would require an external script with some mime smarts of it's > own...it's a good point though. Reminds of openssh, doesn't it? By the way, I am currently re-indexing our catalog to see what's the scale of the /usr/{local,share} issue. Maciej From bwalton at opencsw.org Sun Feb 6 15:49:22 2011 From: bwalton at opencsw.org (Ben Walton) Date: Sun, 06 Feb 2011 09:49:22 -0500 Subject: [csw-devel] SF.net SVN: gar:[13141] csw/mgar/pkg/gettext/trunk/Makefile In-Reply-To: References: <1296999317-sup-5878@pinkfloyd.chass.utoronto.ca> <2ee5dfcd-740f-40ab-a360-fedacfe0a00c@email.android.com> Message-ID: <1297003720-sup-7959@pinkfloyd.chass.utoronto.ca> Excerpts from Maciej Blizi?ski's message of Sun Feb 06 09:27:34 -0500 2011: > 2011/2/6 Ben Walton : > > That would require an external script with some mime smarts of it's > > own...it's a good point though. > > Reminds of openssh, doesn't it? I don't follow here. > By the way, I am currently re-indexing our catalog to see what's the > scale of the /usr/{local,share} issue. Excellent. Always good to have quantitative info here. I imagine that the number is quite high... Thanks -Ben -- Ben Walton Systems Programmer - CHASS University of Toronto C:416.407.5610 | W:416.978.4302 From maciej at opencsw.org Sun Feb 6 15:56:34 2011 From: maciej at opencsw.org (=?UTF-8?Q?Maciej_Blizi=C5=84ski?=) Date: Sun, 6 Feb 2011 14:56:34 +0000 Subject: [csw-devel] SF.net SVN: gar:[13141] csw/mgar/pkg/gettext/trunk/Makefile In-Reply-To: <1297003720-sup-7959@pinkfloyd.chass.utoronto.ca> References: <1296999317-sup-5878@pinkfloyd.chass.utoronto.ca> <2ee5dfcd-740f-40ab-a360-fedacfe0a00c@email.android.com> <1297003720-sup-7959@pinkfloyd.chass.utoronto.ca> Message-ID: 2011/2/6 Ben Walton : > Excerpts from Maciej Blizi?ski's message of Sun Feb 06 09:27:34 -0500 2011: >> 2011/2/6 Ben Walton : >> > That would require an external script with some mime smarts of it's >> > own...it's a good point though. >> >> Reminds of openssh, doesn't it? > > I don't follow here. Um, I meant openssl[1]. We are dealing with a similar situation: while tackling a relatively low-impact issue of /usr/local, we look into solutions that might fix our trivial issue, but may break actual functionality of some of our packages. [1] http://www.debian.org/security/2008/dsa-1571 From maciej at opencsw.org Sun Feb 6 16:13:40 2011 From: maciej at opencsw.org (Maciej Blizinski) Date: Sun, 6 Feb 2011 16:13:40 +0100 Subject: [csw-devel] [POLICY] mGAR v2: Use git add -p during makepatch Message-ID: <1297005220-21029-1-git-send-email-maciej@opencsw.org> This allows to create a series of patches from a single editing session. --- gar/v2/gar.mk | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/gar/v2/gar.mk b/gar/v2/gar.mk index 26ab578..c9cca43 100644 --- a/gar/v2/gar.mk +++ b/gar/v2/gar.mk @@ -490,7 +490,7 @@ makepatch-modulated: $(FILEDIR) @( if [ -d "$(WORKSRC)/.git" ]; then \ echo " ==> Makepatch: Looking for changes in modulation $(MODULATION)"; \ cd $(WORKSRC); \ - git add -u; \ + git add -u -p; \ git diff --cached --quiet; \ if test $$? -eq 0; then \ echo "No changes."; \ -- 1.7.3.2 From maciej at opencsw.org Sun Feb 6 16:17:12 2011 From: maciej at opencsw.org (Maciej Blizinski) Date: Sun, 6 Feb 2011 16:17:12 +0100 Subject: [csw-devel] [PATCH] mGAR v2: Use git add -p during makepatch Message-ID: <1297005432-22670-1-git-send-email-maciej@opencsw.org> This allows to create a series of patches from a single editing session. --- gar/v2/gar.mk | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/gar/v2/gar.mk b/gar/v2/gar.mk index 26ab578..c9cca43 100644 --- a/gar/v2/gar.mk +++ b/gar/v2/gar.mk @@ -490,7 +490,7 @@ makepatch-modulated: $(FILEDIR) @( if [ -d "$(WORKSRC)/.git" ]; then \ echo " ==> Makepatch: Looking for changes in modulation $(MODULATION)"; \ cd $(WORKSRC); \ - git add -u; \ + git add -u -p; \ git diff --cached --quiet; \ if test $$? -eq 0; then \ echo "No changes."; \ -- 1.7.3.2 From maciej at opencsw.org Sun Feb 6 16:19:44 2011 From: maciej at opencsw.org (=?UTF-8?Q?Maciej_Blizi=C5=84ski?=) Date: Sun, 6 Feb 2011 15:19:44 +0000 Subject: [csw-devel] [PATCH] mGAR v2: Use git add -p during makepatch In-Reply-To: <1297005432-22670-1-git-send-email-maciej@opencsw.org> References: <1297005432-22670-1-git-send-email-maciej@opencsw.org> Message-ID: I'm still learning to harness git send-email. Turns out that some of the options from git format-patch can be used with git send-email. From bwalton at opencsw.org Sun Feb 6 16:39:32 2011 From: bwalton at opencsw.org (Ben Walton) Date: Sun, 06 Feb 2011 10:39:32 -0500 Subject: [csw-devel] [POLICY] mGAR v2: Use git add -p during makepatch In-Reply-To: <1297005220-21029-1-git-send-email-maciej@opencsw.org> References: <1297005220-21029-1-git-send-email-maciej@opencsw.org> Message-ID: I like this patch, but we'll want to let people know about it and give a quick intro on howe to use it. Thanks -Ben Maciej Blizinski wrote: This allows to create a series of patches from a single editing session. --- gar/v2/gar.mk | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/gar/v2/gar.mk b/gar/v2/gar.mk index 26ab578..c9cca43 100644 --- a/gar/v2/gar.mk +++ b/gar/v2/gar.mk @@ -490,7 +490,7 @@ makepatch-modulated: $(FILEDIR) @( if [ -d "$(WORKSRC)/.git" ]; then \ echo " ==> Makepatch: Looking for changes in modulation $(MODULATION)"; \ cd $(WORKSRC); \ - git add -u; \ + git add -u -p; \ git diff --cached --quiet; \ if test $$? -eq 0; then \ echo "No changes."; \ -- 1.7.3.2 -------------- next part -------------- An HTML attachment was scrubbed... URL: From bwalton at opencsw.org Sun Feb 6 16:44:16 2011 From: bwalton at opencsw.org (Ben Walton) Date: Sun, 06 Feb 2011 10:44:16 -0500 Subject: [csw-devel] [POLICY] mGAR v2: Use git add -p during makepatch In-Reply-To: <1297005220-21029-1-git-send-email-maciej@opencsw.org> References: <1297005220-21029-1-git-send-email-maciej@opencsw.org> Message-ID: <9d6d24c5-b42f-4c5e-884a-ad44736c8ac3@email.android.com> ...it does require multiple invocations of makepatch though. Maciej Blizinski wrote: This allows to create a series of patches from a single editing session. --- gar/v2/gar.mk | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/gar/v2/gar.mk b/gar/v2/gar.mk index 26ab578..c9cca43 100644 --- a/gar/v2/gar.mk +++ b/gar/v2/gar.mk @@ -490,7 +490,7 @@ makepatch-modulated: $(FILEDIR) @( if [ -d "$(WORKSRC)/.git" ]; then \ echo " ==> Makepatch: Looking for changes in modulation $(MODULATION)"; \ cd $(WORKSRC); \ - git add -u; \ + git add -u -p; \ git diff --cached --quiet; \ if test $$? -eq 0; then \ echo "No changes."; \ -- 1.7.3.2 -------------- next part -------------- An HTML attachment was scrubbed... URL: From maciej at opencsw.org Sun Feb 6 17:36:52 2011 From: maciej at opencsw.org (=?UTF-8?Q?Maciej_Blizi=C5=84ski?=) Date: Sun, 6 Feb 2011 16:36:52 +0000 Subject: [csw-devel] [POLICY] mGAR v2: Use git add -p during makepatch In-Reply-To: <9d6d24c5-b42f-4c5e-884a-ad44736c8ac3@email.android.com> References: <1297005220-21029-1-git-send-email-maciej@opencsw.org> <9d6d24c5-b42f-4c5e-884a-ad44736c8ac3@email.android.com> Message-ID: 2011/2/6 Ben Walton : > ...it does require multiple invocations of makepatch though. Yes. There might also be a problem with use: mgar makepatch result: 0001-... mgar makepatch result: 0002-... 0003-... mgar makepatch result: 0004-... 0005-... 0006-... I'll need to test it some more. From bonivart at users.sourceforge.net Sun Feb 6 18:45:20 2011 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Sun, 06 Feb 2011 17:45:20 +0000 Subject: [csw-devel] SF.net SVN: gar:[13214] csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk Message-ID: Revision: 13214 http://gar.svn.sourceforge.net/gar/?rev=13214&view=rev Author: bonivart Date: 2011-02-06 17:45:20 +0000 (Sun, 06 Feb 2011) Log Message: ----------- pm_cgispeedycgi: update Makefile, does not build Modified Paths: -------------- csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/Makefile csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/checksums Removed Paths: ------------- csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/files/CSWpmspeedycgi.gspec Modified: csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/Makefile 2011-02-06 13:58:49 UTC (rev 13213) +++ csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/Makefile 2011-02-06 17:45:20 UTC (rev 13214) @@ -9,7 +9,8 @@ much more quickly. endef -DISTFILES += CSWpmspeedycgi.gspec +PACKAGES = CSWpmspeedycgi +CATALOGNAME = pm_speedycgi # Don't build the apache/apache2 modules PATCHFILES += build.diff Modified: csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/checksums 2011-02-06 13:58:49 UTC (rev 13213) +++ csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/checksums 2011-02-06 17:45:20 UTC (rev 13214) @@ -1,3 +1 @@ -61c16ad3604a4feb3ac85389f77ca229 download/CSWpmspeedycgi.gspec -2f80df78874e3efa80f180923c4967a1 download/CGI-SpeedyCGI-2.22.tar.gz -a5700ed65dcc3b2d8bb6f45c0b8d512b download/build.diff +2f80df78874e3efa80f180923c4967a1 CGI-SpeedyCGI-2.22.tar.gz Deleted: csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/files/CSWpmspeedycgi.gspec =================================================================== --- csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/files/CSWpmspeedycgi.gspec 2011-02-06 13:58:49 UTC (rev 13213) +++ csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/files/CSWpmspeedycgi.gspec 2011-02-06 17:45:20 UTC (rev 13214) @@ -1,22 +0,0 @@ -%var bitname pm_speedycgi -%var pkgname CSWpmspeedycgi -%include url file://%{PKGLIB}/csw_cpan.gspec -%copyright -Copyright (C) 2003 Sam Horrocks - -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 2 of the License, or (at your -option) any later version. - -This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Genera -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., -59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - -This product includes software developed by the Apache Software -Foundation (http://www.apache.org/). This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Sun Feb 6 22:55:41 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sun, 06 Feb 2011 21:55:41 +0000 Subject: [csw-devel] SF.net SVN: gar:[13215] csw/mgar/pkg/dialog/trunk/Makefile Message-ID: Revision: 13215 http://gar.svn.sourceforge.net/gar/?rev=13215&view=rev Author: bdwalton Date: 2011-02-06 21:55:40 +0000 (Sun, 06 Feb 2011) Log Message: ----------- dialog/trunk: modulate the build for ncurses and legacy curses Modified Paths: -------------- csw/mgar/pkg/dialog/trunk/Makefile Modified: csw/mgar/pkg/dialog/trunk/Makefile =================================================================== --- csw/mgar/pkg/dialog/trunk/Makefile 2011-02-06 17:45:20 UTC (rev 13214) +++ csw/mgar/pkg/dialog/trunk/Makefile 2011-02-06 21:55:40 UTC (rev 13215) @@ -14,20 +14,36 @@ MASTER_SITES = http://invisible-island.net/datafiles/release/ DISTFILES = $(NAME).tar.gz -RUNTIME_DEP_PKGS += CSWncurses +EXTRA_MODULATORS = CURSES +MODULATIONS_CURSES = ncurses minimal +MERGE_SCRIPTS_isa-default-curses-ncurses = copy-all +MERGE_SCRIPTS_isa-default-curses-minimal = copy-all +PACKAGES = CSWdialog CSWdialog-minimal +SPKG_DESC_CSWdialog = A script-interpreter which provides a set of curses widgets +SPKG_DESC_CSWdialog-minimal = A script-interpreter which provides a set of curses widgets (traditional curses version) + +RUNTIME_DEP_PKGS_CSWdialog += CSWncurses + CHECKPKG_OVERRIDES_CSWdialog += file-with-bad-content CHECKPKG_OVERRIDES_CSWdialog += missing-dependency|CSWpython SKIPTEST = 1 CONFIGURE_ARGS = $(DIRPATHS) +ifeq ($(CURSES),ncurses) CONFIGURE_ARGS += --with-ncurses +endif include gar/category.mk post-install-modulated: @echo " ==> Post-install for $(NAME) (custom)" - @ginstall -d $(DESTDIR)$(docdir)/$(NAME)/samples - @cp -r $(WORKSRC)/samples $(DESTDIR)$(docdir)/$(NAME)/ + + @mv $(DESTDIR)$(bindir)/dialog $(DESTDIR)$(bindir)/dialog.$(CURSES) @$(MAKECOOKIE) + +post-merge: + @echo " ==> Post-merge for $(NAME) (custom)" + @ginstall -d $(PKGROOT)$(docdir)/$(NAME)/samples + @cp -r $(WORKSRC_FIRSTMOD)/samples $(PKGROOT)$(docdir)/$(NAME)/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Sun Feb 6 23:53:36 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sun, 06 Feb 2011 22:53:36 +0000 Subject: [csw-devel] SF.net SVN: gar:[13216] csw/mgar/pkg/dialog/trunk/Makefile Message-ID: Revision: 13216 http://gar.svn.sourceforge.net/gar/?rev=13216&view=rev Author: bdwalton Date: 2011-02-06 22:53:36 +0000 (Sun, 06 Feb 2011) Log Message: ----------- dialog/trunk: modulate the man page so that both packages can have it Modified Paths: -------------- csw/mgar/pkg/dialog/trunk/Makefile Modified: csw/mgar/pkg/dialog/trunk/Makefile =================================================================== --- csw/mgar/pkg/dialog/trunk/Makefile 2011-02-06 21:55:40 UTC (rev 13215) +++ csw/mgar/pkg/dialog/trunk/Makefile 2011-02-06 22:53:36 UTC (rev 13216) @@ -41,6 +41,7 @@ @echo " ==> Post-install for $(NAME) (custom)" @mv $(DESTDIR)$(bindir)/dialog $(DESTDIR)$(bindir)/dialog.$(CURSES) + @mv $(DESTDIR)$(mandir)/man1/dialog.1 $(DESTDIR)$(mandir)/man1/dialog.1.$(CURSES) @$(MAKECOOKIE) post-merge: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Sun Feb 6 23:57:29 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sun, 06 Feb 2011 22:57:29 +0000 Subject: [csw-devel] SF.net SVN: gar:[13217] csw/mgar/pkg/dialog/trunk/Makefile Message-ID: Revision: 13217 http://gar.svn.sourceforge.net/gar/?rev=13217&view=rev Author: bdwalton Date: 2011-02-06 22:57:29 +0000 (Sun, 06 Feb 2011) Log Message: ----------- dialog/trunk: split the -minimal package out Modified Paths: -------------- csw/mgar/pkg/dialog/trunk/Makefile Modified: csw/mgar/pkg/dialog/trunk/Makefile =================================================================== --- csw/mgar/pkg/dialog/trunk/Makefile 2011-02-06 22:53:36 UTC (rev 13216) +++ csw/mgar/pkg/dialog/trunk/Makefile 2011-02-06 22:57:29 UTC (rev 13217) @@ -28,6 +28,8 @@ CHECKPKG_OVERRIDES_CSWdialog += file-with-bad-content CHECKPKG_OVERRIDES_CSWdialog += missing-dependency|CSWpython +PKGFILES_CSWdialog-minimal = $(bindir).*minimal $(mandir).*minimal + SKIPTEST = 1 CONFIGURE_ARGS = $(DIRPATHS) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Mon Feb 7 00:02:47 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 06 Feb 2011 23:02:47 +0000 Subject: [csw-devel] SF.net SVN: gar:[13218] csw/mgar/gar/v2-uwatch2 Message-ID: Revision: 13218 http://gar.svn.sourceforge.net/gar/?rev=13218&view=rev Author: wbonnet Date: 2011-02-06 23:02:47 +0000 (Sun, 06 Feb 2011) Log Message: ----------- Add regexp auto generation (contributed by Maciej) Modified Paths: -------------- csw/mgar/gar/v2-uwatch2/bin/uwatch csw/mgar/gar/v2-uwatch2/gar.lib.mk Modified: csw/mgar/gar/v2-uwatch2/bin/uwatch =================================================================== --- csw/mgar/gar/v2-uwatch2/bin/uwatch 2011-02-06 22:57:29 UTC (rev 13217) +++ csw/mgar/gar/v2-uwatch2/bin/uwatch 2011-02-06 23:02:47 UTC (rev 13218) @@ -1,3 +1,4 @@ +#!/usr/bin/env python2.6 #!/opt/csw/bin/python # TODO : check arguments for valid date @@ -184,7 +185,7 @@ self.optionParser = OptionParser() # Add options to parser - self.optionParser.add_option("-V", "--verbose", help="Activate verbose mode", action="store_true", dest="verbose") + self.optionParser.add_option("--verbose", help="Activate verbose mode", action="store_true", dest="verbose") self.optionParser.add_option("--current-version", help="Current package version", action="store", dest="current_version") self.optionParser.add_option("--target-location", help="Target location. This is the directory in which the branch will be created (parent of the branch directory). Default value is ../branches", action="store", dest="target_location") self.optionParser.add_option("--regexp", help="Version matching regular expression", action="store", dest="regexp") @@ -434,6 +435,17 @@ # ----------------------------------------------------------------------------------------------------------------- def getRegexp(self): + # In case the regexp is not define, we try to guess it using the distfile + if (self._regexp == None) & (self._gar_distfiles != None): + # Instanciate a regexp generator + urg = UwatchRegexGenerator() + + # Retrieve the regexp list + auto_regex_list = urg.GenerateRegex(self._catalog_name, self._gar_distfiles) + + # Use the first item as current regexp + self._regexp = auto_regex_list[0] + return self._regexp # ----------------------------------------------------------------------------------------------------------------- @@ -724,8 +736,6 @@ # Check if we have found some results if len(matches) == 0: raise NoUpstreamVersionFoundException(self.config.getUpstreamURL(), self.config.getRegexp()) - print "No match found, we should trigger some error since even current version has not been found" - return False else: newestVersion = self.config.getCurrentVersion() while len(matches) > 0: @@ -802,7 +812,7 @@ # Need a way to check that all options needed are available self.checkArgument() - + # Call the method in charge of retrieving upstream content content = self.UrlContentRetrieve(self.config.getUpstreamURL()) @@ -813,10 +823,8 @@ # Check if we have found some results if len(matches) == 0: raise NoUpstreamVersionFoundException(self.config.getUpstreamURL(), self.config.getRegexp()) - print "No match found, we should trigger some error since even current version has not been found" - return False else: - newestVersion = matches.pop(0) + newestVersion = matches.pop(0) while len(matches) > 0: newestVersion = self.CompareVersionAndGetNewest(newestVersion, matches.pop(0)) @@ -1582,6 +1590,66 @@ return 2 +class UwatchRegexGenerator(object): + + WS_RE = re.compile(r'\s+') + DIGIT_RE = re.compile(r'\d+') + DIGIT_REMOVAL_RE = re.compile(r'\d+(?:\.\d+)*[a-z]?') + DIGIT_MATCH_MAKE_RE_1 = r'(\d+(?:\.\d+)*[a-z]?)' + DIGIT_MATCH_MAKE_RE_2 = r'(\d+(?:\.\d+)*)' + ARCHIVE_RE = re.compile(r"\.(?:tar(?:\.(?:gz|bz2))|tgz)?$") + + def _ChooseDistfile(self, file_list): + # First heuristic: files with numbers are distfiles + for f in file_list: + if self.ARCHIVE_RE.search(f): + return f + for f in file_list: + if self.DIGIT_RE.search(f): + return f + + def _SeparateSoftwareName(self, catalogname, filename): + """Separate the software name from the rest of the file name. + + Software name sometimes contains digits, which we don't want to + include in the regexes. + """ + # The first approach is to split by '-' + assert filename + parts = filename.split('-') + if self._CanBeSoftwarename(parts[0], catalogname): + return parts[0], '-' + '-'.join(parts[1:]) + return '', filename + + def _SeparateArchiveName(self, filename): + if self.ARCHIVE_RE.search(filename): + first_part = self.ARCHIVE_RE.split(filename)[0] + archive_part = ''.join(self.ARCHIVE_RE.findall(filename)) + return first_part, archive_part + return filename, '' + + def _CanBeSoftwarename(self, s, catalogname): + if s == catalogname: + return True + # This is stupid. But let's wait for a real world counterexample. + return True + + def GenerateRegex(self, catalogname, distnames): + dist_list = self.WS_RE.split(distnames) + dist_file = self._ChooseDistfile(dist_list) + if not dist_file: + return [] + softwarename, rest_of_filename = self._SeparateSoftwareName( + catalogname, dist_file) + rest_of_filename, archive_part = self._SeparateArchiveName(rest_of_filename) + no_numbers = self.DIGIT_REMOVAL_RE.split(rest_of_filename) + regex_list = [] + regex_list.append(softwarename + self.DIGIT_MATCH_MAKE_RE_1.join(no_numbers) + archive_part) + regex_list.append(softwarename + self.DIGIT_MATCH_MAKE_RE_2.join(no_numbers) + archive_part) + return regex_list + + + # --------------------------------------------------------------------------------------------------------------------- # # Fonction principale Modified: csw/mgar/gar/v2-uwatch2/gar.lib.mk =================================================================== --- csw/mgar/gar/v2-uwatch2/gar.lib.mk 2011-02-06 22:57:29 UTC (rev 13217) +++ csw/mgar/gar/v2-uwatch2/gar.lib.mk 2011-02-06 23:02:47 UTC (rev 13218) @@ -194,6 +194,16 @@ echo "$(NAME) - Upstream Watch is disabled" ; \ else \ echo "$(NAME) - Upstream Watch is enabled" ; \ + if [ ! -n '$(CATALOGNAME)' ]; then \ + echo "$(NAME) - CATALOGNAME is not set" ; \ + else \ + echo "$(NAME) - CATALOGNAME is : $(CATALOGNAME)" ; \ + fi ; \ + if [ ! -n '$(DISTFILES)' ]; then \ + echo "$(NAME) - DISTFILES is not set" ; \ + else \ + echo "$(NAME) - DISTFILES are : $(DISTFILES)" ; \ + fi ; \ if [ ! -n '$(UFILES_REGEX)' ]; then \ echo "$(NAME) - UFILES_REGEX is not set" ; \ else \ @@ -231,8 +241,7 @@ else \ UWATCHCONFCHECK="Ok" ; \ if [ ! -n '$(UFILES_REGEX)' ]; then \ - echo "$(NAME) - Error UFILES_REGEX is not set" ; \ - UWATCHCONFCHECK="Error" ; \ + echo "$(NAME) - UFILES_REGEX is not set - trying to guess it" ; \ fi; \ if [ ! -n '$(UPSTREAM_MASTER_SITES)' ]; then \ echo "$(NAME) - Error UPSTREAM_MASTER_SITES is not set" ; \ @@ -245,7 +254,11 @@ if [ "$$UWATCHCONFCHECK" -ne "Ok" ] ; then \ exit 1 ; \ fi ; \ - VERSIONLIST=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch get-upstream-version-list --upstream-url="$(UPSTREAM_MASTER_SITES)" --regexp="$(UFILES_REGEX)"` ; \ + if [ ! -n '$(UFILES_REGEX)' ]; then \ + VERSIONLIST=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch get-upstream-version-list --upstream-url="$(UPSTREAM_MASTER_SITES)" --gar-distfiles="$(DISTFILES)" --catalog-name="$(CATALOGNAME)"` ; \ + else \ + VERSIONLIST=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch get-upstream-version-list --upstream-url="$(UPSTREAM_MASTER_SITES)" --regexp="$(UFILES_REGEX)"` ; \ + fi ; \ if [ "$$?" -ne "0" ] ; then \ echo "Error occured while executing uwatch get-upstream-version-list. Please check configuration with target get-uwatch-configuration. Here is the output of uwatch command :" ; \ echo "Output : $$VERSIONLIST" ; \ @@ -271,8 +284,7 @@ else \ UWATCHCONFCHECK="Ok" ; \ if [ ! -n '$(UFILES_REGEX)' ]; then \ - echo "$(NAME) - Error UFILES_REGEX is not set" ; \ - UWATCHCONFCHECK="Error" ; \ + echo "$(NAME) - UFILES_REGEX is not set - trying to guess it" ; \ fi; \ if [ ! -n '$(UPSTREAM_MASTER_SITES)' ]; then \ echo "$(NAME) - Error UPSTREAM_MASTER_SITES is not set" ; \ @@ -285,7 +297,11 @@ if [ "$$UWATCHCONFCHECK" -ne "Ok" ] ; then \ exit 1 ; \ fi ; \ - LATEST=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch get-upstream-latest-version --upstream-url="$(UPSTREAM_MASTER_SITES)" --regexp="$(UFILES_REGEX)"` ; \ + if [ ! -n '$(UFILES_REGEX)' ]; then \ + LATEST=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch get-upstream-latest-version --upstream-url="$(UPSTREAM_MASTER_SITES)" --gar-distfiles="$(DISTFILES)" --catalog-name="$(CATALOGNAME)"` ; \ + else \ + LATEST=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch get-upstream-latest-version --upstream-url="$(UPSTREAM_MASTER_SITES)" --regexp="$(UFILES_REGEX)"` ; \ + fi ; \ if [ "$$?" -ne "0" ] ; then \ echo "Error occured while executing uwatch get-upstream-latest-version. Please check configuration with target get-uwatch-configuration. Here is the output of uwatch command :" ; \ echo "$$LATEST" ; \ @@ -307,8 +323,7 @@ else \ UWATCHCONFCHECK="Ok" ; \ if [ ! -n '$(UFILES_REGEX)' ]; then \ - echo "$(NAME) - Error UFILES_REGEX is not set" ; \ - UWATCHCONFCHECK="Error" ; \ + echo "$(NAME) - UFILES_REGEX is not set - trying to guess it" ; \ fi; \ if [ ! -n '$(UPSTREAM_MASTER_SITES)' ]; then \ echo "$(NAME) - Error UPSTREAM_MASTER_SITES is not set" ; \ @@ -321,7 +336,11 @@ if [ "$$UWATCHCONFCHECK" -ne "Ok" ] ; then \ exit 1 ; \ fi ; \ - LATEST=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch check-upstream --upstream-url="$(UPSTREAM_MASTER_SITES)" --regexp="$(UFILES_REGEX)" --current-version="$(VERSION)"` ; \ + if [ ! -n '$(UFILES_REGEX)' ]; then \ + LATEST=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch check-upstream --upstream-url="$(UPSTREAM_MASTER_SITES)" --gar-distfiles="$(DISTFILES)" --catalog-name="$(CATALOGNAME)" --current-version="$(VERSION)"` ; \ + else \ + LATEST=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch check-upstream --upstream-url="$(UPSTREAM_MASTER_SITES)" --regexp="$(UFILES_REGEX)" --current-version="$(VERSION)"` ; \ + fi ; \ if [ "$$?" -ne "0" ] ; then \ echo "Error occured while executing uwatch check-upstream. Please check configuration with target get-uwatch-configuration. Here is the output of uwatch command :" ; \ echo "$$LATEST" ; \ @@ -344,8 +363,7 @@ else \ UWATCHCONFCHECK="Ok" ; \ if [ ! -n '$(UFILES_REGEX)' ]; then \ - echo "$(NAME) - Error UFILES_REGEX is not set" ; \ - UWATCHCONFCHECK="Error" ; \ + echo "$(NAME) - UFILES_REGEX is not set - trying to guess it" ; \ fi; \ if [ ! -n '$(UPSTREAM_MASTER_SITES)' ]; then \ echo "$(NAME) - Error UPSTREAM_MASTER_SITES is not set" ; \ @@ -358,7 +376,11 @@ if [ "$$UWATCHCONFCHECK" -ne "Ok" ] ; then \ exit 1 ; \ fi ; \ - LATEST=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch check-upstream --upstream-url="$(UPSTREAM_MASTER_SITES)" --regexp="$(UFILES_REGEX)" --current-version="$(VERSION)"` ; \ + if [ ! -n '$(UFILES_REGEX)' ]; then \ + LATEST=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch check-upstream --upstream-url="$(UPSTREAM_MASTER_SITES)" --gar-distfiles="$(DISTFILES)" --catalog-name="$(CATALOGNAME)" --current-version="$(VERSION)"` ; \ + else \ + LATEST=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch check-upstream --upstream-url="$(UPSTREAM_MASTER_SITES)" --regexp="$(UFILES_REGEX)" --current-version="$(VERSION)"` ; \ + fi ; \ if [ "$$?" -ne "0" ] ; then \ echo "Error occured while executing uwatch check-upstream. Please check configuration with target get-uwatch-configuration. Here is the output of uwatch command :" ; \ echo "$$LATEST" ; \ @@ -415,8 +437,7 @@ else \ UWATCHCONFCHECK="Ok" ; \ if [ ! -n '$(UFILES_REGEX)' ]; then \ - echo "$(NAME) - Error UFILES_REGEX is not set" ; \ - UWATCHCONFCHECK="Error" ; \ + echo "$(NAME) - UFILES_REGEX is not set - trying to guess it" ; \ fi; \ if [ ! -n '$(UPSTREAM_MASTER_SITES)' ]; then \ echo "$(NAME) - Error UPSTREAM_MASTER_SITES is not set" ; \ @@ -440,7 +461,11 @@ done ; \ exit 1 ; \ fi ; \ - LATEST=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch get-upstream-latest-version --upstream-url="$(UPSTREAM_MASTER_SITES)" --regexp="$(UFILES_REGEX)"` ; \ + if [ ! -n '$(UFILES_REGEX)' ]; then \ + LATEST=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch get-upstream-latest-version --upstream-url="$(UPSTREAM_MASTER_SITES)" --gar-distfiles="$(DISTFILES)" --catalog-name="$(CATALOGNAME)"` ; \ + else \ + LATEST=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch get-upstream-latest-version --upstream-url="$(UPSTREAM_MASTER_SITES)" --regexp="$(UFILES_REGEX)"` ; \ + fi ; \ if [ "$$?" -ne "0" ] ; then \ echo "Error occured while executing uwatch get-upstream-latest-version. Please check configuration with target get-uwatch-configuration. Here is the output of uwatch command :" ; \ echo "$$LATEST" ; \ @@ -461,7 +486,11 @@ GARPATH=`echo $$line | awk '{ print $$1 }'` ; \ CATALOGNAME=`echo $$line | awk '{ print $$2 }'` ; \ PKGNAME=`echo $$line | awk '{ print $$3 }'` ; \ - REPORTVERSION=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch update-package-version-database --catalog-name="$$CATALOGNAME" --package-name="$$PKGNAME" --execution-date="$$EXECUTIONDATE" --gar-path="$$GARPATH" --gar-version=$(VERSION) --upstream-version="$$LATEST" --upstream-url="$(UPSTREAM_MASTER_SITES)" --regexp="$(UFILES_REGEX)" --gar-distfiles="$(DISTFILES)" --uwatch-output="Successful" ` ; \ + if [ ! -n '$(UFILES_REGEX)' ]; then \ + REPORTVERSION=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch update-package-version-database --catalog-name="$$CATALOGNAME" --package-name="$$PKGNAME" --execution-date="$$EXECUTIONDATE" --gar-path="$$GARPATH" --gar-version=$(VERSION) --upstream-version="$$LATEST" --upstream-url="$(UPSTREAM_MASTER_SITES)" --gar-distfiles="$(DISTFILES)" --uwatch-output="Successful" ` ; \ + else \ + REPORTVERSION=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch update-package-version-database --catalog-name="$$CATALOGNAME" --package-name="$$PKGNAME" --execution-date="$$EXECUTIONDATE" --gar-path="$$GARPATH" --gar-version=$(VERSION) --upstream-version="$$LATEST" --upstream-url="$(UPSTREAM_MASTER_SITES)" --regexp="$(UFILES_REGEX)" --gar-distfiles="$(DISTFILES)" --uwatch-output="Successful" ` ; \ + fi ; \ if [ "$$?" -ne "0" ] ; then \ echo "Error occured while executing uwatch update-package-version-database. Please check configuration with target get-uwatch-configuration. Here is the output of uwatch command :" ; \ echo "$$REPORTVERSION" ; \ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Mon Feb 7 00:05:33 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 06 Feb 2011 23:05:33 +0000 Subject: [csw-devel] SF.net SVN: gar:[13219] csw/mgar/gar/v2-uwatch2/categories/cpan/category.mk Message-ID: Revision: 13219 http://gar.svn.sourceforge.net/gar/?rev=13219&view=rev Author: wbonnet Date: 2011-02-06 23:05:33 +0000 (Sun, 06 Feb 2011) Log Message: ----------- remove default regexp for CPAN Modified Paths: -------------- csw/mgar/gar/v2-uwatch2/categories/cpan/category.mk Modified: csw/mgar/gar/v2-uwatch2/categories/cpan/category.mk =================================================================== --- csw/mgar/gar/v2-uwatch2/categories/cpan/category.mk 2011-02-06 23:02:47 UTC (rev 13218) +++ csw/mgar/gar/v2-uwatch2/categories/cpan/category.mk 2011-02-06 23:05:33 UTC (rev 13219) @@ -28,8 +28,7 @@ SPKG_SOURCEURL := $(SPKG_SOURCEURL)/~$(call TOLOWER,$(AUTHOR)) # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX ?= $(NAME)-(\d+(?:\.\d+)*).tar.gz -UPSTREAM_MASTER_SITES = http://cpan.perl.org/modules/01modules.index.html +UPSTREAM_MASTER_SITES ?= $(SPKG_SOURCEURL) $(foreach P,$(PACKAGES),$(eval _CATEGORY_SPKG_DESC_$P = $$(NAME): $$(or $$(SPKG_DESC_$P),$$(SPKG_DESC)))) _CATEGORY_PKGINFO = echo "PERL_MODULE_NAME=$(NAME)"; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Mon Feb 7 04:50:49 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Mon, 07 Feb 2011 03:50:49 +0000 Subject: [csw-devel] SF.net SVN: gar:[13220] csw/mgar/pkg/dialog/trunk/Makefile Message-ID: Revision: 13220 http://gar.svn.sourceforge.net/gar/?rev=13220&view=rev Author: bdwalton Date: 2011-02-07 03:50:48 +0000 (Mon, 07 Feb 2011) Log Message: ----------- dialog/trunk: add alternatives support Modified Paths: -------------- csw/mgar/pkg/dialog/trunk/Makefile Modified: csw/mgar/pkg/dialog/trunk/Makefile =================================================================== --- csw/mgar/pkg/dialog/trunk/Makefile 2011-02-06 23:05:33 UTC (rev 13219) +++ csw/mgar/pkg/dialog/trunk/Makefile 2011-02-07 03:50:48 UTC (rev 13220) @@ -30,6 +30,11 @@ PKGFILES_CSWdialog-minimal = $(bindir).*minimal $(mandir).*minimal +ALTERNATIVES_CSWdialog = ncurses +ALTERNATIVES_CSWdialog-minimal = minimal +ALTERNATIVE_ncurses = $(bindir)/dialog dialog $(bindir)/dialog.ncurses 50 $(mandir)/man1/dialog.1 dialog.man $(mandir)/man1/dialog.1.ncurses +ALTERNATIVE_minimal = $(bindir)/dialog dialog $(bindir)/dialog.minimal 25 $(mandir)/man1/dialog.1 dialog.man $(mandir)/man1/dialog.1.minimal + SKIPTEST = 1 CONFIGURE_ARGS = $(DIRPATHS) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Mon Feb 7 04:53:12 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Mon, 07 Feb 2011 03:53:12 +0000 Subject: [csw-devel] SF.net SVN: gar:[13221] csw/mgar/pkg/dialog/trunk/Makefile Message-ID: Revision: 13221 http://gar.svn.sourceforge.net/gar/?rev=13221&view=rev Author: bdwalton Date: 2011-02-07 03:53:11 +0000 (Mon, 07 Feb 2011) Log Message: ----------- dialog/trunk: override surplus-dependency warning for alternatives Modified Paths: -------------- csw/mgar/pkg/dialog/trunk/Makefile Modified: csw/mgar/pkg/dialog/trunk/Makefile =================================================================== --- csw/mgar/pkg/dialog/trunk/Makefile 2011-02-07 03:50:48 UTC (rev 13220) +++ csw/mgar/pkg/dialog/trunk/Makefile 2011-02-07 03:53:11 UTC (rev 13221) @@ -27,6 +27,8 @@ CHECKPKG_OVERRIDES_CSWdialog += file-with-bad-content CHECKPKG_OVERRIDES_CSWdialog += missing-dependency|CSWpython +CHECKPKG_OVERRIDES_CSWdialog += surplus-dependency|CSWalternatives +CHECKPKG_OVERRIDES_CSWdialog-minimal += surplus-dependency|CSWalternatives PKGFILES_CSWdialog-minimal = $(bindir).*minimal $(mandir).*minimal This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From jonbcraig at users.sourceforge.net Mon Feb 7 05:43:03 2011 From: jonbcraig at users.sourceforge.net (jonbcraig at users.sourceforge.net) Date: Mon, 07 Feb 2011 04:43:03 +0000 Subject: [csw-devel] SF.net SVN: gar:[13222] csw/mgar/pkg/ntop/trunk/Makefile Message-ID: Revision: 13222 http://gar.svn.sourceforge.net/gar/?rev=13222&view=rev Author: jonbcraig Date: 2011-02-07 04:43:03 +0000 (Mon, 07 Feb 2011) Log Message: ----------- ntop: update depends following update of dbm package Modified Paths: -------------- csw/mgar/pkg/ntop/trunk/Makefile Modified: csw/mgar/pkg/ntop/trunk/Makefile =================================================================== --- csw/mgar/pkg/ntop/trunk/Makefile 2011-02-07 03:53:11 UTC (rev 13221) +++ csw/mgar/pkg/ntop/trunk/Makefile 2011-02-07 04:43:03 UTC (rev 13222) @@ -41,13 +41,14 @@ RUNTIME_DEP_PKGS_CSWntop += CSWrrd RUNTIME_DEP_PKGS_CSWntop += CSWgeoip RUNTIME_DEP_PKGS_CSWntop += CSWpython -RUNTIME_DEP_PKGS_CSWntop += CSWgdbm +RUNTIME_DEP_PKGS_CSWntop += CSWlibgdbm3 RUNTIME_DEP_PKGS_CSWntop += CSWzlib RUNTIME_DEP_PKGS_CSWntop += CSWiconv BUILD_DEP_PKGS = $(RUNTIME_DEP_PKGS_CSWntop) BUILD_DEP_PKGS += CSWlibtool CSWautoconf CSWautomake BUILD_DEP_PKGS += CSWlibpcapdevel CSWossldevel +BUILD_DEP_PKGS += CSWlibgdbm-dev CONFIGURE_SCRIPTS = $(WORKSRC)/autogen.sh This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Mon Feb 7 09:20:42 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Mon, 07 Feb 2011 08:20:42 +0000 Subject: [csw-devel] SF.net SVN: gar:[13223] csw/mgar/gar/v2/lib/python Message-ID: Revision: 13223 http://gar.svn.sourceforge.net/gar/?rev=13223&view=rev Author: wahwah Date: 2011-02-07 08:20:41 +0000 (Mon, 07 Feb 2011) Log Message: ----------- pkgdb: Add --force-unpack This option makes srv4 files to be unpacked and reindexed. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/package.py csw/mgar/gar/v2/lib/python/package_stats.py csw/mgar/gar/v2/lib/python/pkgdb.py Modified: csw/mgar/gar/v2/lib/python/package.py =================================================================== --- csw/mgar/gar/v2/lib/python/package.py 2011-02-07 04:43:03 UTC (rev 13222) +++ csw/mgar/gar/v2/lib/python/package.py 2011-02-07 08:20:41 UTC (rev 13223) @@ -48,6 +48,7 @@ def __init__(self, pkg_path, debug=False): super(CswSrv4File, self).__init__() + logging.debug("CswSrv4File(%s, debug=%s)", repr(pkg_path), debug) self.pkg_path = pkg_path self.workdir = None self.gunzipped_path = None @@ -81,6 +82,7 @@ # Causing the class to stat the .gz file. This call throws away the # result, but the result will be cached as a object member. self.GetMtime() + self.GetMd5sum() base_name_gz = os.path.split(self.pkg_path)[1] shutil.copy(self.pkg_path, self.GetWorkDir()) self.pkg_path = os.path.join(self.GetWorkDir(), base_name_gz) Modified: csw/mgar/gar/v2/lib/python/package_stats.py =================================================================== --- csw/mgar/gar/v2/lib/python/package_stats.py 2011-02-07 04:43:03 UTC (rev 13222) +++ csw/mgar/gar/v2/lib/python/package_stats.py 2011-02-07 08:20:41 UTC (rev 13223) @@ -462,7 +462,7 @@ self.logger = logging self.debug = debug - def CollectStatsFromFiles(self, file_list, catalog_file): + def CollectStatsFromFiles(self, file_list, catalog_file, force_unpack=False): args_display = file_list if len(args_display) > 5: args_display = args_display[:5] + ["...more..."] @@ -488,7 +488,7 @@ # removes the temporary directory from the disk. This allows to process # the whole catalog. stats = stats_list.pop() - stats.CollectStats() + stats.CollectStats(force=force_unpack) data_list.append(stats.GetAllStats()) pbar.update(counter.next()) pbar.finish() Modified: csw/mgar/gar/v2/lib/python/pkgdb.py =================================================================== --- csw/mgar/gar/v2/lib/python/pkgdb.py 2011-02-07 04:43:03 UTC (rev 13222) +++ csw/mgar/gar/v2/lib/python/pkgdb.py 2011-02-07 08:20:41 UTC (rev 13223) @@ -185,7 +185,8 @@ def __init__(self, debug=False): self.debug = debug - def SyncFromCatalogFile(self, osrel, arch, catrel, catalog_file): + def SyncFromCatalogFile(self, osrel, arch, catrel, catalog_file, + force_unpack=False): """Syncs a given catalog from a catalog file. Imports srv4 files if necessary. @@ -223,7 +224,8 @@ collector = package_stats.StatsCollector( logger=logging, debug=self.debug) - new_statdicts = collector.CollectStatsFromFiles(file_list, None) + new_statdicts = collector.CollectStatsFromFiles( + file_list, None, force_unpack=force_unpack) new_statdicts_by_md5 = {} if new_statdicts: logging.info("Marking imported packages as registered.") @@ -299,9 +301,9 @@ db_catalog.AddSrv4ToCatalog( sqo_srv4, osrel, arch, catrel) - def SyncFromCatalogTree(self, catrel, base_dir): - logging.debug("SyncFromCatalogTree(%s, %s)", - repr(catrel), repr(base_dir)) + def SyncFromCatalogTree(self, catrel, base_dir, force_unpack=False): + logging.debug("SyncFromCatalogTree(%s, %s, force_unpack=%s)", + repr(catrel), repr(base_dir), force_unpack) if not os.path.isdir(base_dir): raise UsageError("%s is not a diractory" % repr(base_dir)) if catrel not in common_constants.DEFAULT_CATALOG_RELEASES: @@ -320,7 +322,8 @@ logging.warning("Could not find %s, skipping.", repr(catalog_file)) continue logging.info(" %s", catalog_file) - self.SyncFromCatalogFile(osrel, arch, catrel, catalog_file) + self.SyncFromCatalogFile(osrel, arch, catrel, catalog_file, + force_unpack=force_unpack) def ComposeCatalogFilePath(self, base_dir, osrel, arch): short_osrel = osrel.replace("SunOS", "") @@ -356,6 +359,9 @@ parser.add_option("--profile", dest="profile", default=False, action="store_true", help="Turn on profiling") + parser.add_option("--force-unpack", dest="force_unpack", + default=False, action="store_true", + help="Force unpacking of packages") options, args = parser.parse_args() if options.debug: logging.basicConfig(level=logging.DEBUG) @@ -414,7 +420,8 @@ logger=logging, debug=options.debug) file_list = args - stats_list = collector.CollectStatsFromFiles(file_list, None) + stats_list = collector.CollectStatsFromFiles(file_list, None, + force_unpack=options.force_unpack) for stats in stats_list: logging.debug( "Importing %s, %s", @@ -512,7 +519,7 @@ raise UsageError("Wrong number of arguments, see usage.") ci = CatalogImporter(debug=options.debug) catrel, base_dir = args - ci.SyncFromCatalogTree(catrel, base_dir) + ci.SyncFromCatalogTree(catrel, base_dir, options.force_unpack) elif (command, subcommand) == ('show', 'cat'): sqo_osrel, sqo_arch, sqo_catrel = GetSqoTriad( options.osrel, options.arch, options.catrel) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Mon Feb 7 09:21:56 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Mon, 07 Feb 2011 08:21:56 +0000 Subject: [csw-devel] SF.net SVN: gar:[13224] csw/mgar/gar/v2/lib/python Message-ID: Revision: 13224 http://gar.svn.sourceforge.net/gar/?rev=13224&view=rev Author: wahwah Date: 2011-02-07 08:21:56 +0000 (Mon, 07 Feb 2011) Log Message: ----------- catalog-notifier: Terser catalog lists Instead of printing one line per "catrel, arch, osrel" tuple, print one line per catalog release, group by architecture, and omit the "SunOS" part of the OS release name. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/catalog_notifier.py csw/mgar/gar/v2/lib/python/catalog_notifier_test.py Modified: csw/mgar/gar/v2/lib/python/catalog_notifier.py =================================================================== --- csw/mgar/gar/v2/lib/python/catalog_notifier.py 2011-02-07 08:20:41 UTC (rev 13223) +++ csw/mgar/gar/v2/lib/python/catalog_notifier.py 2011-02-07 08:21:56 UTC (rev 13224) @@ -20,16 +20,36 @@ REPORT_TMPL = u"""Catalog update report for $email Catalog URL: $url +#import re +#def CatalogList($catalogs) +#set $by_catrel = {} +#set $unused = [by_catrel.setdefault(x[0], []).append(x[1:]) for x in $catalogs] +#for catrel in $by_catrel: + - $catrel: # +#set $by_arch = {} +#set $unused = [by_arch.setdefault(x[0], []).append(x[1:]) for x in $by_catrel[$catrel]] +#set $first = True +#for arch in $by_arch: +#if not $first +, # +#else +#set $first = False +#end if +$arch (# +#echo ", ".join([re.sub(r'^.*OS', '', x[0]) for x in $by_arch[$arch]]) + ")" +#end for + +#end for +#end def #if "new_pkgs" in $pkg_data New packages: #for basename in $pkg_data["new_pkgs"] * $basename In catalogs: -#for catalog in $sorted($pkg_data["new_pkgs"][basename]["catalogs"]) - - $catalog[0] $catalog[1] $catalog[2] +#set $catalogs = $sorted($pkg_data["new_pkgs"][basename]["catalogs"]) +$CatalogList($catalogs) #end for -#end for #end if #if "removed_pkgs" in $pkg_data @@ -37,10 +57,9 @@ #for basename in $pkg_data["removed_pkgs"] * $basename From catalogs: -#for catalog in $sorted($pkg_data["removed_pkgs"][basename]["catalogs"]) - - $catalog[0] $catalog[1] $catalog[2] +#set $catalogs = $sorted($pkg_data["removed_pkgs"][basename]["catalogs"]) +$CatalogList($catalogs) #end for -#end for #end if #if "upgraded_pkg" in $pkg_data @@ -51,10 +70,9 @@ #end for + $pkg_data["upgraded_pkg"][basename]["to_pkg"]["file_basename"] In catalogs: -#for catalog in $sorted($pkg_data["upgraded_pkg"][basename]["catalogs"]) - - $catalog[0] $catalog[1] $catalog[2] +#set $catalogs = $sorted($pkg_data["upgraded_pkg"][basename]["catalogs"]) +$CatalogList($catalogs) #end for -#end for #end if #if "lost_pkg" in $pkg_data @@ -64,10 +82,9 @@ - $pkg_data["lost_pkg"][basename]["from_pkg"][from_basename]["file_basename"] #end for In catalogs: -#for catalog in $sorted($pkg_data["lost_pkg"][basename]["catalogs"]) - - $catalog[0] $catalog[1] $catalog[2] +#set $catalogs = $sorted($pkg_data["lost_pkg"][basename]["catalogs"]) +$CatalogList($catalogs) #end for -#end for #end if #if "got_pkg" in $pkg_data @@ -75,10 +92,9 @@ #for basename in $pkg_data["got_pkg"] * $basename In catalogs: -#for catalog in $sorted($pkg_data["got_pkg"][basename]["catalogs"]) - - $catalog[0] $catalog[1] $catalog[2] +#set $catalogs = $sorted($pkg_data["got_pkg"][basename]["catalogs"]) +$CatalogList($catalogs) #end for -#end for #end if """ Modified: csw/mgar/gar/v2/lib/python/catalog_notifier_test.py =================================================================== --- csw/mgar/gar/v2/lib/python/catalog_notifier_test.py 2011-02-07 08:20:41 UTC (rev 13223) +++ csw/mgar/gar/v2/lib/python/catalog_notifier_test.py 2011-02-07 08:21:56 UTC (rev 13224) @@ -7,6 +7,7 @@ import catalog_test import copy import pprint +import rest class NotificationFormatterTest(mox.MoxTestBase): @@ -14,7 +15,7 @@ def disabled_testOne(self): """This tested too much.""" f = catalog_notifier.NotificationFormatter() - rest_client_mock = self.mox.CreateMock(catalog_notifier.RestClient) + rest_client_mock = self.mox.CreateMock(rest.RestClient) url = "http://www.example.com/opencsw/" cat_a = self.mox.CreateMock(catalog.OpencswCatalog) cat_b = self.mox.CreateMock(catalog.OpencswCatalog) @@ -33,19 +34,43 @@ def test_GetPkgsByMaintainerNew(self): f = catalog_notifier.NotificationFormatter() - rest_client_mock = self.mox.CreateMock(catalog_notifier.RestClient) + rest_client_mock = self.mox.CreateMock(rest.RestClient) cat_a = self.mox.CreateMock(catalog.OpencswCatalog) cat_b = self.mox.CreateMock(catalog.OpencswCatalog) catalogs = [ ("fossil", "amd65", "SolarOS5.12", cat_a, cat_b), + ("fossil", "amd65", "SolarOS5.13", cat_a, cat_b), + ("fossil", "amd67", "SolarOS5.12", cat_a, cat_b), + ("rock", "amd65", "SolarOS5.12", cat_a, cat_b), ] rest_client_mock.GetMaintainerByMd5('cfe40c06e994f6e8d3b191396d0365cb').AndReturn( {"maintainer_email": "joe at example.com"} ) + rest_client_mock.GetMaintainerByMd5('cfe40c06e994f6e8d3b191396d0365cb').AndReturn( + {"maintainer_email": "joe at example.com"} + ) + rest_client_mock.GetMaintainerByMd5('cfe40c06e994f6e8d3b191396d0365cb').AndReturn( + {"maintainer_email": "joe at example.com"} + ) + rest_client_mock.GetMaintainerByMd5('cfe40c06e994f6e8d3b191396d0365cb').AndReturn( + {"maintainer_email": "joe at example.com"} + ) cat_a.GetDataByCatalogname().AndReturn({}) cat_b.GetDataByCatalogname().AndReturn({ "syslog_ng": catalog_test.PKG_STRUCT_1, }) + cat_a.GetDataByCatalogname().AndReturn({}) + cat_b.GetDataByCatalogname().AndReturn({ + "syslog_ng": catalog_test.PKG_STRUCT_1, + }) + cat_a.GetDataByCatalogname().AndReturn({}) + cat_b.GetDataByCatalogname().AndReturn({ + "syslog_ng": catalog_test.PKG_STRUCT_1, + }) + cat_a.GetDataByCatalogname().AndReturn({}) + cat_b.GetDataByCatalogname().AndReturn({ + "syslog_ng": catalog_test.PKG_STRUCT_1, + }) self.mox.ReplayAll() expected = {'joe at example.com': { 'new_pkgs': { @@ -53,20 +78,23 @@ "pkg": catalog_test.PKG_STRUCT_1, "catalogs": [ ("fossil", "amd65", "SolarOS5.12"), + ("fossil", "amd65", "SolarOS5.13"), + ("fossil", "amd67", "SolarOS5.12"), + ("rock", "amd65", "SolarOS5.12"), ], }, }} } - self.assertEqual( - expected, - f._GetPkgsByMaintainer(catalogs, rest_client_mock)) - expected_text = u"""aa""" + result = f._GetPkgsByMaintainer(catalogs, rest_client_mock) + self.assertEqual(expected, result) # Uncomment to see rendered template - # print f._RenderForMaintainer(expected["joe at example.com"]) + # print f._RenderForMaintainer( + # result["joe at example.com"], "joe at example.com", + # "http://mirror.example.com") def test_GetPkgsByMaintainerRemoved(self): f = catalog_notifier.NotificationFormatter() - rest_client_mock = self.mox.CreateMock(catalog_notifier.RestClient) + rest_client_mock = self.mox.CreateMock(rest.RestClient) cat_a = self.mox.CreateMock(catalog.OpencswCatalog) cat_b = self.mox.CreateMock(catalog.OpencswCatalog) catalogs = [ @@ -95,11 +123,14 @@ f._GetPkgsByMaintainer(catalogs, rest_client_mock)) expected_text = u"""aa""" # Uncomment to see rendered template - # print f._RenderForMaintainer(expected["joe at example.com"]) + # print f._RenderForMaintainer( + # expected["joe at example.com"], + # "joe at example.com", + # "http://mirror.example.com") def test_GetPkgsByMaintainerTakeover(self): f = catalog_notifier.NotificationFormatter() - rest_client_mock = self.mox.CreateMock(catalog_notifier.RestClient) + rest_client_mock = self.mox.CreateMock(rest.RestClient) cat_a = self.mox.CreateMock(catalog.OpencswCatalog) cat_b = self.mox.CreateMock(catalog.OpencswCatalog) catalogs = [ @@ -147,7 +178,7 @@ def test_GetPkgsByMaintainerUpgrade(self): f = catalog_notifier.NotificationFormatter() - rest_client_mock = self.mox.CreateMock(catalog_notifier.RestClient) + rest_client_mock = self.mox.CreateMock(rest.RestClient) cat_a = self.mox.CreateMock(catalog.OpencswCatalog) cat_b = self.mox.CreateMock(catalog.OpencswCatalog) catalogs = [ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dam at opencsw.org Mon Feb 7 12:24:54 2011 From: dam at opencsw.org (Dagobert Michelsen) Date: Mon, 7 Feb 2011 12:24:54 +0100 Subject: [csw-devel] SF.net SVN: gar:[13141] csw/mgar/pkg/gettext/trunk/Makefile In-Reply-To: <1296999317-sup-5878@pinkfloyd.chass.utoronto.ca> References: <1296999317-sup-5878@pinkfloyd.chass.utoronto.ca> Message-ID: <9120DFA1-2AF2-4A84-A557-B9E97ACDD0D1@opencsw.org> Hi folks, Am 06.02.2011 um 14:37 schrieb Ben Walton: > Excerpts from Maciej Blizi?ski's message of Sun Feb 06 07:26:44 -0500 2011: > >>> post-merge: >>> - @(cd $(PKGROOT)$(docdir); \ >>> - find . -type f -print0 | \ >>> + @(cd $(PKGROOT); \ >>> + find .$(docdir) .$(datadir)/aclocal -type f -print0 | \ >>> xargs -0 perl -pi \ >>> -e "s#/usr/share#/opt/csw/share#g;" \ >>> - -e "s#/usr/local#/opt/csw#g;") >>> + -e "s#/usr/local#/opt/csw#g;"; \ >>> + perl -pi \ >>> + -e "s#/usr/share#/opt/csw/share#g;" \ >>> + -e "s#/usr/local#/opt/csw#g;" \ >>> + .$(bindir)/ggettextize \ >>> + .$(infodir)/gettext.info; ) >> >> Could we make it a GAR default? > > I think it would be ok. I wouldn't want this for $(bindir) and a few > other locations, but we could likely make this rule apply on > $(datadir) without issues. Dago? Not as general replacement, because there are several issues where there are valid references to /usr/share etc. I could imagine something like CSW_PATH_REPLACEMENTS_usr-share = $(docdir)/.* $(datadir)/aclocal CSW_PATH_REPLACEMENTS_usr-local = $(docdir)/.* $(datadir)/aclocal $(bindir)/ggettextsize $(infodir)/gettext.info Best regards -- Dago From janholzh at users.sourceforge.net Mon Feb 7 16:24:41 2011 From: janholzh at users.sourceforge.net (janholzh at users.sourceforge.net) Date: Mon, 07 Feb 2011 15:24:41 +0000 Subject: [csw-devel] SF.net SVN: gar:[13225] csw/mgar/pkg/transmission/trunk Message-ID: Revision: 13225 http://gar.svn.sourceforge.net/gar/?rev=13225&view=rev Author: janholzh Date: 2011-02-07 15:24:40 +0000 (Mon, 07 Feb 2011) Log Message: ----------- transmission: Update to Version 2.20 Modified Paths: -------------- csw/mgar/pkg/transmission/trunk/Makefile csw/mgar/pkg/transmission/trunk/checksums Added Paths: ----------- csw/mgar/pkg/transmission/trunk/files/0001-fix-include-and-test.patch csw/mgar/pkg/transmission/trunk/files/0003-fix-usr-share.patch Removed Paths: ------------- csw/mgar/pkg/transmission/trunk/files/0002-add-setenv-patch.patch Modified: csw/mgar/pkg/transmission/trunk/Makefile =================================================================== --- csw/mgar/pkg/transmission/trunk/Makefile 2011-02-07 08:21:56 UTC (rev 13224) +++ csw/mgar/pkg/transmission/trunk/Makefile 2011-02-07 15:24:40 UTC (rev 13225) @@ -1,14 +1,15 @@ NAME = transmission -VERSION = 2.04 +VERSION = 2.20 CATEGORIES = net DESCRIPTION = Fast, easy, and free multi-platform BitTorrent client define BLURB endef -MASTER_SITES = http://mirrors.m0k.org/transmission/files/ +MASTER_SITES = http://download.transmissionbt.com/files/ DISTFILES = $(NAME)-$(VERSION).tar.bz2 PATCHFILES = icons-makefile.patch -PATCHFILES += 0002-add-setenv-patch.patch +PATCHFILES += 0001-fix-include-and-test.patch +PATCHFILES += 0003-fix-usr-share.patch # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = -(\d+(?:\.\d+)*).tar.bz2 @@ -16,7 +17,7 @@ PACKAGES = CSWtransmission PACKAGES += CSWtransmissiongtk2 SPKG_DESC_CSWtransmission = Fast, easy, and free multi-platform BitTorrent client -SPKG_DESC_CSWtransmissiongtk2 = Fast, easy, and free multi-platform BitTorrent client , gtk2 Interface +SPKG_DESC_CSWtransmissiongtk2 = Transmission BitTorrent client , gtk2 Interface RUNTIME_DEP_PKGS_CSWtransmissiongtk2 = CSWcurlrt RUNTIME_DEP_PKGS_CSWtransmissiongtk2 += CSWdbusglib @@ -28,7 +29,7 @@ RUNTIME_DEP_PKGS_CSWtransmissiongtk2 += CSWlibatk RUNTIME_DEP_PKGS_CSWtransmissiongtk2 += CSWlibcairo RUNTIME_DEP_PKGS_CSWtransmissiongtk2 += CSWlibdbus -RUNTIME_DEP_PKGS_CSWtransmissiongtk2 += CSWlibevent +RUNTIME_DEP_PKGS_CSWtransmissiongtk2 += CSWlibevent2-0-5 RUNTIME_DEP_PKGS_CSWtransmissiongtk2 += CSWosslrt RUNTIME_DEP_PKGS_CSWtransmissiongtk2 += CSWpango RUNTIME_DEP_PKGS_CSWtransmissiongtk2 += CSWzlib @@ -38,7 +39,7 @@ RUNTIME_DEP_PKGS_CSWtransmission = CSWcurlrt -RUNTIME_DEP_PKGS_CSWtransmission += CSWlibevent +RUNTIME_DEP_PKGS_CSWtransmission += CSWlibevent2-0-5 RUNTIME_DEP_PKGS_CSWtransmission += CSWggettextrt RUNTIME_DEP_PKGS_CSWtransmission += CSWosslrt RUNTIME_DEP_PKGS_CSWtransmission += CSWzlib @@ -49,8 +50,12 @@ RUNTIME_DEP_PKGS_CSWtransmissiongtk2 += CSWtransmission -PKGFILES_CSWtransmission = /opt/csw/bin/transmissioncli -PKGFILES_CSWtransmission += /opt/csw/bin/transmission-.* +PKGFILES_CSWtransmission = /opt/csw/bin/transmission-cli +PKGFILES_CSWtransmission += /opt/csw/bin/transmission-create +PKGFILES_CSWtransmission += /opt/csw/bin/transmission-daemon +PKGFILES_CSWtransmission += /opt/csw/bin/transmission-edit +PKGFILES_CSWtransmission += /opt/csw/bin/transmission-show +PKGFILES_CSWtransmission += /opt/csw/bin/transmission-remote PKGFILES_CSWtransmission += /opt/csw/share/locale/.* PKGFILES_CSWtransmission += /opt/csw/share/man/.* PKGFILES_CSWtransmission += /opt/csw/share/transmission/.* @@ -60,20 +65,21 @@ #EXTRA_CFLAGS = -DNO_SYS_QUEUE_H -lresolv -EXTRA_CFLAGS = -DNO_SYS_QUEUE_H -EXTRA_LD_OPTIONS = -L/opt/csw/lib -liconv +EXTRA_CFLAGS = -DNO_SYS_QUEUE_H -lintl +EXTRA_LD_OPTIONS = -L/opt/csw/lib -liconv -lrt #EXTRA_INC = /opt/csw/X11/include #EXTRA_LIB = /opt/csw/X11/lib #EXTRA_PKG_CONFIG_DIRS = $(prefix)/X11/lib CONFIGURE_ARGS = $(DIRPATHS) --enable-gtk --disable-silent-rules -#STRIP_LIBTOOL = 1 +STRIP_LIBTOOL = 1 TEST_TARGET = check CHECKPKG_OVERRIDES_CSWtransmissiongtk2 += surplus-dependency|CSWtransmission CHECKPKG_OVERRIDES_CSWtransmissiongtk2 += surplus-dependency|CSWdbus + include gar/category.mk PATH := /opt/csw/gnu:$(PATH) Modified: csw/mgar/pkg/transmission/trunk/checksums =================================================================== --- csw/mgar/pkg/transmission/trunk/checksums 2011-02-07 08:21:56 UTC (rev 13224) +++ csw/mgar/pkg/transmission/trunk/checksums 2011-02-07 15:24:40 UTC (rev 13225) @@ -1 +1 @@ -84fe15eb7e000fdc369def513299358b transmission-2.04.tar.bz2 +5d847ed43c551d81d24e07a3516342af transmission-2.20.tar.bz2 Added: csw/mgar/pkg/transmission/trunk/files/0001-fix-include-and-test.patch =================================================================== --- csw/mgar/pkg/transmission/trunk/files/0001-fix-include-and-test.patch (rev 0) +++ csw/mgar/pkg/transmission/trunk/files/0001-fix-include-and-test.patch 2011-02-07 15:24:40 UTC (rev 13225) @@ -0,0 +1,40 @@ +From 5d84f8d5861bfa677b24d154b089765ecef0a1d6 Mon Sep 17 00:00:00 2001 +From: Jan Holzhueter +Date: Fri, 28 Jan 2011 12:37:47 +0100 +Subject: [PATCH] fix-include-and-test + +--- + libtransmission/torrent.c | 1 + + libtransmission/utils-test.c | 4 ++-- + 2 files changed, 3 insertions(+), 2 deletions(-) + +diff --git a/libtransmission/torrent.c b/libtransmission/torrent.c +index 9cef3c5..516a64f 100644 +--- a/libtransmission/torrent.c ++++ b/libtransmission/torrent.c +@@ -21,6 +21,7 @@ + #include + #include + #include /* memcmp */ ++#include + #include /* qsort */ + + #include /* evutil_vsnprintf() */ +diff --git a/libtransmission/utils-test.c b/libtransmission/utils-test.c +index 34bc1cf..59467ea 100644 +--- a/libtransmission/utils-test.c ++++ b/libtransmission/utils-test.c +@@ -400,8 +400,8 @@ test_truncd( void ) + tr_snprintf( buf, sizeof( buf ), "%.0f", tr_truncd( 3.3333, 0 ) ); + check( !strcmp( buf, "3" ) ); + +- tr_snprintf( buf, sizeof( buf ), "%.2f", tr_truncd( nan, 2 ) ); +- check( strstr( buf, "nan" ) != NULL ); ++ /*tr_snprintf( buf, sizeof( buf ), "%.2f", tr_truncd( nan, 2 ) );*/ ++ /* check( strstr( buf, "nan" ) != NULL ); */ + + return 0; + } +-- +1.7.3.2 + Deleted: csw/mgar/pkg/transmission/trunk/files/0002-add-setenv-patch.patch =================================================================== --- csw/mgar/pkg/transmission/trunk/files/0002-add-setenv-patch.patch 2011-02-07 08:21:56 UTC (rev 13224) +++ csw/mgar/pkg/transmission/trunk/files/0002-add-setenv-patch.patch 2011-02-07 15:24:40 UTC (rev 13225) @@ -1,42 +0,0 @@ -From 4164824ced3e17247d15bfeca890d127fc313d24 Mon Sep 17 00:00:00 2001 -From: Jan Holzhueter -Date: Tue, 28 Sep 2010 13:57:15 +0200 -Subject: [PATCH] add setenv patch - ---- - libtransmission/torrent.c | 18 ++++++++++++++++++ - ltmain.sh | 2 +- - 2 files changed, 19 insertions(+), 1 deletions(-) - -diff --git a/libtransmission/torrent.c b/libtransmission/torrent.c -index ba9fc83..f6d45de 100644 ---- a/libtransmission/torrent.c -+++ b/libtransmission/torrent.c -@@ -47,6 +47,24 @@ - #include "verify.h" - #include "version.h" - -+#ifdef __sun -+void setenv(char *n, char *v, int x) { -+ char buf[256]; -+ snprintf(buf,sizeof(buf),"%s=%s",n,v); -+ putenv(buf); -+} -+ -+void unsetenv(char *env_name) { -+ extern char **environ; -+ char **cc; -+ int l; -+ l=strlen(env_name); -+ for (cc=environ;*cc!=NULL;cc++) { -+ if (strncmp(env_name,*cc,l)==0 && ((*cc)[l]=='='||(*cc)[l]=='\0')) break; -+ } for (; *cc != NULL; cc++) *cc=cc[1]; -+} -+#endif -+ - /*** - **** - ***/ --- -1.7.3 - Added: csw/mgar/pkg/transmission/trunk/files/0003-fix-usr-share.patch =================================================================== --- csw/mgar/pkg/transmission/trunk/files/0003-fix-usr-share.patch (rev 0) +++ csw/mgar/pkg/transmission/trunk/files/0003-fix-usr-share.patch 2011-02-07 15:24:40 UTC (rev 13225) @@ -0,0 +1,25 @@ +From dd67c49e650fa2ba33eb8e168a3be51d662c53a9 Mon Sep 17 00:00:00 2001 +From: Jan Holzhueter +Date: Mon, 7 Feb 2011 16:05:00 +0100 +Subject: [PATCH] fix-usr-share + +--- + libtransmission/platform.c | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/libtransmission/platform.c b/libtransmission/platform.c +index fb3a7fd..1073936 100644 +--- a/libtransmission/platform.c ++++ b/libtransmission/platform.c +@@ -650,7 +650,7 @@ tr_getWebClientDir( const tr_session * session UNUSED ) + { + const char * pkg = PACKAGE_DATA_DIR; + const char * xdg = getenv( "XDG_DATA_DIRS" ); +- const char * fallback = "/usr/local/share:/usr/share"; ++ const char * fallback = "/opt/csw/share"; + char * buf = tr_strdup_printf( "%s:%s:%s", (pkg?pkg:""), (xdg?xdg:""), fallback ); + tmp = buf; + while( tmp && *tmp ) { +-- +1.7.3.2 + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Mon Feb 7 16:31:44 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Mon, 07 Feb 2011 15:31:44 +0000 Subject: [csw-devel] SF.net SVN: gar:[13226] csw/mgar/pkg/lang-python/gdata-python-client/trunk Message-ID: Revision: 13226 http://gar.svn.sourceforge.net/gar/?rev=13226&view=rev Author: wahwah Date: 2011-02-07 15:31:44 +0000 (Mon, 07 Feb 2011) Log Message: ----------- gdata: Update to 2.0.13 Modified Paths: -------------- csw/mgar/pkg/lang-python/gdata-python-client/trunk/Makefile csw/mgar/pkg/lang-python/gdata-python-client/trunk/checksums Added Paths: ----------- csw/mgar/pkg/lang-python/gdata-python-client/trunk/files/0001-Remove-a-usr-local-reference.patch Modified: csw/mgar/pkg/lang-python/gdata-python-client/trunk/Makefile =================================================================== --- csw/mgar/pkg/lang-python/gdata-python-client/trunk/Makefile 2011-02-07 15:24:40 UTC (rev 13225) +++ csw/mgar/pkg/lang-python/gdata-python-client/trunk/Makefile 2011-02-07 15:31:44 UTC (rev 13226) @@ -3,7 +3,7 @@ # $Id$ NAME = gdata-python-client -VERSION = 2.0.3 +VERSION = 2.0.13 CATEGORIES = python DESCRIPTION = Google Data Protocol, a REST-inspired technology define BLURB @@ -11,12 +11,25 @@ SPKG_SOURCEURL = http://code.google.com/apis/gdata/ MASTER_SITES = $(GOOGLE_MIRROR) DISTFILES = gdata-$(VERSION).tar.gz -WORKSRC = $(WORKDIR)/gdata-$(VERSION) -UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz -CATALOGNAME = py_gdata -PACKAGES = CSWpygdata -ARCHALL_CSWpygdata = 1 +DISTNAME = gdata-$(VERSION) RUNTIME_DEP_PKGS = BUILD_DEP_PKGS = $(RUNTIME_DEP_PKGS) CSWpysetuptools TEST_SCRIPTS = +LICENSE = PKG-INFO +PATCHFILES += 0001-Remove-a-usr-local-reference.patch + +PACKAGES += CSWpy-gdata +CATALOGNAME_CSWpy-gdata = py_gdata +SPKG_DESC_CSWpy-gdata = $(DESCRIPTION) +INCOMPATIBLE_PKGS_CSWpy-gdata = CSWpygdata +ARCHALL_CSWpy-gdata = 1 +CHECKPKG_OVERRIDES_CSWpy-gdata += file-with-bad-content|/usr/local|root/opt/csw/lib/python/site-packages/gdata/Crypto/Util/RFC1751.py + +PACKAGES += CSWpygdata +PKGFILES_CSWpygdata = NOFILES +SPKG_DESC_CSWpygdata = Do not release this package +ARCHALL_CSWpygdata = 1 +CHECKPKG_OVERRIDES_CSWpygdata += action-class-only-in-pkginfo +CHECKPKG_OVERRIDES_CSWpygdata += surplus-dependency|CSWpython + include gar/category.mk Modified: csw/mgar/pkg/lang-python/gdata-python-client/trunk/checksums =================================================================== --- csw/mgar/pkg/lang-python/gdata-python-client/trunk/checksums 2011-02-07 15:24:40 UTC (rev 13225) +++ csw/mgar/pkg/lang-python/gdata-python-client/trunk/checksums 2011-02-07 15:31:44 UTC (rev 13226) @@ -1 +1 @@ -43d4975caeebbe8d64e101638be966cd gdata-2.0.3.tar.gz +bbbc7efd4ad8bb04ff9c0fbf88a0e871 gdata-2.0.13.tar.gz Added: csw/mgar/pkg/lang-python/gdata-python-client/trunk/files/0001-Remove-a-usr-local-reference.patch =================================================================== --- csw/mgar/pkg/lang-python/gdata-python-client/trunk/files/0001-Remove-a-usr-local-reference.patch (rev 0) +++ csw/mgar/pkg/lang-python/gdata-python-client/trunk/files/0001-Remove-a-usr-local-reference.patch 2011-02-07 15:31:44 UTC (rev 13226) @@ -0,0 +1,22 @@ +From b78ce6ff1763f4a887f6f579950f0109d50fcbb3 Mon Sep 17 00:00:00 2001 +From: Maciej Blizinski +Date: Mon, 7 Feb 2011 16:26:38 +0100 +Subject: [PATCH] Remove a /usr/local reference + +--- + src/gdata/Crypto/Util/RFC1751.py | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/src/gdata/Crypto/Util/RFC1751.py b/src/gdata/Crypto/Util/RFC1751.py +index 0a47952..3d487da 100755 +--- a/src/gdata/Crypto/Util/RFC1751.py ++++ b/src/gdata/Crypto/Util/RFC1751.py +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/python ++#!/opt/csw/bin/python + # rfc1751.py : Converts between 128-bit strings and a human-readable + # sequence of words, as defined in RFC1751: "A Convention for + # Human-Readable 128-bit Keys", by Daniel L. McDonald. +-- +1.7.3.2 + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Mon Feb 7 16:35:42 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Mon, 07 Feb 2011 15:35:42 +0000 Subject: [csw-devel] SF.net SVN: gar:[13227] csw/mgar/pkg/lang-python/gdata-python-client/trunk/ Makefile Message-ID: Revision: 13227 http://gar.svn.sourceforge.net/gar/?rev=13227&view=rev Author: wahwah Date: 2011-02-07 15:35:42 +0000 (Mon, 07 Feb 2011) Log Message: ----------- gdata: Removing 2 unused overrides Modified Paths: -------------- csw/mgar/pkg/lang-python/gdata-python-client/trunk/Makefile Modified: csw/mgar/pkg/lang-python/gdata-python-client/trunk/Makefile =================================================================== --- csw/mgar/pkg/lang-python/gdata-python-client/trunk/Makefile 2011-02-07 15:31:44 UTC (rev 13226) +++ csw/mgar/pkg/lang-python/gdata-python-client/trunk/Makefile 2011-02-07 15:35:42 UTC (rev 13227) @@ -23,13 +23,11 @@ SPKG_DESC_CSWpy-gdata = $(DESCRIPTION) INCOMPATIBLE_PKGS_CSWpy-gdata = CSWpygdata ARCHALL_CSWpy-gdata = 1 -CHECKPKG_OVERRIDES_CSWpy-gdata += file-with-bad-content|/usr/local|root/opt/csw/lib/python/site-packages/gdata/Crypto/Util/RFC1751.py PACKAGES += CSWpygdata PKGFILES_CSWpygdata = NOFILES SPKG_DESC_CSWpygdata = Do not release this package ARCHALL_CSWpygdata = 1 -CHECKPKG_OVERRIDES_CSWpygdata += action-class-only-in-pkginfo CHECKPKG_OVERRIDES_CSWpygdata += surplus-dependency|CSWpython include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From janholzh at users.sourceforge.net Mon Feb 7 16:37:32 2011 From: janholzh at users.sourceforge.net (janholzh at users.sourceforge.net) Date: Mon, 07 Feb 2011 15:37:32 +0000 Subject: [csw-devel] SF.net SVN: gar:[13228] csw/mgar/pkg/transmission/trunk/Makefile Message-ID: Revision: 13228 http://gar.svn.sourceforge.net/gar/?rev=13228&view=rev Author: janholzh Date: 2011-02-07 15:37:32 +0000 (Mon, 07 Feb 2011) Log Message: ----------- transmission: fix RUNTIME_DEP Modified Paths: -------------- csw/mgar/pkg/transmission/trunk/Makefile Modified: csw/mgar/pkg/transmission/trunk/Makefile =================================================================== --- csw/mgar/pkg/transmission/trunk/Makefile 2011-02-07 15:35:42 UTC (rev 13227) +++ csw/mgar/pkg/transmission/trunk/Makefile 2011-02-07 15:37:32 UTC (rev 13228) @@ -24,7 +24,6 @@ RUNTIME_DEP_PKGS_CSWtransmissiongtk2 += CSWfconfig RUNTIME_DEP_PKGS_CSWtransmissiongtk2 += CSWftype2 RUNTIME_DEP_PKGS_CSWtransmissiongtk2 += CSWggettextrt -RUNTIME_DEP_PKGS_CSWtransmissiongtk2 += CSWglib2 RUNTIME_DEP_PKGS_CSWtransmissiongtk2 += CSWgtk2 RUNTIME_DEP_PKGS_CSWtransmissiongtk2 += CSWlibatk RUNTIME_DEP_PKGS_CSWtransmissiongtk2 += CSWlibcairo This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From janholzh at users.sourceforge.net Mon Feb 7 16:54:56 2011 From: janholzh at users.sourceforge.net (janholzh at users.sourceforge.net) Date: Mon, 07 Feb 2011 15:54:56 +0000 Subject: [csw-devel] SF.net SVN: gar:[13229] csw/mgar/pkg/transmission/trunk/Makefile Message-ID: Revision: 13229 http://gar.svn.sourceforge.net/gar/?rev=13229&view=rev Author: janholzh Date: 2011-02-07 15:54:56 +0000 (Mon, 07 Feb 2011) Log Message: ----------- transmission: fix RUNTIME_DEP again it does need glib2 Modified Paths: -------------- csw/mgar/pkg/transmission/trunk/Makefile Modified: csw/mgar/pkg/transmission/trunk/Makefile =================================================================== --- csw/mgar/pkg/transmission/trunk/Makefile 2011-02-07 15:37:32 UTC (rev 13228) +++ csw/mgar/pkg/transmission/trunk/Makefile 2011-02-07 15:54:56 UTC (rev 13229) @@ -25,6 +25,7 @@ RUNTIME_DEP_PKGS_CSWtransmissiongtk2 += CSWftype2 RUNTIME_DEP_PKGS_CSWtransmissiongtk2 += CSWggettextrt RUNTIME_DEP_PKGS_CSWtransmissiongtk2 += CSWgtk2 +RUNTIME_DEP_PKGS_CSWtransmissiongtk2 += CSWglib2 RUNTIME_DEP_PKGS_CSWtransmissiongtk2 += CSWlibatk RUNTIME_DEP_PKGS_CSWtransmissiongtk2 += CSWlibcairo RUNTIME_DEP_PKGS_CSWtransmissiongtk2 += CSWlibdbus This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From maciej at opencsw.org Mon Feb 7 17:11:11 2011 From: maciej at opencsw.org (=?UTF-8?Q?Maciej_Blizi=C5=84ski?=) Date: Mon, 7 Feb 2011 16:11:11 +0000 Subject: [csw-devel] SF.net SVN: gar:[13141] csw/mgar/pkg/gettext/trunk/Makefile In-Reply-To: <9120DFA1-2AF2-4A84-A557-B9E97ACDD0D1@opencsw.org> References: <1296999317-sup-5878@pinkfloyd.chass.utoronto.ca> <9120DFA1-2AF2-4A84-A557-B9E97ACDD0D1@opencsw.org> Message-ID: 2011/2/7 Dagobert Michelsen : > Not as general replacement, because there are several issues where there > are valid references to /usr/share etc. I could imagine something like > ?CSW_PATH_REPLACEMENTS_usr-share = $(docdir)/.* $(datadir)/aclocal > ?CSW_PATH_REPLACEMENTS_usr-local = $(docdir)/.* $(datadir)/aclocal $(bindir)/ggettextsize $(infodir)/gettext.info We could omit the _usr-share bit, because we know what we replace. From bwalton at opencsw.org Mon Feb 7 18:21:49 2011 From: bwalton at opencsw.org (Ben Walton) Date: Mon, 07 Feb 2011 12:21:49 -0500 Subject: [csw-devel] SF.net SVN: gar:[13141] csw/mgar/pkg/gettext/trunk/Makefile In-Reply-To: References: <1296999317-sup-5878@pinkfloyd.chass.utoronto.ca> <9120DFA1-2AF2-4A84-A557-B9E97ACDD0D1@opencsw.org> Message-ID: <1297099254-sup-1207@pinkfloyd.chass.utoronto.ca> Excerpts from Maciej Blizi?ski's message of Mon Feb 07 11:11:11 -0500 2011: > 2011/2/7 Dagobert Michelsen : > > Not as general replacement, because there are several issues where there > > are valid references to /usr/share etc. I could imagine something like > > ?CSW_PATH_REPLACEMENTS_usr-share = $(docdir)/.* $(datadir)/aclocal > > ?CSW_PATH_REPLACEMENTS_usr-local = $(docdir)/.* $(datadir)/aclocal $(bindir)/ggettextsize $(infodir)/gettext.info > > We could omit the _usr-share bit, because we know what we replace. We do, but there are possibly cases where you want/need to leave one or the other... Thanks -Ben -- Ben Walton Systems Programmer - CHASS University of Toronto C:416.407.5610 | W:416.978.4302 From bwalton at opencsw.org Mon Feb 7 18:24:08 2011 From: bwalton at opencsw.org (Ben Walton) Date: Mon, 07 Feb 2011 12:24:08 -0500 Subject: [csw-devel] [POLICY] mGAR v2: Use git add -p during makepatch In-Reply-To: References: <1297005220-21029-1-git-send-email-maciej@opencsw.org> <9d6d24c5-b42f-4c5e-884a-ad44736c8ac3@email.android.com> Message-ID: <1297099357-sup-9828@pinkfloyd.chass.utoronto.ca> Excerpts from Maciej Blizi?ski's message of Sun Feb 06 11:36:52 -0500 2011: > Yes. There might also be a problem with use: This is likely due to the 'intelligent' method I used to set the starting patch number in the call to format-patch. It either needs a tweak or a revamp to make it handle this case. I can't remember how I did it though and don't have time to look right now. Thanks -Ben -- Ben Walton Systems Programmer - CHASS University of Toronto C:416.407.5610 | W:416.978.4302 From maciej at opencsw.org Mon Feb 7 18:54:47 2011 From: maciej at opencsw.org (=?UTF-8?Q?Maciej_Blizi=C5=84ski?=) Date: Mon, 7 Feb 2011 17:54:47 +0000 Subject: [csw-devel] [POLICY] mGAR v2: Use git add -p during makepatch In-Reply-To: <1297099357-sup-9828@pinkfloyd.chass.utoronto.ca> References: <1297005220-21029-1-git-send-email-maciej@opencsw.org> <9d6d24c5-b42f-4c5e-884a-ad44736c8ac3@email.android.com> <1297099357-sup-9828@pinkfloyd.chass.utoronto.ca> Message-ID: 2011/2/7 Ben Walton : > Excerpts from Maciej Blizi?ski's message of Sun Feb 06 11:36:52 -0500 2011: > >> Yes. ?There might also be a problem with use: > > This is likely due to the 'intelligent' method I used to set the > starting patch number in the call to format-patch. ?It either needs a > tweak or a revamp to make it handle this case. ?I can't remember how I > did it though and don't have time to look right now. OK. If I test it more and get it to work, I'll send an updated patch with usage instructions. From bonivart at users.sourceforge.net Mon Feb 7 20:11:53 2011 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Mon, 07 Feb 2011 19:11:53 +0000 Subject: [csw-devel] SF.net SVN: gar:[13230] csw/mgar/pkg/clamav/trunk Message-ID: Revision: 13230 http://gar.svn.sourceforge.net/gar/?rev=13230&view=rev Author: bonivart Date: 2011-02-07 19:11:53 +0000 (Mon, 07 Feb 2011) Log Message: ----------- clamav: update to 0.97 Modified Paths: -------------- csw/mgar/pkg/clamav/trunk/Makefile csw/mgar/pkg/clamav/trunk/checksums Added Paths: ----------- csw/mgar/pkg/clamav/trunk/files/CSWclamav.clamav-milter.conf.p csw/mgar/pkg/clamav/trunk/files/CSWclamav.optparser.c.p Modified: csw/mgar/pkg/clamav/trunk/Makefile =================================================================== --- csw/mgar/pkg/clamav/trunk/Makefile 2011-02-07 15:54:56 UTC (rev 13229) +++ csw/mgar/pkg/clamav/trunk/Makefile 2011-02-07 19:11:53 UTC (rev 13230) @@ -1,6 +1,6 @@ NAME = clamav -#VERSION = 0.96.5 -VERSION = 0.97rc +VERSION = 0.97 +#VERSION = 0.97rc #DISTNAME = $(NAME)-devel-latest CATEGORIES = apps @@ -13,7 +13,7 @@ the package is an anti-virus engine available in a form of shared library. endef -SF_PROJ = clamav +#SF_PROJ = clamav #MASTER_SITES = $(SF_MIRRORS) #MASTER_SITES = http://www.clamav.net/snapshot/ MASTER_SITES = http://www.clamav.net/internal/ @@ -46,6 +46,8 @@ PATCHFILES = CSWclamav.freshclam.conf.p PATCHFILES += CSWclamav.clamd.conf.p +PATCHFILES += CSWclamav.clamav-milter.conf.p +PATCHFILES += CSWclamav.optparser.c.p #BUILD64 = 1 PACKAGING_PLATFORMS = solaris9-sparc solaris9-i386 @@ -95,10 +97,10 @@ SPKG_SOURCEURL = http://www.clamav.net +SKIPTEST = 1 TEST_TARGET = check -CHECKPKG_OVERRIDES_CSWclamav += file-with-bad-content|/usr/local|root/opt/csw/sbin/clamd -CHECKPKG_OVERRIDES_CSWclamav += file-with-bad-content|/usr/local|root/opt/csw/sbin/clamav-milter +CHECKPKG_OVERRIDES_CSWclamav += file-with-bad-content|/usr/local|root/etc/opt/csw/clamd.conf.CSW CHECKPKG_OVERRIDES_CSWclamav += file-with-bad-content|/usr/local|root/opt/csw/share/doc/clamav/README CHECKPKG_OVERRIDES_CSWclamav += file-with-bad-content|/usr/local|root/opt/csw/share/doc/clamav/INSTALL.clamav-milter.CSW CHECKPKG_OVERRIDES_CSWclamav += file-with-bad-content|/usr/local|root/opt/csw/share/doc/clamav/ChangeLog @@ -106,18 +108,9 @@ CHECKPKG_OVERRIDES_CSWclamav += file-with-bad-content|/usr/local|root/opt/csw/share/doc/clamav/html/node56.html CHECKPKG_OVERRIDES_CSWclamav += file-with-bad-content|/usr/local|root/opt/csw/share/doc/clamav/html/node24.html CHECKPKG_OVERRIDES_CSWclamav += file-with-bad-content|/usr/local|root/opt/csw/share/doc/clamav/html/node15.html -CHECKPKG_OVERRIDES_CSWclamav += file-with-bad-content|/usr/local|root/opt/csw/bin/sigtool -CHECKPKG_OVERRIDES_CSWclamav += file-with-bad-content|/usr/local|root/opt/csw/bin/clamconf -CHECKPKG_OVERRIDES_CSWclamav += file-with-bad-content|/usr/local|root/opt/csw/bin/clamscan -CHECKPKG_OVERRIDES_CSWclamav += file-with-bad-content|/usr/local|root/opt/csw/bin/clamdtop -CHECKPKG_OVERRIDES_CSWclamav += file-with-bad-content|/usr/local|root/opt/csw/bin/clamdscan -CHECKPKG_OVERRIDES_CSWclamav += file-with-bad-content|/usr/local|root/opt/csw/bin/clambc -CHECKPKG_OVERRIDES_CSWclamav += file-with-bad-content|/usr/local|root/opt/csw/bin/freshclam -CHECKPKG_OVERRIDES_CSWclamav += file-with-bad-content|/usr/local|root/etc/opt/csw/clamd.conf.CSW -CHECKPKG_OVERRIDES_CSWclamav += file-with-bad-content|/usr/local|root/etc/opt/csw/clamav-milter.conf.CSW -CHECKPKG_OVERRIDES_CSWlibclam6 += shared-lib-pkgname-mismatch|file=opt/csw/lib/libclamav.so.6.1.8|soname=libclamav.so.6|pkgname=CSWlibclam6|expected=CSWlibclamav6 -CHECKPKG_OVERRIDES_CSWlibclam6 += shared-lib-pkgname-mismatch|file=opt/csw/lib/libclamunrar.so.6.1.8|soname=libclamunrar.so.6|pkgname=CSWlibclam6|expected=CSWlibclamunrar6 -CHECKPKG_OVERRIDES_CSWlibclam6 += shared-lib-pkgname-mismatch|file=opt/csw/lib/libclamunrar_iface.so.6.1.8|soname=libclamunrar_iface.so.6|pkgname=CSWlibclam6|expected=CSWlibclamunrar-iface6 +CHECKPKG_OVERRIDES_CSWlibclam6 += shared-lib-pkgname-mismatch|file=opt/csw/lib/libclamav.so.6.1.9|soname=libclamav.so.6|pkgname=CSWlibclam6|expected=CSWlibclamav6 +CHECKPKG_OVERRIDES_CSWlibclam6 += shared-lib-pkgname-mismatch|file=opt/csw/lib/libclamunrar.so.6.1.9|soname=libclamunrar.so.6|pkgname=CSWlibclam6|expected=CSWlibclamunrar6 +CHECKPKG_OVERRIDES_CSWlibclam6 += shared-lib-pkgname-mismatch|file=opt/csw/lib/libclamunrar_iface.so.6.1.9|soname=libclamunrar_iface.so.6|pkgname=CSWlibclam6|expected=CSWlibclamunrar-iface6 include gar/category.mk Modified: csw/mgar/pkg/clamav/trunk/checksums =================================================================== --- csw/mgar/pkg/clamav/trunk/checksums 2011-02-07 15:54:56 UTC (rev 13229) +++ csw/mgar/pkg/clamav/trunk/checksums 2011-02-07 19:11:53 UTC (rev 13230) @@ -1 +1 @@ -a48a5eb75d4a616d5fb85e813b329666 clamav-0.97rc.tar.gz +605ed132b2f8e89df11064adea2b183b clamav-0.97.tar.gz Added: csw/mgar/pkg/clamav/trunk/files/CSWclamav.clamav-milter.conf.p =================================================================== --- csw/mgar/pkg/clamav/trunk/files/CSWclamav.clamav-milter.conf.p (rev 0) +++ csw/mgar/pkg/clamav/trunk/files/CSWclamav.clamav-milter.conf.p 2011-02-07 19:11:53 UTC (rev 13230) @@ -0,0 +1,20 @@ +--- /etc/clamav-milter.conf Mon Feb 7 19:09:08 2011 ++++ /etc/clamav-milter.conf Mon Feb 7 19:10:42 2011 +@@ -3,7 +3,7 @@ + ## + + # Comment or remove the line below. +-Example ++#Example + + + ## +@@ -201,7 +201,7 @@ + # Note #3: clamav-milter will wait for the process to exit. Be quick or fork to + # avoid unnecessary delays in email delievery + # Default: disabled +-#VirusAction /usr/local/bin/my_infected_message_handler ++#VirusAction /opt/csw/bin/my_infected_message_handler + + ## + ## Logging options Added: csw/mgar/pkg/clamav/trunk/files/CSWclamav.optparser.c.p =================================================================== --- csw/mgar/pkg/clamav/trunk/files/CSWclamav.optparser.c.p (rev 0) +++ csw/mgar/pkg/clamav/trunk/files/CSWclamav.optparser.c.p 2011-02-07 19:11:53 UTC (rev 13230) @@ -0,0 +1,11 @@ +--- /shared/optparser.c Mon Feb 7 19:06:36 2011 ++++ /shared/optparser.c Mon Feb 7 19:00:11 2011 +@@ -439,7 +439,7 @@ + + { "ReportHostname", NULL, 0, TYPE_STRING, NULL, -1, NULL, 0, OPT_MILTER, "When AddHeader is in use, this option allows to arbitrary set the reported\nhostname. This may be desirable in order to avoid leaking internal names.\nIf unset the real machine name is used.", "my.mail.server.name" }, + +- { "VirusAction", NULL, 0, TYPE_STRING, NULL, -1, NULL, 0, OPT_MILTER, "Execute a command when an infected message is processed.\nThe following parameters are passed to the invoked program in this order:\nvirus name, queue id, sender, destination, subject, message id, message date.\nNote #1: this requires MTA macroes to be available (see LogInfected below)\nNote #2: the process is invoked in the context of clamav-milter\nNote #3: clamav-milter will wait for the process to exit. Be quick or fork to\navoid unnecessary delays in email delievery", "/usr/local/bin/my_infected_message_handler" }, ++ { "VirusAction", NULL, 0, TYPE_STRING, NULL, -1, NULL, 0, OPT_MILTER, "Execute a command when an infected message is processed.\nThe following parameters are passed to the invoked program in this order:\nvirus name, queue id, sender, destination, subject, message id, message date.\nNote #1: this requires MTA macroes to be available (see LogInfected below)\nNote #2: the process is invoked in the context of clamav-milter\nNote #3: clamav-milter will wait for the process to exit. Be quick or fork to\navoid unnecessary delays in email delievery", "/opt/csw/bin/my_infected_message_handler" }, + + { "Chroot", NULL, 0, TYPE_STRING, NULL, -1, NULL, 0, OPT_MILTER, "Chroot to the specified directory.\nChrooting is performed just after reading the config file and before\ndropping privileges.", "/newroot" }, + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From chninkel at users.sourceforge.net Mon Feb 7 23:45:02 2011 From: chninkel at users.sourceforge.net (chninkel at users.sourceforge.net) Date: Mon, 07 Feb 2011 22:45:02 +0000 Subject: [csw-devel] SF.net SVN: gar:[13231] csw/mgar/pkg/cyrus_imapd/trunk Message-ID: Revision: 13231 http://gar.svn.sourceforge.net/gar/?rev=13231&view=rev Author: chninkel Date: 2011-02-07 22:45:02 +0000 (Mon, 07 Feb 2011) Log Message: ----------- cyrus_imapd: upgraded to 2.4.6 Modified Paths: -------------- csw/mgar/pkg/cyrus_imapd/trunk/Makefile csw/mgar/pkg/cyrus_imapd/trunk/checksums csw/mgar/pkg/cyrus_imapd/trunk/files/0001-Force-linkage-to-libperl.so.patch csw/mgar/pkg/cyrus_imapd/trunk/files/cyrus_imapd.changelog.CSW csw/mgar/pkg/cyrus_imapd/trunk/files/cyrus_imapd_utils.changelog.CSW csw/mgar/pkg/cyrus_imapd/trunk/files/pm_cyrus.changelog.CSW Modified: csw/mgar/pkg/cyrus_imapd/trunk/Makefile =================================================================== --- csw/mgar/pkg/cyrus_imapd/trunk/Makefile 2011-02-07 19:11:53 UTC (rev 13230) +++ csw/mgar/pkg/cyrus_imapd/trunk/Makefile 2011-02-07 22:45:02 UTC (rev 13231) @@ -13,7 +13,7 @@ ###### Package information ####### NAME = cyrus_imapd -VERSION = 2.3.16 +VERSION = 2.4.6 CATEGORIES = server DESCRIPTION = Pop and Imap server from the Cyrus mail system @@ -33,12 +33,12 @@ SPKG_DESC_CSWcyrusimapd = Pop and Imap server from the Cyrus mail system CATALOGNAME_CSWcyrusimapd = cyrus_imapd -RUNTIME_DEP_PKGS_CSWcyrusimapd = CSWosslrt CSWsasl CSWbdb42 CSWkrb5lib CSWnetsnmp CSWpcrert CSWzlib CSWtcpwrap +RUNTIME_DEP_PKGS_CSWcyrusimapd = CSWosslrt CSWsasl CSWbdb42 CSWkrb5lib CSWnetsnmp CSWzlib CSWtcpwrap #SPKG_CLASSES_CSWcyrusimapd = none services cswpreserveconf cswinitsmf SPKG_DESC_CSWcyrusimapdutils = Various admin utilities for Cyrus Imapd/Popd CATALOGNAME_CSWcyrusimapdutils = cyrus_imapd_utils -RUNTIME_DEP_PKGS_CSWcyrusimapdutils = CSWpmcyrus CSWosslrt CSWsasl CSWbdb42 CSWkrb5lib CSWpcrert CSWzlib +RUNTIME_DEP_PKGS_CSWcyrusimapdutils = CSWpmcyrus CSWosslrt CSWsasl CSWbdb42 CSWkrb5lib CSWzlib #SPKG_CLASSES_CSWcyrusimapdutils = none SPKG_DESC_CSWpmcyrus = Perl interface to Cyrus Imap functions @@ -81,9 +81,13 @@ CHECKPKG_OVERRIDES_CSWcyrusimapdutils += surplus-dependency|CSWpmcyrus +# Don't how to properly solve this now +CHECKPKG_OVERRIDES_CSWcyrusimapd += file-collision|/opt/csw/share/man/man8/imapd.8|CSWcourierimap|CSWcyrusimapd + + ###### Upstream and opencsw files information ####### -MASTER_SITES = ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ http://email.uoa.gr/download/cyrus/cyrus-imapd-$(VERSION)/ +MASTER_SITES = ftp://ftp.cyrusimap.org/cyrus-imapd/ http://email.uoa.gr/download/cyrus/cyrus-imapd-$(VERSION)/ http://www.vx.sk/download/patches/cyrus-imapd/ # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(shell echo $(NAME) | tr '_' '-')-(\d+(?:\.\d+)*).tar.gz @@ -111,17 +115,15 @@ # taken from the krb5 source. DISTFILES += compile_et et_c.awk et_h.awk -# le fichier install-upgrade de cyrus 2.3.11 est incomplet -DISTFILES += install-upgrade - # University of Athens patchs to allow autocreation of mailboxes # and autocreation of sub-lolders for filter rules -PATCHFILES = cyrus-imapd-$(VERSION)-autocreate-0.10-0.diff cyrus-imapd-$(VERSION)-autosieve-0.6.0.diff +#PATCHFILES = cyrus-imapd-$(VERSION)-autocreate-0.10-0.diff cyrus-imapd-$(VERSION)-autosieve-0.6.0.diff +PATCHFILES = cyrus-imapd-2.4.4-autocreate-0.10-0.patch cyrus-imapd-2.4.4-autosieve-0.6.0.patch # This patch makes cyrus more tolerant with mails containing # invalid From headers # This avoids "Invalid Message header" error messages -PATCHFILES += cyrus-imapd-acceptinvalidfrom.patch +#PATCHFILES += cyrus-imapd-acceptinvalidfrom.patch # This patch makes cyrus more tolerant with mails containing # contains bare newlines @@ -167,6 +169,7 @@ CONFIGURE_ARGS += --enable-replication CONFIGURE_ARGS += --with-snmp=$(prefix) CONFIGURE_ARGS += --with-libwrap=$(prefix) +CONFIGURE_ARGS += --disable-nntp # we add the args so perl libraries are installed # in the correct path @@ -181,9 +184,6 @@ # compile_et is missing so we want our to be used CONFIGURE_ENV += COMPILE_ET="$(CURDIR)/files/compile_et -d $(CURDIR)/files/" -pre-patch: - cp $(WORKDIR)/install-upgrade $(WORKSRC)/doc/text - pre-configure-modulated: # master is a too common name, so we rename it cyrus-master cp $(WORKSRC)/man/master.8 $(WORKSRC)/man/cyrus-master.8 @@ -193,7 +193,7 @@ perl -pi -e 's/(cyrus-)?master/cyrus-master/' $(WORKSRC)/master/Makefile.in # we delete autogenerated error files to force regeneration - find $(WORKSRC) \( -name "*_err.c" -o -name "*_err.h" \) ! -name "com_err.*" -exec rm {} \; + # find $(WORKSRC) \( -name "*_err.c" -o -name "*_err.h" \) ! -name "com_err.*" -exec rm {} \; @$(MAKECOOKIE) @@ -213,7 +213,11 @@ mkdir -p $(PKGROOT)/$(prefix)/share/doc/cyrus_imapd @$(MAKECOOKIE) -post-merge: +post-merge: fix2build install-tools cyrus-rename install-docs libexec-in-sbin install-cyrus-directory install-additional-files + + +# Let's install the files +install-additional-files: # we provide our class action scripts to modify /etc/inet/services ginstall -D $(WORKDIR_FIRSTMOD)/services $(PKGROOT)/etc/opt/csw/pkg/CSWcyrusimapd/services @@ -223,51 +227,78 @@ ginstall -D "$(WORKDIR_FIRSTMOD)/imapd.conf" "$(PKGROOT)/$(sysconfdir)/cyrus/imapd.conf.CSW" ginstall -D "$(WORKDIR_FIRSTMOD)/cyrus.conf" "$(PKGROOT)/$(sysconfdir)/cyrus/cyrus.conf.CSW" + @$(MAKECOOKIE) + + +# Some binaries put under libexec/cyrus should be put under sbin +# to be more easily used +libexec-in-sbin: ( cd "$(PKGROOT)$(libexecdir)/cyrus/" && \ for E in *; do \ echo $(CYRUS_DAEMONS) | grep -w $$E >/dev/null && continue; \ [ -L $$E ] || ( mv -f $$E ../../sbin/$$E && ln -sf ../../sbin/$$E ); \ done ) + @$(MAKECOOKIE) - # let's create the directory structure where mails - # and other cyrus stuffs will be stored + +# let's create the directory structure where mails +# and other cyrus stuffs will be stored +install-cyrus-directory: for D in sieve config/proc config/db config/socket config/log \ config/msg config/ptclient mail mail/stage.; do \ mkdir -p "$(PKGROOT)/$(localstatedir)/cyrus/$$D"; \ done + @$(MAKECOOKIE) - # we install binary under tools as part of the package + + +# Some fixes and cleaning to correctly build the package +fix2build: + # we fix some permission problems + chmod -R u+w "$(PKGROOT)/" + + # let's remove pod files + gfind $(PKGROOT) -name "perllocal.pod" -exec rm '{}' ';' + # and CVS directories + gfind $(PKGROOT) -depth -type d -name "CVS" -exec rm -rf '{}' ';' + + # We remove fetchnews man and doc page as we did not build nntp support + # and as it clashes with leafnode + rm -f $(PKGROOT)$(mandir)/man8/fetchnews.8 + rm -f $(PKGROOT)$(docdir)/cyrus_imapd/man/fetchnews.8.html + + @$(MAKECOOKIE) + + +# we rename some tools with too generic names +cyrus-rename: + mv $(PKGROOT)/$(sbindir)/mkimap $(PKGROOT)/$(sbindir)/mkdirs + ( for FILE in mkdirs mknewsgroups dohash undohash rehash; do \ + mv $(PKGROOT)/$(sbindir)/$$FILE $(PKGROOT)/$(sbindir)/cyrus-$$FILE; \ + done ) + @$(MAKECOOKIE) + + +# we install the documentation +install-docs: + cp -r $(WORKSRC_FIRSTMOD)/doc/* $(PKGROOT)/$(docdir)/cyrus_imapd + ( for PKG in cyrus_imapd cyrus_imapd_utils pm_cyrus; do \ + ginstall -D $(WORKDIR_FIRSTMOD)/$$PKG.changelog.CSW $(PKGROOT)/$(docdir)/$$PKG/changelog.CSW; \ + ginstall -D $(WORKDIR_FIRSTMOD)/README.CSW $(PKGROOT)/$(docdir)/$$PKG/README.CSW; \ + done ) + @$(MAKECOOKIE) + +# we install binary under tools as part of the package +install-tools: cp -r $(WORKSRC_FIRSTMOD)/tools/* $(PKGROOT)$(sbindir) [ -f "$(PKGROOT)$(sbindir)/arbitronsort.pl" ] && mv "$(PKGROOT)$(sbindir)/arbitronsort.pl" "$(PKGROOT)$(sbindir)/arbitronsort" for F in config2header config2man not-mkdep migrate-metadata mupdate-loadgen.pl upgradesieve convert-sieve.pl; do \ rm -f $(PKGROOT)$(sbindir)/$$F; \ done - # we want perl script to use opencsw perl + # we want perl scripts to use opencsw perl perl -pi -e 's/exec\s+perl/exec \/opt\/csw\/bin\/perl/g' $(PKGROOT)$(sbindir)/* $(PKGROOT)$(bindir)/* - ( for FILE in convert-sieve.pl mupdate-loadgen.pl translatesieve undohash upgradesieve arbitronsort; do \ + ( for FILE in translatesieve undohash arbitronsort; do \ perl -pi -e 's/^#!\/usr\/(local\/)?bin\/perl/#!\/usr\/bin\/perl/' $(PKGROOT)$(sbindir)/$$FILE; \ done ) - - # we install the documentation - cp -r $(WORKSRC_FIRSTMOD)/doc/* $(PKGROOT)/$(docdir)/cyrus_imapd - ( for PKG in cyrus_imapd cyrus_imapd_utils pm_cyrus; do \ - ginstall -D $(WORKDIR_FIRSTMOD)/$$PKG.changelog.CSW $(PKGROOT)/$(docdir)/$$PKG/changelog.CSW; \ - ginstall -D $(WORKDIR_FIRSTMOD)/README.CSW $(PKGROOT)/$(docdir)/$$PKG/README.CSW; \ - done ) - - # we rename some tools with too generic names - mv $(PKGROOT)/$(sbindir)/mkimap $(PKGROOT)/$(sbindir)/mkdirs - ( for FILE in mkdirs mknewsgroups dohash undohash rehash; do \ - mv $(PKGROOT)/$(sbindir)/$$FILE $(PKGROOT)/$(sbindir)/cyrus-$$FILE; \ - done ) - - # we fix some permission problems - chmod -R u+w "$(PKGROOT)/" - - # let's remove pod files - gfind $(PKGROOT)$(perllib) -name "perllocal.pod" -exec rm '{}' ';' - # and CVS directories - gfind $(PKGROOT) -depth -type d -name "CVS" -exec rm -rf '{}' ';' - @$(MAKECOOKIE) Modified: csw/mgar/pkg/cyrus_imapd/trunk/checksums =================================================================== --- csw/mgar/pkg/cyrus_imapd/trunk/checksums 2011-02-07 19:11:53 UTC (rev 13230) +++ csw/mgar/pkg/cyrus_imapd/trunk/checksums 2011-02-07 22:45:02 UTC (rev 13231) @@ -1,27 +1,3 @@ -c86246806025404625c98a2348d0739d 0001-Force-linkage-to-libperl.so.patch -585646739e9403c02e868900ebed892a CSWcyrusimapd.checkinstall -5111a5573aa6d4878b852780aeae8a27 CSWcyrusimapd.preinstall -940d00efcc42b92f05e92e6dd2764f61 CSWcyrusimapd.prototype -7e99e825a1d6b134b91392beec1807f4 CSWcyrusimapdutils.prototype -404a6d2b6608c26aaef4e37095200105 CSWpmcyrus.prototype -d0b97b33e75ac75f89ee6236a2d53f05 README.CSW -9cbebaeeafa6eb3320eafa594c253bc1 compile_et -1c2b850f7a264704eefec741a75977ab cswcyrus -628c5cf5f5b01f9e173e090ee0c969aa cswcyrus.xml -98b88f89e72bbabfd3da35fc94809247 cyrus-imapd-2.3.16-autocreate-0.10-0.diff -bb5171a5824f600b8a41cb00ab36cf02 cyrus-imapd-2.3.16-autosieve-0.6.0.diff -6a37feb1985974eee8a4a4b2932dd54c cyrus-imapd-2.3.16.tar.gz -b4c99489eacf0fb7befeef5e3098a5c1 cyrus-imapd-2.3.7-nobarenewlinescheck.patch -6127a7b62ec4679a54985f6a2d915e52 cyrus-imapd-acceptinvalidfrom.patch -fdb3416ec41f3a56d1594ca25a6dcd7d cyrus.conf -20ed8433b045ef9c55a5c4e05a228ce7 cyrus_imapd.changelog.CSW -51011023b9b2474a6d5d7aefae54b812 cyrus_imapd_utils.changelog.CSW -5375c25c8bc325a90553d0be87a64a04 et_c.awk -d1d86e61463a1dfefccbadedb11a8604 et_h.awk -79211aee56db01e15566ced1ba4078da i.services -908dbf764d3ccd541c4de881ac81a6ae imapd.conf -14bb6e8c6d6914351f80df293982e88a install-upgrade -9178809b3f1f7698725346d56c37049a pm_cyrus.changelog.CSW -149ac6b6d82ef9ef4bb1b314f1a1cac4 r.services -dce627f9a464ae4efe8a66c8dbd358d5 restore_allowplaintext_default.patch -6dfee20f7c02139350caf9f75199e587 services +81126a0e0ca7c8f099e8de8d4ee4b6fb cyrus-imapd-2.4.4-autocreate-0.10-0.patch +84ceba44f5a2b834e95ba1b4eaee6900 cyrus-imapd-2.4.4-autosieve-0.6.0.patch +c37b06ce2419734d8edf3d67004e5b0c cyrus-imapd-2.4.6.tar.gz Modified: csw/mgar/pkg/cyrus_imapd/trunk/files/0001-Force-linkage-to-libperl.so.patch =================================================================== --- csw/mgar/pkg/cyrus_imapd/trunk/files/0001-Force-linkage-to-libperl.so.patch 2011-02-07 19:11:53 UTC (rev 13230) +++ csw/mgar/pkg/cyrus_imapd/trunk/files/0001-Force-linkage-to-libperl.so.patch 2011-02-07 22:45:02 UTC (rev 13231) @@ -1,18 +1,7 @@ -From 46de9238dc1925a468812b315e9095600279c33f Mon Sep 17 00:00:00 2001 -From: Dagobert Michelsen -Date: Wed, 24 Feb 2010 15:17:57 +0100 -Subject: [PATCH] Force linkage to libperl.so - ---- - perl/imap/Makefile.PL | 2 +- - perl/sieve/managesieve/Makefile.PL | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/perl/imap/Makefile.PL b/perl/imap/Makefile.PL -index 27ae4ca..ea8080f 100644 ---- a/perl/imap/Makefile.PL -+++ b/perl/imap/Makefile.PL -@@ -65,7 +65,7 @@ WriteMakefile( +diff -ur cyrus-imapd-2.4.4/perl/imap/Makefile.PL cyrus-imapd-2.4.4.new/perl/imap/Makefile.PL +--- cyrus-imapd-2.4.4/perl/imap/Makefile.PL 2010-11-11 23:15:33.000000000 +0100 ++++ cyrus-imapd-2.4.4.new/perl/imap/Makefile.PL 2010-11-21 22:36:28.368907061 +0100 +@@ -65,7 +65,7 @@ 'clean' => {'FILES' => 'libcyrperl.a cyradm'}, 'OBJECT' => 'IMAP.o', 'MYEXTLIB' => '../../lib/libcyrus.a ../../lib/libcyrus_min.a', @@ -21,11 +10,10 @@ 'DEFINE' => '-DPERL_POLLUTE', # e.g., '-DHAVE_SOMETHING' 'INC' => "-I../../lib -I../.. -I../../com_err/et $SASL_INC $OPENSSL_INC", 'EXE_FILES' => [cyradm], -diff --git a/perl/sieve/managesieve/Makefile.PL b/perl/sieve/managesieve/Makefile.PL -index b577f4c..a32ffb8 100644 ---- a/perl/sieve/managesieve/Makefile.PL -+++ b/perl/sieve/managesieve/Makefile.PL -@@ -62,7 +62,7 @@ WriteMakefile( +diff -ur cyrus-imapd-2.4.4/perl/sieve/managesieve/Makefile.PL cyrus-imapd-2.4.4.new/perl/sieve/managesieve/Makefile.PL +--- cyrus-imapd-2.4.4/perl/sieve/managesieve/Makefile.PL 2010-11-11 23:15:33.000000000 +0100 ++++ cyrus-imapd-2.4.4.new/perl/sieve/managesieve/Makefile.PL 2010-11-21 22:36:09.746290674 +0100 +@@ -62,7 +62,7 @@ 'ABSTRACT' => 'Cyurs Sieve management interface', 'VERSION_FROM' => 'managesieve.pm', # finds $VERSION 'MYEXTLIB' => '../lib/isieve.o ../lib/lex.o ../lib/mystring.o ../lib/request.o ../../../lib/libcyrus.a ../../../lib/libcyrus_min.a', @@ -34,6 +22,3 @@ 'DEFINE' => '-DPERL_POLLUTE', # e.g., '-DHAVE_SOMETHING' 'INC' => "-I../lib/ -I../../../lib/ $SASL_INC $OPENSSL_INC", ); --- -1.6.5.1 - Modified: csw/mgar/pkg/cyrus_imapd/trunk/files/cyrus_imapd.changelog.CSW =================================================================== --- csw/mgar/pkg/cyrus_imapd/trunk/files/cyrus_imapd.changelog.CSW 2011-02-07 19:11:53 UTC (rev 13230) +++ csw/mgar/pkg/cyrus_imapd/trunk/files/cyrus_imapd.changelog.CSW 2011-02-07 22:45:02 UTC (rev 13231) @@ -1,3 +1,17 @@ +cyrus_imapd (2.4.6,rev=2011.02.07) unstable + + * New upstream version. + + -- Yann Rouillard Mon, 07 Feb 2011 21:39:09 +0100 + +cyrus_imapd (2.4.5,REV=2010.12.18) unstable + + * New upstream version. + * Removed fetchnews man and doc page as nntp support is not enabled. + * Removed cyrus-imapd-acceptinvalidfrom.patch patch applied upstream. + + -- Yann Rouillard Sun, 18 Dec 2010 17:28:34 +0100 + cyrus_imapd (2.3.16,REV=2010.11.21) unstable * Added missing zlib dependancy. @@ -2,3 +16,3 @@ * Moved configuration from /opt/csw/etc/cyrus to /etc/opt/csw/cyrus/. - * Moved default cyrus directiry from /opt/csw/var/cyrus to /var/opt/csw/cyrus. + * Moved default cyrus directory from /opt/csw/var/cyrus to /var/opt/csw/cyrus. * [gar] switched do dynamic prototype. Modified: csw/mgar/pkg/cyrus_imapd/trunk/files/cyrus_imapd_utils.changelog.CSW =================================================================== --- csw/mgar/pkg/cyrus_imapd/trunk/files/cyrus_imapd_utils.changelog.CSW 2011-02-07 19:11:53 UTC (rev 13230) +++ csw/mgar/pkg/cyrus_imapd/trunk/files/cyrus_imapd_utils.changelog.CSW 2011-02-07 22:45:02 UTC (rev 13231) @@ -1,5 +1,17 @@ -cyrus_imapd\xC3_utils (2.3.16,REV=2010.11.21) unstable +cyrus_imapd_utils (2.4.6,rev=2011.02.07) unstable + * New upstream version. + + -- Yann Rouillard Mon, 07 Feb 2011 21:39:09 +0100 + +cyrus_imapd_utils (2.4.5,REV=2010.12.18) unstable + + * New upstream version. + + -- Yann Rouillard Sun, 18 Dec 2010 17:28:34 +0100 + +cyrus_imapd_utils (2.3.16,REV=2010.11.21) unstable + * Added missing zlib dependancy. * [gar] switched do dynamic prototype. Modified: csw/mgar/pkg/cyrus_imapd/trunk/files/pm_cyrus.changelog.CSW =================================================================== --- csw/mgar/pkg/cyrus_imapd/trunk/files/pm_cyrus.changelog.CSW 2011-02-07 19:11:53 UTC (rev 13230) +++ csw/mgar/pkg/cyrus_imapd/trunk/files/pm_cyrus.changelog.CSW 2011-02-07 22:45:02 UTC (rev 13231) @@ -1,3 +1,15 @@ +pm_cyrus (2.4.6,rev=2011.02.07) unstable + + * New upstream version. + + -- Yann Rouillard Mon, 07 Feb 2011 21:39:09 +0100 + +pm_cyrus (2.4.5,REV=2010.12.18) unstable + + * New upstream version. + + -- Yann Rouillard Sun, 18 Dec 2010 17:28:34 +0100 + pm_cyrus (2.3.16,REV=2010.11.21) unstable * Added missing zlib dependancy. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Tue Feb 8 10:01:58 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Tue, 08 Feb 2011 09:01:58 +0000 Subject: [csw-devel] SF.net SVN: gar:[13232] csw/mgar/gar/v2/lib/python/package_checks.py Message-ID: Revision: 13232 http://gar.svn.sourceforge.net/gar/?rev=13232&view=rev Author: wahwah Date: 2011-02-08 09:01:58 +0000 (Tue, 08 Feb 2011) Log Message: ----------- checkpkg: Messages for obsolete deps Instead of using logging, use the dedicated messenger object. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/package_checks.py Modified: csw/mgar/gar/v2/lib/python/package_checks.py =================================================================== --- csw/mgar/gar/v2/lib/python/package_checks.py 2011-02-07 22:45:02 UTC (rev 13231) +++ csw/mgar/gar/v2/lib/python/package_checks.py 2011-02-08 09:01:58 UTC (rev 13232) @@ -438,7 +438,7 @@ msg += "URL: %s" % OBSOLETE_DEPS[obsolete_pkg]["url"] if not msg: msg = None - logger.info(msg) + messenger.Message(msg) def CheckArchitectureVsContents(pkg_data, error_mgr, logger, messenger): This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Tue Feb 8 11:08:54 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Tue, 08 Feb 2011 10:08:54 +0000 Subject: [csw-devel] SF.net SVN: gar:[13233] csw/mgar/gar/v2/lib/web Message-ID: Revision: 13233 http://gar.svn.sourceforge.net/gar/?rev=13233&view=rev Author: wahwah Date: 2011-02-08 10:08:54 +0000 (Tue, 08 Feb 2011) Log Message: ----------- pkgdb-web: Error tags available to browse A little bit of lower-level SQLObject use allowed to list all error tags even though there's no dedicated error tag name class. Modified Paths: -------------- csw/mgar/gar/v2/lib/web/pkgdb_web.py csw/mgar/gar/v2/lib/web/templates/ErrorTagList.html csw/mgar/gar/v2/lib/web/templates/index.html Added Paths: ----------- csw/mgar/gar/v2/lib/web/templates/CatalognameList.html csw/mgar/gar/v2/lib/web/templates/ErrorTagDetail.html Modified: csw/mgar/gar/v2/lib/web/pkgdb_web.py =================================================================== --- csw/mgar/gar/v2/lib/web/pkgdb_web.py 2011-02-08 09:01:58 UTC (rev 13232) +++ csw/mgar/gar/v2/lib/web/pkgdb_web.py 2011-02-08 10:08:54 UTC (rev 13233) @@ -10,6 +10,7 @@ from lib.python import pkgdb from lib.python import checkpkg_lib import datetime +from sqlobject import sqlbuilder urls = ( r'/', 'index', @@ -22,7 +23,10 @@ r'/maintainers/(\d+)/', 'MaintainerDetail', r'/maintainers/(\d+)/checkpkg/', 'MaintainerCheckpkgReport', r'/error-tags/', 'ErrorTagList', + r'/error-tags/([^/]+)/', 'ErrorTagDetail', + r'/catalognames/', 'CatalognameList', r'/catalognames/([^/]+)/', 'Catalogname', + r'/error-tags/', 'ErrorTagList', r'/rest/catalogs/([^/]+)/([^/]+)/([^/]+)/', 'Catalogs', r'/rest/catalogs/([^/]+)/([^/]+)/([^/]+)/pkgname-by-filename', 'PkgnameByFilename', @@ -94,6 +98,22 @@ raise web.notfound() +class CatalognameList(object): + def GET(self): + ConnectToDatabase() + try: + connection = models.Srv4FileStats._connection + rows = connection.queryAll(connection.sqlrepr( + sqlbuilder.Select( + [models.Srv4FileStats.q.catalogname], + distinct=True, + where=(models.Srv4FileStats.q.use_to_generate_catalogs==True), + orderBy=models.Srv4FileStats.q.catalogname))) + return render.CatalognameList(rows) + except sqlobject.main.SQLObjectNotFound, e: + raise web.notfound() + + class Srv4DetailFiles(object): def GET(self, md5_sum): ConnectToDatabase() @@ -170,13 +190,23 @@ return render.MaintainerCheckpkgReport(maintainer, pkgs, tags_by_md5) +class ErrorTagDetail(object): + def GET(self, tag_name): + ConnectToDatabase() + # TODO: Select only tags of registered packages + tags = models.CheckpkgErrorTag.selectBy(tag_name=tag_name) + return render.ErrorTagDetail(tag_name, tags) + class ErrorTagList(object): def GET(self): ConnectToDatabase() - # Find all tag names - # tag_names = models.CheckpkgErrorTag.select().distinct() - tag_names = ['foo'] - return render.ErrorTagList(tag_names) + connection = models.CheckpkgErrorTag._connection + rows = connection.queryAll(connection.sqlrepr( + sqlbuilder.Select( + [models.CheckpkgErrorTag.q.tag_name], + distinct=True, + orderBy=models.CheckpkgErrorTag.q.tag_name))) + return render.ErrorTagList(rows) class Catalogs(object): Added: csw/mgar/gar/v2/lib/web/templates/CatalognameList.html =================================================================== --- csw/mgar/gar/v2/lib/web/templates/CatalognameList.html (rev 0) +++ csw/mgar/gar/v2/lib/web/templates/CatalognameList.html 2011-02-08 10:08:54 UTC (rev 13233) @@ -0,0 +1,28 @@ +$def with (catalognames) + + + + Catalognames + + + + + + + + Added: csw/mgar/gar/v2/lib/web/templates/ErrorTagDetail.html =================================================================== --- csw/mgar/gar/v2/lib/web/templates/ErrorTagDetail.html (rev 0) +++ csw/mgar/gar/v2/lib/web/templates/ErrorTagDetail.html 2011-02-08 10:08:54 UTC (rev 13233) @@ -0,0 +1,19 @@ +$def with (tag_name, tags) + + + + $tag_name + + + +

$tag_name

+ + + Modified: csw/mgar/gar/v2/lib/web/templates/ErrorTagList.html =================================================================== --- csw/mgar/gar/v2/lib/web/templates/ErrorTagList.html 2011-02-08 09:01:58 UTC (rev 13232) +++ csw/mgar/gar/v2/lib/web/templates/ErrorTagList.html 2011-02-08 10:08:54 UTC (rev 13233) @@ -2,16 +2,14 @@ - OpenCSW Maintainers + Checkpkg error tags Modified: csw/mgar/gar/v2/lib/web/templates/index.html =================================================================== --- csw/mgar/gar/v2/lib/web/templates/index.html 2011-02-08 09:01:58 UTC (rev 13232) +++ csw/mgar/gar/v2/lib/web/templates/index.html 2011-02-08 10:08:54 UTC (rev 13233) @@ -16,6 +16,12 @@
  • Maintainer list
  • +
  • + Catalogname list +
  • +
  • + Error tags +
  • This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Tue Feb 8 16:02:58 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Tue, 08 Feb 2011 15:02:58 +0000 Subject: [csw-devel] SF.net SVN: gar:[13234] csw/mgar/pkg/unixodbc/trunk/Makefile Message-ID: Revision: 13234 http://gar.svn.sourceforge.net/gar/?rev=13234&view=rev Author: wahwah Date: 2011-02-08 15:02:57 +0000 (Tue, 08 Feb 2011) Log Message: ----------- unixodbc: -dev, deps and unused overrides Modified Paths: -------------- csw/mgar/pkg/unixodbc/trunk/Makefile Modified: csw/mgar/pkg/unixodbc/trunk/Makefile =================================================================== --- csw/mgar/pkg/unixodbc/trunk/Makefile 2011-02-08 10:08:54 UTC (rev 13233) +++ csw/mgar/pkg/unixodbc/trunk/Makefile 2011-02-08 15:02:57 UTC (rev 13234) @@ -31,13 +31,14 @@ PACKAGES += CSWunixodbc SPKG_DESC_CSWunixodbc = $(DESCRIPTION) -CHECKPKG_OVERRIDES_CSWunixodbc += surplus-dependency|CSWlibodbcinst1 -CHECKPKG_OVERRIDES_CSWunixodbc += surplus-dependency|CSWlibodbc1 -PACKAGES += CSWunixodbc-devel -CATALOGNAME_CSWunixodbc-devel = unixodbc_devel -SPKG_DESC_CSWunixodbc-devel = $(DESCRIPTION), development files -PKGFILES_CSWunixodbc-devel = $(PKGFILES_DEVEL) +PACKAGES += CSWunixodbc-dev +CATALOGNAME_CSWunixodbc-dev = unixodbc_dev +SPKG_DESC_CSWunixodbc-dev = $(DESCRIPTION), development files +PKGFILES_CSWunixodbc-dev = $(PKGFILES_DEVEL) +RUNTIME_DEP_PKGS_CSWunixodbc-dev += CSWlibodbc1 +RUNTIME_DEP_PKGS_CSWunixodbc-dev += CSWlibodbccr1 +RUNTIME_DEP_PKGS_CSWunixodbc-dev += CSWlibodbcinst1 PACKAGES += CSWlibodbc1 SPKG_DESC_CSWlibodbc1 = $(DESCRIPTION), libodbc.so.1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Tue Feb 8 19:57:28 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Tue, 08 Feb 2011 18:57:28 +0000 Subject: [csw-devel] SF.net SVN: gar:[13235] csw/mgar/gar/v2/lib/web/pkgdb_web.py Message-ID: Revision: 13235 http://gar.svn.sourceforge.net/gar/?rev=13235&view=rev Author: wahwah Date: 2011-02-08 18:57:27 +0000 (Tue, 08 Feb 2011) Log Message: ----------- pkgdb-web: Display only registered packages Modified Paths: -------------- csw/mgar/gar/v2/lib/web/pkgdb_web.py Modified: csw/mgar/gar/v2/lib/web/pkgdb_web.py =================================================================== --- csw/mgar/gar/v2/lib/web/pkgdb_web.py 2011-02-08 15:02:57 UTC (rev 13234) +++ csw/mgar/gar/v2/lib/web/pkgdb_web.py 2011-02-08 18:57:27 UTC (rev 13235) @@ -107,7 +107,9 @@ sqlbuilder.Select( [models.Srv4FileStats.q.catalogname], distinct=True, - where=(models.Srv4FileStats.q.use_to_generate_catalogs==True), + where=sqlobject.AND( + models.Srv4FileStats.q.use_to_generate_catalogs==True, + models.Srv4FileStats.q.registered==True), orderBy=models.Srv4FileStats.q.catalogname))) return render.CatalognameList(rows) except sqlobject.main.SQLObjectNotFound, e: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Tue Feb 8 19:58:05 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Tue, 08 Feb 2011 18:58:05 +0000 Subject: [csw-devel] SF.net SVN: gar:[13236] csw/mgar/gar/v2/lib/web/pkgdb_web.py Message-ID: Revision: 13236 http://gar.svn.sourceforge.net/gar/?rev=13236&view=rev Author: wahwah Date: 2011-02-08 18:58:05 +0000 (Tue, 08 Feb 2011) Log Message: ----------- pkgdb-web: Sort error tags by srv4 basename Sort by srv4 basename, and by tag_info. Also, only display registered packages. Modified Paths: -------------- csw/mgar/gar/v2/lib/web/pkgdb_web.py Modified: csw/mgar/gar/v2/lib/web/pkgdb_web.py =================================================================== --- csw/mgar/gar/v2/lib/web/pkgdb_web.py 2011-02-08 18:57:27 UTC (rev 13235) +++ csw/mgar/gar/v2/lib/web/pkgdb_web.py 2011-02-08 18:58:05 UTC (rev 13236) @@ -195,8 +195,19 @@ class ErrorTagDetail(object): def GET(self, tag_name): ConnectToDatabase() - # TODO: Select only tags of registered packages - tags = models.CheckpkgErrorTag.selectBy(tag_name=tag_name) + join = [ + sqlbuilder.INNERJOINOn(None, + models.Srv4FileStats, + models.CheckpkgErrorTag.q.srv4_file==models.Srv4FileStats.q.id), + ] + tags = models.CheckpkgErrorTag.select( + sqlobject.AND( + models.CheckpkgErrorTag.q.tag_name==tag_name, + models.Srv4FileStats.q.registered==True, + models.Srv4FileStats.q.use_to_generate_catalogs==True, + ), + join=join, + ).orderBy(('basename', 'tag_info')) return render.ErrorTagDetail(tag_name, tags) class ErrorTagList(object): This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From chninkel at users.sourceforge.net Tue Feb 8 22:52:06 2011 From: chninkel at users.sourceforge.net (chninkel at users.sourceforge.net) Date: Tue, 08 Feb 2011 21:52:06 +0000 Subject: [csw-devel] SF.net SVN: gar:[13237] csw/mgar/pkg/openssl/trunk Message-ID: Revision: 13237 http://gar.svn.sourceforge.net/gar/?rev=13237&view=rev Author: chninkel Date: 2011-02-08 21:52:06 +0000 (Tue, 08 Feb 2011) Log Message: ----------- openssl: updated to 0.9.8r Modified Paths: -------------- csw/mgar/pkg/openssl/trunk/Makefile csw/mgar/pkg/openssl/trunk/checksums csw/mgar/pkg/openssl/trunk/files/changelog.CSW Modified: csw/mgar/pkg/openssl/trunk/Makefile =================================================================== --- csw/mgar/pkg/openssl/trunk/Makefile 2011-02-08 18:58:05 UTC (rev 13236) +++ csw/mgar/pkg/openssl/trunk/Makefile 2011-02-08 21:52:06 UTC (rev 13237) @@ -16,7 +16,7 @@ ###### Package information ####### NAME = openssl -VERSION = 0.9.8q +VERSION = 0.9.8r CATEGORIES = lib DESCRIPTION = The Open Source toolkit for SSL and TLS Modified: csw/mgar/pkg/openssl/trunk/checksums =================================================================== --- csw/mgar/pkg/openssl/trunk/checksums 2011-02-08 18:58:05 UTC (rev 13236) +++ csw/mgar/pkg/openssl/trunk/checksums 2011-02-08 21:52:06 UTC (rev 13237) @@ -1 +1 @@ -80e67291bec9230f03eefb5cfe858998 openssl-0.9.8q.tar.gz +0352932ea863bc02b056cda7c9ac5b79 openssl-0.9.8r.tar.gz Modified: csw/mgar/pkg/openssl/trunk/files/changelog.CSW =================================================================== --- csw/mgar/pkg/openssl/trunk/files/changelog.CSW 2011-02-08 18:58:05 UTC (rev 13236) +++ csw/mgar/pkg/openssl/trunk/files/changelog.CSW 2011-02-08 21:52:06 UTC (rev 13237) @@ -1,3 +1,9 @@ +openssl (0.9.8r,REV=2011.02.08) unstable + + * New upstream version. + + -- Yann Rouillard Tue, 08 Feb 2011 22:49:21 +0100 + openssl (0.9.8q,REV=2010.12.02) unstable * New upstream version. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From gadavis at users.sourceforge.net Wed Feb 9 05:09:07 2011 From: gadavis at users.sourceforge.net (gadavis at users.sourceforge.net) Date: Wed, 09 Feb 2011 04:09:07 +0000 Subject: [csw-devel] SF.net SVN: gar:[13238] csw/mgar/pkg/gmtcoast/trunk/Makefile Message-ID: Revision: 13238 http://gar.svn.sourceforge.net/gar/?rev=13238&view=rev Author: gadavis Date: 2011-02-09 04:09:06 +0000 (Wed, 09 Feb 2011) Log Message: ----------- [gmtcoast] Fix path to datadir in PKGFILES Modified Paths: -------------- csw/mgar/pkg/gmtcoast/trunk/Makefile Modified: csw/mgar/pkg/gmtcoast/trunk/Makefile =================================================================== --- csw/mgar/pkg/gmtcoast/trunk/Makefile 2011-02-08 21:52:06 UTC (rev 13237) +++ csw/mgar/pkg/gmtcoast/trunk/Makefile 2011-02-09 04:09:06 UTC (rev 13238) @@ -37,17 +37,17 @@ PACKAGES += CSWgmtcoast-low CATALOGNAME_CSWgmtcoast-low = gmtcoast_low SPKG_DESC_CSWgmtcoast-low = Low resolution coastlines for the Generic Mapping Tools (GMT) -#PKGFILES_CSWgmtcoast-low += /opt/csw/share/coast/.*_[cli]\.cdf +#PKGFILES_CSWgmtcoast-low += $(datadir)/coast/.*_[cli]\.cdf PACKAGES += CSWgmtcoast-high CATALOGNAME_CSWgmtcoast-high = gmtcoast_high SPKG_DESC_CSWgmtcoast-high = High resolution coastlines for the Generic Mapping Tools (GMT) -PKGFILES_CSWgmtcoast-high += /opt/csw/share/coast/.*_h\.cdf +PKGFILES_CSWgmtcoast-high += $(datadir)/coast/.*_h\.cdf PACKAGES += CSWgmtcoast-full CATALOGNAME_CSWgmtcoast-full = gmtcoast_full SPKG_DESC_CSWgmtcoast-full = Full resolution coastlines for the Generic Mapping Tools (GMT) -PKGFILES_CSWgmtcoast-full += /opt/csw/share/coast/.*_f\.cdf +PKGFILES_CSWgmtcoast-full += $(datadir)/coast/(.*)_f\.cdf include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Wed Feb 9 08:52:43 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Wed, 09 Feb 2011 07:52:43 +0000 Subject: [csw-devel] SF.net SVN: gar:[13239] csw/mgar/gar/v2/lib/python Message-ID: Revision: 13239 http://gar.svn.sourceforge.net/gar/?rev=13239&view=rev Author: wahwah Date: 2011-02-09 07:52:43 +0000 (Wed, 09 Feb 2011) Log Message: ----------- checkpkg: Shared lib name suggestions with letters A gradual improvement of the function which suggests names for library collections. If the collection name does not contain at least two letters, don't suggest it. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/sharedlib_utils.py csw/mgar/gar/v2/lib/python/sharedlib_utils_test.py Modified: csw/mgar/gar/v2/lib/python/sharedlib_utils.py =================================================================== --- csw/mgar/gar/v2/lib/python/sharedlib_utils.py 2011-02-09 04:09:06 UTC (rev 13238) +++ csw/mgar/gar/v2/lib/python/sharedlib_utils.py 2011-02-09 07:52:43 UTC (rev 13239) @@ -171,6 +171,13 @@ return (True, versions_set.pop()) +def ValidateCollectionName(l): + letters = "".join(re.findall(r"[a-zA-Z]", l)) + if len(letters) <= 1: + return False + return True + + def MakePackageNameBySonameCollection(sonames): """Finds a name for a collection of sonames. @@ -194,6 +201,8 @@ candidate = re.sub("\.so.*$", "", candidate) common_substring_candidates.append(candidate) lcs = CollectionLongestCommonSubstring(copy.copy(common_substring_candidates)) + if not ValidateCollectionName(lcs): + return None pkgnames = [ "CSW" + SonameToStringWithChar("lib%s%s" % (lcs, common_version), "-"), ] Modified: csw/mgar/gar/v2/lib/python/sharedlib_utils_test.py =================================================================== --- csw/mgar/gar/v2/lib/python/sharedlib_utils_test.py 2011-02-09 04:09:06 UTC (rev 13238) +++ csw/mgar/gar/v2/lib/python/sharedlib_utils_test.py 2011-02-09 07:52:43 UTC (rev 13239) @@ -252,7 +252,17 @@ ) self.assertEqual(expected, su.MakePackageNameBySonameCollection(sonames)) + def testMakePackageNameBySonameCollectionMultipleSoGlib2(self): + sonames = [ + "libgio-2.0.so.0", + "libglib-2.0.so.0", + "libgmodule-2.0.so.0", + "libgobject-2.0.so.0", + "libgthread-2.0.so.0", + ] + self.assertEqual(None, su.MakePackageNameBySonameCollection(sonames)) + class CommomSubstringTest(unittest.TestCase): def testLongestCommonSubstring_1(self): This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Wed Feb 9 09:10:52 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Wed, 09 Feb 2011 08:10:52 +0000 Subject: [csw-devel] SF.net SVN: gar:[13240] csw/mgar/gar/v2/lib/python/sharedlib_utils_test.py Message-ID: Revision: 13240 http://gar.svn.sourceforge.net/gar/?rev=13240&view=rev Author: wahwah Date: 2011-02-09 08:10:52 +0000 (Wed, 09 Feb 2011) Log Message: ----------- checkpkg: Unit test for collection name verifier This function determines whether a given string is a good name for a collection of libraries. Here are 3 tests for it. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/sharedlib_utils_test.py Modified: csw/mgar/gar/v2/lib/python/sharedlib_utils_test.py =================================================================== --- csw/mgar/gar/v2/lib/python/sharedlib_utils_test.py 2011-02-09 07:52:43 UTC (rev 13239) +++ csw/mgar/gar/v2/lib/python/sharedlib_utils_test.py 2011-02-09 08:10:52 UTC (rev 13240) @@ -263,6 +263,18 @@ self.assertEqual(None, su.MakePackageNameBySonameCollection(sonames)) +class ValidateCollectionNameTest(unittest.TestCase): + + def testLetters(self): + self.assertEqual(True, su.ValidateCollectionName("foo")) + + def testOneLetter(self): + self.assertEqual(False, su.ValidateCollectionName("f")) + + def testNoLetters(self): + self.assertEqual(False, su.ValidateCollectionName("-2.0")) + + class CommomSubstringTest(unittest.TestCase): def testLongestCommonSubstring_1(self): This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From jonbcraig at users.sourceforge.net Wed Feb 9 19:23:28 2011 From: jonbcraig at users.sourceforge.net (jonbcraig at users.sourceforge.net) Date: Wed, 09 Feb 2011 18:23:28 +0000 Subject: [csw-devel] SF.net SVN: gar:[13241] csw/mgar/pkg/ntop/trunk Message-ID: Revision: 13241 http://gar.svn.sourceforge.net/gar/?rev=13241&view=rev Author: jonbcraig Date: 2011-02-09 18:23:28 +0000 (Wed, 09 Feb 2011) Log Message: ----------- ntop: interim commit to save progress Modified Paths: -------------- csw/mgar/pkg/ntop/trunk/Makefile csw/mgar/pkg/ntop/trunk/files/cswntop csw/mgar/pkg/ntop/trunk/files/ntop.conf.CSW Added Paths: ----------- csw/mgar/pkg/ntop/trunk/files/0005-Change-default-PID-file-location-to-var-opt-csw-ntop.patch csw/mgar/pkg/ntop/trunk/files/0006-Temporary-Fix-for-Broken-sourceforge-CVS-access.patch csw/mgar/pkg/ntop/trunk/files/CSWntop.postinstall csw/mgar/pkg/ntop/trunk/files/CSWntop.postremove csw/mgar/pkg/ntop/trunk/files/CSWntop.request csw/mgar/pkg/ntop/trunk/files/etter.finger.os Removed Paths: ------------- csw/mgar/pkg/ntop/trunk/files/postinstall csw/mgar/pkg/ntop/trunk/files/postremove csw/mgar/pkg/ntop/trunk/files/request Modified: csw/mgar/pkg/ntop/trunk/Makefile =================================================================== --- csw/mgar/pkg/ntop/trunk/Makefile 2011-02-09 08:10:52 UTC (rev 13240) +++ csw/mgar/pkg/ntop/trunk/Makefile 2011-02-09 18:23:28 UTC (rev 13241) @@ -17,6 +17,7 @@ DISTFILES += cswntop EXPANDVARS += cswntop +DISTFILES += CSWntop.postinstall CSWntop.postremove CSWntop.request DISTFILES += ntop.conf.CSW EXPANDVARS += ntop.conf.CSW @@ -26,10 +27,9 @@ PATCHFILES += 0002-Do-not-redeclare-__builtin_alloca.patch PATCHFILES += 0003-Check-for-uint_-in-addition-to-u_int_.patch PATCHFILES += 0004-Strip-default-Solaris-library-pathes-as-we-set-our-o.patch +PATCHFILES += 0005-Change-default-PID-file-location-to-var-opt-csw-ntop.patch +PATCHFILES += 0006-Temporary-Fix-for-Broken-sourceforge-CVS-access.patch -# PATCHFILES = configure.in.diff -# PATCHFILES += configureextra_opencsw.diff - # We define upstream file regex so we can be notifed of new upstream software release UPSTREAM_MASTER_SITES = $(SF_PROJECT_SHOWFILE)=17233 UPSTREAM_USE_SF = 1 Added: csw/mgar/pkg/ntop/trunk/files/0005-Change-default-PID-file-location-to-var-opt-csw-ntop.patch =================================================================== --- csw/mgar/pkg/ntop/trunk/files/0005-Change-default-PID-file-location-to-var-opt-csw-ntop.patch (rev 0) +++ csw/mgar/pkg/ntop/trunk/files/0005-Change-default-PID-file-location-to-var-opt-csw-ntop.patch 2011-02-09 18:23:28 UTC (rev 13241) @@ -0,0 +1,25 @@ +From fd367fac4e7fb554cc3ad4d2a00d24a71ba36832 Mon Sep 17 00:00:00 2001 +From: Jon Craig +Date: Tue, 8 Feb 2011 22:42:30 +0100 +Subject: [PATCH] Change default PID file location to /var/opt/csw/ntop + +--- + globals-defines.h | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/globals-defines.h b/globals-defines.h +index a54d736..a412617 100644 +--- a/globals-defines.h ++++ b/globals-defines.h +@@ -1929,7 +1929,7 @@ + * default file and directories + */ + #define DEFAULT_NTOP_PIDFILE "ntop.pid" +-#define DEFAULT_NTOP_PID_DIRECTORY "/var/run" ++#define DEFAULT_NTOP_PID_DIRECTORY "/var/opt/csw/ntop" + + /* + * default configuration parameters -- the comment gives the (short getopt) name +-- +1.7.3.2 + Added: csw/mgar/pkg/ntop/trunk/files/0006-Temporary-Fix-for-Broken-sourceforge-CVS-access.patch =================================================================== --- csw/mgar/pkg/ntop/trunk/files/0006-Temporary-Fix-for-Broken-sourceforge-CVS-access.patch (rev 0) +++ csw/mgar/pkg/ntop/trunk/files/0006-Temporary-Fix-for-Broken-sourceforge-CVS-access.patch 2011-02-09 18:23:28 UTC (rev 13241) @@ -0,0 +1,28 @@ +From a1b397956f69cd33847b8cfa38eb08b46d287bc0 Mon Sep 17 00:00:00 2001 +From: Jon Craig +Date: Tue, 8 Feb 2011 22:56:40 +0100 +Subject: [PATCH 7/7] Temporary Fix for Broken sourceforge CVS access + +--- + Makefile.am | 5 +++-- + 1 files changed, 3 insertions(+), 2 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index 46b102c..1ca4aa6 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -423,8 +423,9 @@ dnetter: + done + @echo "" + @echo "...Downloading new file..." +- @wget -O $(ETTER_PASSIVE_FILE) \ +- $(ETTER_PASSIVE_DOWNLOAD_FROM)/$(ETTER_PASSIVE_FILE)?$(ETTER_PASSIVE_DOWNLOAD_PARMS) ++# @wget -O $(ETTER_PASSIVE_FILE) \ ++# $(ETTER_PASSIVE_DOWNLOAD_FROM)/$(ETTER_PASSIVE_FILE)?$(ETTER_PASSIVE_DOWNLOAD_PARMS) ++ @cp ../../../../files/etter.finger.os . + @echo "" + @echo "gziping downloaded file..." + @gzip $(ETTER_PASSIVE_FILE) +-- +1.7.3.2 + Added: csw/mgar/pkg/ntop/trunk/files/CSWntop.postinstall =================================================================== --- csw/mgar/pkg/ntop/trunk/files/CSWntop.postinstall (rev 0) +++ csw/mgar/pkg/ntop/trunk/files/CSWntop.postinstall 2011-02-09 18:23:28 UTC (rev 13241) @@ -0,0 +1,27 @@ +#!/sbin/sh + +CONFDIR=$BASEDIR/etc/opt/etc/ntop +DATADIR=$BASEDIR/var/opt/csw/ntop + +PATH=/bin:/usr/bin:/usr/sbin:"$PATH" +export PATH + +if [ ! -f "$CONFDIR/ntop.conf" ]; then + cp -p $CONFDIR/ntop.conf.CSW $CONFDIR/ntop.conf +fi + +if [ ! -d "$DATADIR" ]; then + mkdir -p $DATADIR +fi + +if [ ! -d "$DATADIR/rrd ]; then + mkdir -p $DATADIR/rrd + chown nobody:nobody $DATADIR/rrd + chmod 0711 $DATADIR/rrd +fi + +if [ ! -f "$DATADIR/ntop_pw.db" ]; then + $BASEDIR/opt/csw/bin/ntop -P $DATADIR -u nobody --set-admin-password=$ADMIN_PW +fi + +echo "\nURL to access ntop is http://hostname:3000" Added: csw/mgar/pkg/ntop/trunk/files/CSWntop.postremove =================================================================== --- csw/mgar/pkg/ntop/trunk/files/CSWntop.postremove (rev 0) +++ csw/mgar/pkg/ntop/trunk/files/CSWntop.postremove 2011-02-09 18:23:28 UTC (rev 13241) @@ -0,0 +1,15 @@ +#!/sbin/sh + +CONFDIR=$BASEDIR/etc/opt/csw/ntop +DATADIR=$BASEDIR/var/opt/csw/ntop + +if [ -d "$CONFDIR" || -d "$DATADIR" ]; then + echo "" + echo "You might want to manually remove files in:" + if [ -d "$CONFDIR" ]; then + echo " $CONFDIR" + fi + if [ -d "$DATADIR" ]; then + echo " $DATADIR" + fi +fi Added: csw/mgar/pkg/ntop/trunk/files/CSWntop.request =================================================================== --- csw/mgar/pkg/ntop/trunk/files/CSWntop.request (rev 0) +++ csw/mgar/pkg/ntop/trunk/files/CSWntop.request 2011-02-09 18:23:28 UTC (rev 13241) @@ -0,0 +1,29 @@ +#!/sbin/sh +# +DATADIR=$BASEDIR/var/opt/csw/ntop + +if [ ! -f $DATADIR/ntop_pw.db ]; then + stty -echo + trap "stty echo ; echo 'Interrupted' ; exit 1" 1 2 3 15 + while [ true ]; do + echo "\nPlease enter the password for the admin user: \c" + read admin_pw + if [ `expr "$admin_pw" : '.*'` -ge 5 ];then + echo "\nPlease enter the password again: \c" + read admin_pw1 + if [ "$admin_pw" != "$admin_pw1" ];then + echo "\nPasswords don't match. Please try again." + else + break + fi + else + echo "\nPassword too short (5 characters or more). Please try again." + fi + done + echo "\n" + stty echo +fi +cat > $1 << ! +ADMIN_PW=$admin_pw +! +exit 0 Modified: csw/mgar/pkg/ntop/trunk/files/cswntop =================================================================== --- csw/mgar/pkg/ntop/trunk/files/cswntop 2011-02-09 08:10:52 UTC (rev 13240) +++ csw/mgar/pkg/ntop/trunk/files/cswntop 2011-02-09 18:23:28 UTC (rev 13241) @@ -1,19 +1,24 @@ #!/sbin/sh # -# ntop startup script for ntop v3.0 +# ntop startup script for ntop v4.0.3 # v1.0 # -BINDIR=@bindir@ -CONF=@sysconfdir@/ntop/ntop.conf +BINDIR=/opt/csw/bin +CONF=/etc/opt/csw/ntop/ntop.conf +## +# CSWCLASS Configurations +#AUTOENABLE no +## + if [ ! -f "$CONF" ]; then echo "Configuration file not found." exit 1 else DATADIR=`/usr/bin/egrep "^\--db-file-path|^-P" "$CONF" | /usr/bin/cut -f2 -d" "` if [ -z "$DATADIR" ]; then - DATADIR=@localstatedir@/ntop - EXTRA="-P ${DATADIR}" + DATADIR=/var/opt/csw/ntop + GENEXTRA="-P ${DATADIR}" fi fi PIDFILE=${DATADIR}/ntop.pid @@ -33,7 +38,7 @@ fi if [ -z "$NTOPUSER" ]; then NTOPUSER=nobody - EXTRA="${EXTRA} -u ${NTOPUSER}" + UNIXEXTRA="${UNIXEXTRA} -u ${NTOPUSER}" fi if [ ! -d "$DATADIR" ];then /usr/bin/mkdir -p ${DATADIR} @@ -46,13 +51,13 @@ fi HTTP=`/usr/bin/egrep "^\--http-server|^-w" "$CONF" | /usr/bin/cut -f2 -d" "` if [ -z "$HTTP" ];then - EXTRA=" ${EXTRA} -w 3000" + GENEXTRA=" ${GENEXTRA} -w 3000" fi - HTTPS=`/usr/bin/egrep "^\--http-servers|^-W" "$CONF" | /usr/bin/cut -f2 -d" "` + HTTPS=`/usr/bin/egrep "^\--http-server|^-W" "$CONF" | /usr/bin/cut -f2 -d" "` if [ -z "$HTTPS" ];then - EXTRA=" ${EXTRA} -W 0" + GENEXTRA=" ${GENEXTRA} -W 0" fi - INTERFACES=`/usr/bin/egrep "^\--interfaces|^-i" "$CONF" | /usr/bin/cut -f2 -d" "` + INTERFACES=`/usr/bin/egrep "^\--interface|^-i" "$CONF" | /usr/bin/cut -f2 -d" "` if [ -z "$INTERFACES" ];then for i in `/sbin/ifconfig -a |/usr/bin/grep "^[a-z0-9]*:"` do @@ -80,18 +85,18 @@ done fi if [ ${interfaces} -gt 1 ]; then - EXTRA=" ${EXTRA} -i ${INTERFACES}" + UNIXEXTRA=" ${UNIXEXTRA} -i ${INTERFACES}" fi LOG=`/usr/bin/egrep "^\--use-syslog|^-L" "$CONF" | /usr/bin/cut -f2 -d" "` if [ -z "$LOG" ];then - EXTRA=" ${EXTRA} --use-syslog=local3" + UNIXEXTRA=" ${UNIXEXTRA} --use-syslog=local3" fi /usr/bin/echo "Start ntop network traffic usage monitor..." - if [ -z "$EXTRA" ];then + if [ -z "${GENEXTRA}${UNIXEXTRA}" ];then $BINDIR/ntop @${CONF} else - $BINDIR/ntop ${EXTRA} @${CONF} + $BINDIR/ntop ${GENEXTRA} @${CONF} ${UNIXEXTRA} fi ;; @@ -99,8 +104,14 @@ echo "Stop ntop network traffic usage monitor..." if [ -f "$PIDFILE" ]; then - /usr/bin/kill -TERM `/usr/bin/cat $PIDFILE` + NTOPPID=`/usr/bin/cat $PIDFILE` + /usr/bin/kill -TERM $NTOPPID + echo "waiting on process $NTOPPID to exit..." + wait $NTOPPID + else + echo "$PIDFILE: seems to be missing, cannot kill ntop process." fi + ;; *) Added: csw/mgar/pkg/ntop/trunk/files/etter.finger.os =================================================================== --- csw/mgar/pkg/ntop/trunk/files/etter.finger.os (rev 0) +++ csw/mgar/pkg/ntop/trunk/files/etter.finger.os 2011-02-09 18:23:28 UTC (rev 13241) @@ -0,0 +1,1747 @@ +############################################################################ +# # +# ettercap -- etter.finger.os -- passive OS fingerprint database # +# # +# Copyright (C) 2001-2004 ALoR & NaGA # +# # +# 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 2 of the License, or # +# (at your option) any later version. # +# # +############################################################################ +# # +# Version : $Revision: 1.21 $ # +# Last updated on : $Date: 2004/11/05 10:21:03 $ # +# Total entries : 1697 # +# # +############################################################################ +# # +# The fingerprint database has the following structure: # +# # +# WWWW:MSS:TTL:WS:S:N:D:T:F:LEN:OS # +# # +# WWWW: 4 digit hex field indicating the TCP Window Size # +# MSS : 4 digit hex field indicating the TCP Option Maximum Segment Size # +# if omitted in the packet or unknown it is "_MSS" # +# TTL : 2 digit hex field indicating the IP Time To Live # +# WS : 2 digit hex field indicating the TCP Option Window Scale # +# if omitted in the packet or unknown it is "WS" # +# S : 1 digit field indicating if the TCP Option SACK permitted is true # +# N : 1 digit field indicating if the TCP Options contain a NOP # +# D : 1 digit field indicating if the IP Don't Fragment flag is set # +# T : 1 digit field indicating if the TCP Timestamp is present # +# F : 1 digit ascii field indicating the flag of the packet # +# S = SYN # +# A = SYN + ACK # +# LEN : 2 digit hex field indicating the length of the packet # +# if irrilevant or unknown it is "LT" # +# OS : an ascii string representing the OS # +# # +# IF YOU FIND A NEW FINGERPRING, PLEASE MAIL IT US WITH THE RESPECTIVE OS # +# or use the appropriate form at: # +# http://ettercap.sourceforge.net/index.php?s=stuff&p=fingerprint # +# # +# TO GET THE LATEST DATABASE: # +# # +# ettercap -U # +# # +############################################################################ + +0000:05B4:80:WS:0:0:1:0:S:2C:Novell netware 5.00 +0000:_MSS:80:WS:0:0:0:0:A:LT:3Com Access Builder 4000 7.2 +0000:_MSS:FF:WS:0:0:0:0:A:28:Windows XP +0008:_MSS:40:WS:0:0:0:0:S:28:Red Hat Linux 7.2 Kernel 2.4.7-10 +0010:_MSS:40:WS:0:0:0:0:S:28:Gentoo Linux (Kernel 2.6.6-rc1) +0017:05B4:40:00:0:1:0:1:A:3C:Gestetner printer +0040:_MSS:80:WS:0:0:0:0:A:LT:Gold Card Ethernet Interface Firm. Ver. 3.19 (95.01.16) +0046:_MSS:80:WS:0:0:0:0:A:LT:Cyclades PathRouter +0096:_MSS:80:WS:0:0:0:0:A:LT:Cyclades PathRouter V 1.2.4 +0100:0218:FF:WS:0:0:0:0:A:2C:Allied Hub +0100:_MSS:80:WS:0:0:0:0:A:LT:Allied Telesyn AT-S10 version 3.0 on an AT-TS24TR hub +0100:_MSS:80:WS:0:0:1:0:A:LT:Xyplex Network9000 +0109:0109:40:00:0:1:0:1:A:3C:Debian Potato (2.2), Linux 2.2.17 +0200:0000:40:WS:0:0:0:0:S:LT:Linux 2.0.35 - 2.0.37 +0200:0200:40:00:0:1:0:0:A:30:Linux +0200:0200:40:WS:0:0:0:0:A:2C:Ascend MAX 1800 +0200:05B4:40:00:0:0:0:0:S:2C:Linux 2.0.35 - 2.0.38 +0200:05B4:40:00:0:0:0:0:S:LT:Linux 2.0.38 +0200:05B4:40:34:0:0:0:0:S:LT:Linux 2.0.33 +0200:05B4:40:WS:0:0:0:0:S:2C:Linux 2.0.34-38 +0200:05B4:40:WS:0:0:0:0:S:LT:Linux 2.0.36 +0200:05B4:FF:WS:0:0:0:0:A:2C:Router 3Com 812 ADSL +0200:_MSS:40:WS:0:0:0:0:S:28:Windows XP +0200:_MSS:40:WS:0:0:1:0:A:28:ESESA TCP/IP Stack +0200:_MSS:80:00:0:0:0:0:A:LT:Linux 2.0.32-34 +0200:_MSS:80:00:0:1:0:0:A:LT:Bay Networks BLN-2 Network Router or ASN Processor rev 9 +0200:_MSS:80:00:0:1:0:1:A:LT:Bay Networks BLN-2 Network Router or ASN Processor rev 9 +0200:_MSS:80:WS:0:0:0:0:A:LT:3COM / USR TotalSwitch Firmware: 02.02.00R +0212:_MSS:80:00:0:0:0:0:A:LT:Linux 2.0.32-34 +0212:_MSS:80:00:0:1:1:0:A:LT:Solaris 2.6 - 2.7 +0212:_MSS:80:00:0:1:1:1:A:LT:Solaris 2.6 - 2.7 +0212:_MSS:80:WS:0:0:0:0:A:LT:CacheOS (CacheFlow 2000 proxy cache) +0212:_MSS:80:WS:0:0:1:0:A:LT:Linux 2.2.5 - 2.2.13 SMP +0212:_MSS:80:WS:0:1:0:0:A:LT:NetBSD 1.4 running on a SPARC IPX +0212:_MSS:80:WS:0:1:0:1:A:LT:NetBSD 1.4 running on a SPARC IPX +0212:_MSS:80:WS:0:1:1:0:A:LT:NetBSD 1.4 / Generic mac68k (Quadra 610) +0212:_MSS:80:WS:0:1:1:1:A:LT:NetBSD 1.4 / Generic mac68k (Quadra 610) +0218:0218:40:00:0:1:0:1:A:LT:NetBSD +0218:0218:40:WS:0:0:0:0:A:2C:Windows 98 +0244:_MSS:80:WS:0:0:0:0:A:LT:Cyclades PathRouter/PC +03CA:_MSS:80:WS:0:0:0:0:A:LT:MPE/iX 5.5 +03E0:0550:40:05:1:1:1:1:S:LT:Windows 2000 +03E0:05B4:20:05:1:1:1:1:S:40:Windows 2000 server +03F2:_MSS:80:00:0:0:0:0:A:LT:Lexmark Optra S Printer +03F2:_MSS:80:WS:0:0:0:0:A:LT:Lexmark Optra S Printer +03F6:0218:FF:WS:0:0:0:0:A:2C:Lexmark Optra SC Printer +03F6:_MSS:80:WS:0:0:0:0:A:LT:Lexmark Optra S Printer +0400:0109:40:10:0:1:0:1:S:3C:Linux +0400:0200:FF:WS:0:0:0:0:A:2C:Zyxel Prestige 10 +0400:0218:FF:WS:0:0:0:0:A:2C:3Com Superstack II +0400:0400:20:WS:0:0:0:0:A:2C:Windows 2000 +0400:0400:40:00:1:1:0:1:A:3C:ElsaLanCom (SoHo ISDN Router) +0400:0400:80:WS:0:0:0:0:A:2C:Prime SharePH-1UNW (hardware printserver) +0400:0400:80:WS:0:0:0:0:S:2C:NCSA 2.3.07 +0400:0500:80:WS:0:0:0:0:A:2C:ITC Version i7.13 of 02-07-99 (embedded device) +0400:0594:FF:WS:0:0:0:0:A:2C:3Com SuperStack 3 Switch 4400 +0400:059C:FF:WS:0:0:0:0:A:18:3Com SuperStack 3300xm version 2.71 prom 1.00 +0400:059C:FF:WS:0:0:0:0:A:2C:3Com SuperStack II 3300 +0400:05A4:FF:WS:0:0:0:0:A:2C:3Com SuperStack II 3000 +0400:05B4:40:00:0:1:0:1:S:3C:Windows 44 +0400:05B4:40:WS:0:0:0:0:A:2C:FORE ES-2810 Switch +0400:05B4:FF:WS:0:0:0:0:A:2C:3Com 812 ADSL ROUTER +0400:05C8:20:WS:0:0:0:0:A:2C:Nortel BayStack Access Node +0400:0901:40:10:0:1:0:1:S:3C:Mac OS X 102.4 +0400:_MSS:40:WS:0:0:0:0:S:28:Linux 2.4.18 +0400:_MSS:80:00:0:1:0:0:A:LT:Bay Networks BLN-2 Network Router or ASN Processor rev 9 +0400:_MSS:80:00:0:1:0:1:A:LT:Bay Networks BLN-2 Network Router or ASN Processor rev 9 +0400:_MSS:80:WS:0:0:0:0:A:LT:3com Office Connect Router 810 +0400:_MSS:80:WS:0:0:1:0:A:LT:Aironet 630-2400 V3.3P Wireless LAN bridge +0420:0114:40:00:1:1:1:1:A:3C:Linux 2.4.18-rc4 +0424:_MSS:80:WS:0:0:0:0:A:LT:Intel InBusiness Print Station +0430:_MSS:80:WS:0:0:0:0:A:LT:PacketShaper 4000 v4.1.3b2 2000-04-05 +052A:052A:40:00:1:1:0:1:A:3C:Debian Potato (2.2), Linux 2.2.20 +0534:0534:80:WS:0:0:1:0:A:2C:Netware +0550:0550:40:WS:0:0:0:0:A:2C:Linux 2.4 +0564:0564:40:WS:0:0:0:0:A:2C:Linux +0564:0564:40:WS:1:0:1:1:A:38:Linux 2.4 +0564:0564:80:WS:1:1:1:0:A:LT:Windows 2000 +0564:6405:40:00:0:1:1:1:A:3C:Solaris +0564:6405:40:WS:0:1:1:1:A:38:Mac OS +0578:0578:08:WS:0:0:0:0:A:2C:Minix 16-bit/Intel 2.0.3 +0578:0578:40:WS:0:0:0:0:A:2C:CVP Telsey +0578:0578:40:WS:0:0:0:0:S:2C:Windows 2000 +0578:_MSS:40:WS:0:0:0:0:A:28:Elsa Router +0578:_MSS:80:WS:0:0:0:0:A:LT:Minix 32-bit/Intel 2.0.0 +0584:0584:80:00:1:1:1:1:A:3C:Red Hat Linux 8.0 (Psyche) +0584:0584:FF:00:0:1:1:1:A:3C:OpenBSD +05AC:0218:40:WS:0:0:0:0:A:2C:AXIS Printer +05B4:052A:40:00:0:1:0:1:A:3C:NetBSD 1.6.1 +05B4:052A:40:00:1:1:0:1:A:3C:Debian Sarge, Linux 2.4.24-1 +05B4:0564:40:01:0:1:1:1:A:3C:FreeBSD 5.1-RELEASE +05B4:0564:40:WS:1:1:0:0:A:30:Red Hat Linux 9.0 +05B4:0564:80:WS:1:1:0:0:A:30:Windows 2000 +05B4:05B4:20:WS:0:0:0:0:A:2C:Windows XP +05B4:05B4:40:00:0:1:0:1:S:3C:HP LaserJet 4550 Printer +05B4:05B4:40:00:0:1:1:1:A:3C:FreeBSD +05B4:05B4:40:00:1:1:1:1:A:3C:Red Hat Linux release 6.2 (Zoot) Kernel 2.2.14-5.0 +05B4:05B4:40:00:1:1:1:1:A:40:SunOS 5.8 +05B4:05B4:40:01:1:1:1:1:A:40:Solaris 8 +05B4:05B4:40:WS:1:1:1:0:A:30:Windows 2000 Server +05B4:05B4:40:WS:1:1:1:0:S:30:Windows XP SP1 +05B4:05B4:80:WS:0:0:0:0:A:2C:Zebra ZPL +05B4:05B4:80:WS:1:1:1:0:A:30:Windows 2000 Server +05B4:05B4:FF:00:1:1:1:1:A:40:Solaris 7 +05B4:05B4:FF:WS:0:0:0:0:A:2C:FreeBSD/i386 +05B4:B405:40:00:0:1:1:1:A:LT:Red Hat 7.1 (kernel 2.4.3) +05B4:B405:80:00:0:1:1:1:A:LT:Windows 2000 Server +05B4:_MSS:80:00:0:1:0:0:A:LT:HP JetDirect Card (J4169A) in an HP LaserJet 8150 +05B4:_MSS:80:WS:0:0:0:0:A:LT:TOPS-20 Monitor 7(102540)-1,TD-1 +05B4:_MSS:80:WS:0:1:1:0:A:LT:Network Appliance NetCache 5.1D4 +05B4:_MSS:80:WS:0:1:1:1:A:LT:Network Appliance NetCache 5.1D4 +05DC:0FD8:40:WS:0:0:0:0:A:2C:D-Link dsl604 wireless router +05DC:_MSS:80:WS:0:0:0:0:A:LT:Gandalf LanLine Router +0600:0300:20:WS:0:0:0:0:S:2C:Chase IOLAN Terminal Server v3.3.09 - TCP +0600:_MSS:80:WS:0:0:0:0:A:LT:Chase IOLAN Terminal Server v3.5.02 CDi +0640:05B4:40:WS:0:0:0:0:A:2C:APC MasterSwitch Network Power Controller +0640:_MSS:80:WS:0:0:0:0:A:LT:APC MasterSwitch Network Power Controller +0648:0218:40:WS:0:0:0:0:A:2C:HP Printer +0648:_MSS:80:WS:0:0:0:0:A:LT:FastComm FRAD F9200-DS-DNI -- Ver. 4.2.3A +06C2:_MSS:80:WS:0:0:0:0:A:LT:Cyclades PathRAS Remote Access Server v1.1.8 - 1.3.12 +0700:_MSS:80:00:0:0:0:0:A:LT:Lantronix ETS16P Version V3.5/2(970721) +0700:_MSS:80:WS:0:0:0:0:A:LT:Lantronix ETS16P Version V3.5/2(970721) +073F:_MSS:80:00:0:0:0:0:A:LT:Novell NetWare 3.12 or 386 TCP/IP +073F:_MSS:80:WS:0:0:0:0:A:LT:CLIX R3.1 Vr.7.6.20 6480 +07D0:_MSS:80:00:0:0:1:0:A:LT:Novell NetWare 3.12 - 5.00 +07D0:_MSS:80:WS:0:0:1:0:A:LT:Novell NetWare 3.12 - 5.00 +0800:0109:40:10:0:1:0:1:S:3C:Linux +0800:0200:FF:WS:0:0:0:0:A:2C:Cisco +0800:0578:FF:WS:0:0:0:0:A:2C:NetGear Hardware Router +0800:_MSS:40:WS:0:0:0:0:A:28:Connexa +0800:_MSS:40:WS:0:0:0:0:S:28:Window 2000 SP3 +0800:_MSS:80:00:0:0:0:0:A:LT:KA9Q +0800:_MSS:80:00:0:0:0:1:A:LT:KA9Q +0800:_MSS:80:WS:0:0:0:0:A:LT:3Com Access Builder 4000 7.2 +0800:_MSS:80:WS:0:0:1:0:A:LT:HP Procurve Routing Switch 9304M +0808:_MSS:80:WS:0:0:0:0:A:LT:Siemens HICOM 300 Phone switch (WAML LAN card) +0834:0578:FF:WS:0:0:0:0:A:2C:BeWan 2.3.6 +0834:7805:FF:WS:0:0:0:0:A:2C:Vigor 2900G +0848:_MSS:80:WS:0:0:0:0:A:LT:Intergraph Workstation (2000 Series) running CLiX R3.1 +0860:0218:40:00:1:1:1:0:S:30:Windows 9x +0860:0218:40:00:1:1:1:0:S:3C:Windows 9x +0860:0218:40:00:1:1:1:0:S:LT:Windows 9x +0860:0218:40:WS:0:0:0:0:A:2C:Windows 98 +0860:0218:80:WS:0:0:1:0:A:2C:Windows 98 +0860:0218:FF:WS:0:0:0:0:S:LT:Cisco IGS 3000 IOS 11.x(16), 2500 IOS 11.2(3)P +0860:05B4:40:WS:0:0:1:0:A:2C:Windows 98 +0860:05B4:40:WS:1:1:1:0:S:30:Windows 98 +0860:05B4:80:00:0:1:1:1:A:3C:Windows ME +0860:05B4:FF:WS:0:0:0:0:A:LT:IOS Version 10.3(15) - 11.1(20) +0860:_MSS:80:00:0:0:0:0:A:LT:HP JetDirect Firmware Rev. H.06.00 +0860:_MSS:80:00:0:1:1:0:A:LT:Windows NT4 / Win95 / Win98 +0860:_MSS:80:00:0:1:1:1:A:LT:Windows NT4 / Win95 / Win98 +0860:_MSS:80:WS:0:0:0:0:A:LT:Chase IOLan Terminal Server +09C8:02F8:FF:WS:0:0:0:0:A:2C:Windows +0A28:_MSS:80:WS:0:0:0:0:A:LT:Apple Color LaserWrite 600 Printer +0AF0:0578:80:WS:1:1:1:0:A:30:Windows 2000 +0B18:058C:40:WS:0:0:0:0:S:2C:HNC 91849 +0B63:_MSS:80:00:0:1:1:0:A:LT:Linux 2.1.19 - 2.2.17 +0B63:_MSS:80:00:0:1:1:1:A:LT:Linux 2.1.19 - 2.2.17 +0B68:05B4:40:00:1:1:1:1:S:3C:Linux 2.4.21 +0B68:05B4:40:WS:0:0:0:0:A:2C:DLink DP-300 Printserver +0B68:05B4:40:WS:1:1:1:0:A:30:Linux 2.2.19 +0B68:05B4:FF:WS:1:1:1:0:A:LT:Lexmark T520 Network Printer +0B68:_MSS:40:WS:0:0:1:0:A:LT:Linux 2.0.32 - 2.0.34 +0B68:_MSS:80:00:0:1:1:0:A:LT:Sun Solaris 8 early acces beta through actual release +0B68:_MSS:80:00:0:1:1:1:A:LT:Sun Solaris 8 early acces beta through actual release +0B68:_MSS:80:WS:0:0:0:0:A:LT:D-Link Print Server +0BB8:05B0:20:WS:0:0:0:0:A:2C:VMS/VAX 5.5 +0BB8:_MSS:80:00:0:1:0:0:A:LT:OpenVMS 7.1 Alpha running Digital's UCX v4.1ECO2 +0C00:0109:40:10:0:1:0:1:S:3C:Linux Mandrake 9.1 +0C00:052A:40:WS:0:0:0:0:A:2C:NetGear Router +0C00:05A0:40:WS:0:0:0:0:A:2C:Trendnet TEW 431 BRP +0C00:_MSS:40:WS:0:0:0:0:S:28:Slackware 8.0 +0C00:_MSS:40:WS:0:0:0:0:S:LT:Linux Slakware 8.0 +0C00:_MSS:80:WS:0:0:0:0:A:LT:Canon photocopier/fax/scanner/printer GP30F +0C1C:05B4:FF:WS:0:0:0:0:A:2C:Nokia M1122 Adsl Router +0C90:0218:40:WS:0:0:0:0:A:2C:HP Printer +0C90:05B4:40:00:1:1:1:0:S:34:Windows +0C90:05B4:40:WS:1:1:1:0:S:30:Windows XP +0C90:_MSS:80:WS:0:0:0:0:A:LT:HP JetDirect Print Server +0E00:_MSS:80:WS:0:0:0:0:A:LT:Lantronix EPS1 Version V3.5/1(970325) +0F87:_MSS:80:00:0:0:0:0:A:LT:Novell NetWare 3.12 or 386 TCP/IP +0F87:_MSS:80:WS:0:0:0:0:A:LT:A/UX 3.1.1 SVR2 or OpenStep 4.2 +0F87:_MSS:80:WS:0:0:1:0:A:LT:AIX 4.3 +0FA0:_MSS:80:WS:0:0:0:0:A:LT:MultiTech CommPlete (modem server) RAScard +0FFF:0400:20:WS:0:0:0:0:A:2C:ASMAX Broadband router +1000:0002:40:WS:0:0:0:0:A:2C:Alcatel Modem +1000:0004:FF:WS:0:0:0:0:A:2C:Cisco PIX +1000:0109:40:10:0:1:0:1:S:LT:FreeBSD 4.5 +1000:0200:40:00:0:1:0:1:A:3C:Alcatel Router ADSL Speed Touch Pro +1000:0200:40:WS:0:0:0:0:A:2C:Alcatel Speedtouch Pro ADSL modem +1000:0200:40:WS:0:0:0:0:S:LT:CISCO IOS +1000:0200:FF:WS:0:0:0:0:A:2C:Alcatel Speed Touch Home/Pro +1000:0400:1E:F5:0:0:0:0:S:LT:Alcatel (Xylan) OmniStack 5024 v3.4.5 +1000:0400:1E:WS:0:0:0:0:S:LT:Chorus MiX V.3.2 r4.1.5 COMP-386 +1000:0400:20:F5:0:0:0:0:S:LT:Alcatel (Xylan) OmniStack 5024 +1000:0400:20:WS:0:0:0:0:A:2C:Alcatel LSS 210-Stack Version 3.4.8 +1000:0400:40:WS:0:0:0:0:A:2C:HP J2603A Ethernet SNMP Module +1000:0400:40:WS:0:0:0:0:S:2C:Trumpet TCP 2.01 / DOS +1000:05AC:FF:WS:0:0:0:0:A:2C:QMS4060 +1000:05B0:80:00:0:1:0:0:S:30:VMS +1000:05B4:10:WS:0:0:0:0:A:2C:Extreme Gigabit switch +1000:05B4:20:WS:0:0:0:0:A:2C:StorageWorks SAN switch (FabricOS v2.1.7) +1000:05B4:40:WS:0:0:0:0:A:18:DWL1000 802.11b Access Pointrt.com +1000:05B4:40:WS:0:0:0:0:A:2C:iPath Cable Media Access Hub +1000:05B4:40:WS:0:0:0:0:S:2C:Solaris +1000:05B4:FF:WS:0:0:0:0:A:2C:Cisco Pix 515 +1000:0901:40:10:0:1:0:1:S:LT:Mac os X 10.1 +1000:AC05:40:WS:0:0:0:0:A:2C:HP Procurve Switch +1000:_MSS:20:WS:0:0:0:0:A:28:Motorola SurfBoard SB4100 CableModem +1000:_MSS:20:WS:0:0:0:0:S:28:Linux RedHat 9 (kernel 2.4.20) +1000:_MSS:40:WS:0:0:0:0:A:LT:SCO UnixWare 2.1.2 +1000:_MSS:40:WS:0:0:0:0:S:28:SunOS 4.1.4 +1000:_MSS:40:WS:0:0:0:0:S:LT:Linux +1000:_MSS:80:00:0:0:1:0:A:LT:OpenVMS/Alpha 7.1 using Process Software's TCPWare V5.3-4 +1000:_MSS:80:00:0:1:0:0:A:LT:Alcatel 1000 ADSL (modem) +1000:_MSS:80:00:0:1:0:1:A:LT:Alcatel 1000 ADSL (modem) +1000:_MSS:80:WS:0:0:0:0:A:28:Aironet AP4800E v8.07 11 Mbps wireless access poinit +1000:_MSS:80:WS:0:0:1:0:A:LT:VirtualAccess LinxpeedPro 120 running Software 7.4.33CM +1020:0218:FF:WS:0:0:0:0:A:2C:Cisco 2600 IOS 12.0 +1020:0218:FF:WS:0:0:0:0:S:2C:Cisco 3660 IOS 12.2(x) +1020:022C:FF:00:0:0:0:0:S:LT:Cisco 1750 IOS 12.0(5), Cisco 2500 IOS 11.3(1) +1020:022C:FF:WS:0:0:0:0:A:2C:Cisco IOS 12.0(5) +1020:0564:FF:WS:0:0:0:0:A:2C:IOS (tm) C2600 Software (C2600-IS-M), Version 12.2(8)T4,R +1020:05B4:FF:WS:0:0:0:0:A:2C:Cisco IOS 12.1.5-12.2.13a +1020:05B4:FF:WS:0:0:0:0:S:LT:Cisco 2611 IOS 11.3(2)XA4 +1020:6405:FF:WS:0:0:0:0:A:2C:Cisco IOS +1020:B405:FF:WS:0:0:0:0:A:2C:AIRONET1200 +1020:_MSS:80:WS:0:0:0:0:A:LT:AS5200 +1020:_MSS:FF:WS:0:0:1:0:A:LT:Cisco IOS +10C0:0218:80:WS:1:1:1:0:S:30:Windows 2000 Advanced Server SP2 +10C0:0218:FF:WS:0:0:0:0:A:2C:Cisco IOS +10C0:0218:FF:WS:0:0:0:0:S:LT:Cisco 1600 IOS 11.2(15)P +10C0:055E:80:WS:1:1:1:0:S:30:Windows 98 +10C0:05B4:40:00:1:1:1:1:S:40:Windows XP +10C0:05B4:80:WS:1:1:1:0:S:30:Windows NT SP3 +10C0:05B4:FF:WS:0:0:0:0:A:2C:Cisco IOS 11.2 +10C0:05B4:FF:WS:0:0:0:0:S:LT:Cisco 3620 IOS 11.2(17)P +10C0:_MSS:80:WS:0:0:0:0:A:LT:Cisco 1600/3640/7513 Router (IOS 11.2(14)P) +111C:0218:40:WS:0:0:0:0:A:2C:Ascend MAX 1800 +111C:05B4:20:WS:0:0:0:0:A:2C:Linksys PSUS4 Printserver +111C:05B4:40:WS:0:0:0:0:A:2C:OpenVMS +111C:05B4:40:WS:0:0:1:0:A:2C:Ascend MAX6000 +111C:05B4:40:WS:0:0:1:0:A:LT:SCO Openserver 502 +111C:_MSS:80:WS:0:0:0:0:A:LT:Ascend/Lucent Max (HP,4000-6000) version 6.1.3 - 7.0.2+ +111C:_MSS:80:WS:0:0:1:0:A:LT:Apple LaserWriter 16/600 PS, HP 6P, or HP 5 Printer +1140:05CC:40:00:1:1:1:1:A:3C:Linux 2.4.8 +1146:05C2:40:00:1:1:1:1:S:3C:Debian 3.0 woody (2.4.18) +1164:05B4:40:01:1:1:1:1:S:3C:Fedora Red Hat +1234:_MSS:FF:WS:0:0:0:0:S:28:Knoppix based L.A.S +12CC:0650:40:00:1:1:1:1:A:3C:Debian Woody +12D8:1802:FF:WS:0:0:0:0:S:2C:Palm OS +1490:0524:40:00:1:1:1:1:S:3C:Linux Suse 8.1 +14B8:052E:40:00:1:1:1:1:S:3C:Linux RedHat 7 +14F0:0218:80:WS:1:1:1:0:A:LT:Windows 2000 Professional +14F0:05B4:80:WS:1:1:1:0:S:LT:Windows ME +1520:0548:40:00:1:1:1:1:S:3C:Linux Red Hat +1540:0550:40:00:1:1:1:1:S:3C:Linux +1540:0550:40:WS:0:0:1:0:A:2C:Linux RedHat - 2.4.18 +1540:0550:40:WS:1:1:1:0:A:30:Linux 2.4.x +159F:05B4:40:00:0:1:1:0:S:3C:FreeBSD 2.2.1 - 4.1 +15B8:057A:40:00:1:1:1:1:A:3C:Linux 2.4.10 +15E0:0584:40:00:0:1:1:1:A:3C:Linux 2.4.20 +1608:0582:40:WS:1:1:1:0:A:30:Linux +1610:0584:40:00:1:1:1:1:S:3C:Linux 2.4.20 +1618:0578:40:00:1:1:1:1:S:3C:Linux 2.4.13 +1640:0590:40:00:1:1:1:1:S:3C:Linux 2.4.23 +165C:_MSS:80:WS:0:0:1:0:A:LT:SCO Release 5 +1678:05AA:40:00:1:1:1:1:A:3C:Linux 2.6.1 +1680:0584:40:00:1:1:1:1:A:3C:Linux 2.4.18 2.4.19 +1680:05AC:40:00:1:1:1:1:A:3C:Linux 2.4.20 (X86) +1680:_MSS:80:00:0:1:1:1:A:LT:Linux 2.4.7 (X86) +16A0:01F4:40:00:1:1:1:1:A:3C:Linux +16A0:0564:40:00:0:1:1:1:A:3C:Linux 2.6.x +16A0:0564:40:00:1:1:0:1:A:3C:Linux Redhat 7.2 (Enigma) - Linux +16A0:0564:40:00:1:1:1:1:A:3C:Linux 2.4.xx +16A0:0564:40:WS:0:1:1:1:A:38:Linux +16A0:0564:40:WS:1:0:1:1:A:38:Linux 2.4.21 +16A0:0578:40:00:1:1:1:1:A:3C:Linux 2.4.7 +16A0:057A:40:00:1:1:1:1:A:3C:Debian Linux +16A0:057A:40:02:1:1:1:1:A:3C:Debian GNU/Linux +16A0:0584:40:00:1:1:1:1:A:3C:Linux +16A0:0586:40:00:1:1:1:1:A:3C:Linux +16A0:059C:40:00:1:1:1:1:A:3C:Linux fw 2.4.7-10 +16A0:05AC:20:00:1:1:1:1:A:3C:Linux +16A0:05AC:40:00:0:1:1:1:A:3C:Linux 2.4.20 RedHat 9 +16A0:05AC:40:00:1:1:0:1:A:3C:Linux +16A0:05AC:40:00:1:1:1:1:A:3C:Linux 2.4.18-686 (Debia GNU/Linux) +16A0:05AC:80:00:1:1:1:1:A:3C:Linux 2.4.12 +16A0:05AC:FF:00:1:1:1:1:A:3C:Linux 2.4.12 +16A0:05B4:40:00:0:1:1:1:A:3C:Linux 2.4.4-4GB +16A0:05B4:40:00:1:1:0:1:A:3C:Windows XP +16A0:05B4:40:00:1:1:1:0:A:LT:Linux 2.4.2 +16A0:05B4:40:00:1:1:1:1:A:3C:Linux 2.4.xx +16A0:05B4:40:01:1:1:1:1:A:LT:Linux Kernel 2.4.17 (with MOSIX patch) +16A0:05B4:40:03:1:1:0:1:A:3C:Linux Kernel 2.4.xx +16A0:05B4:40:07:1:1:1:1:A:3C:Linux.2.4.20-web100 +16A0:05B4:40:WS:0:1:1:1:A:38:Windows +16A0:05B4:40:WS:1:0:1:1:A:38:Linux +16A0:05B4:80:00:0:1:1:0:A:3C:Linux Kernel 2.4.xx +16A0:05B4:80:00:0:1:1:1:A:3C:Linux Kernel 2.4.xx +16A0:05B4:80:00:1:1:1:1:A:3C:Linux Kernel 2.4.12 +16A0:05B4:FF:00:1:1:0:1:A:3C:Linux Kernel 2.4.18 +16A0:05B4:FF:00:1:1:1:1:A:3C:Linux 2.4.12 +16A0:2A05:40:00:1:1:0:1:A:3C:Linux 2.4.22 +16A0:5C05:40:00:0:1:1:1:A:3C:Linux 2.4.19 Knoppix +16A0:6405:40:02:0:1:1:1:A:3C:RedHat Enterprise 3.0 ES +16A0:7A05:40:00:0:1:1:1:A:3C:Redhat Linux +16A0:8C05:40:00:0:1:1:1:A:3C:Linux RedHat 9 +16A0:B405:40:00:0:1:1:1:A:3C:Linux version 2.4.2-2 (Red Hat Linux 7.1) +16A0:B405:40:00:0:1:1:1:A:LT:Linux Kernel 2.4.24 (ppc) +16A0:B405:40:00:1:1:1:1:A:3C:Linux Debian Unstable 2.4.26 +16A8:05AA:40:WS:1:1:1:0:A:30:Debian GNU/Linux (unstable) - 2.4.xx Series Kernel +16B0:051E:40:WS:1:1:1:0:A:30:Linux 2.4.19 +16B0:0584:40:00:1:1:1:1:S:3C:Linux 2.2.x +16B0:0584:40:WS:0:0:1:0:A:2C:Slackware 8.0 Linux 2.2.20 +16B0:0584:40:WS:1:1:1:0:A:30:Redhat 7.0 (linux 2.2.16) +16B0:05AC:40:00:1:1:1:0:S:3C:Linux 2.4.10 +16B0:05AC:40:00:1:1:1:1:S:3C:Linux 2.4.18-6mdk +16B0:05AC:40:6F:1:1:1:0:S:3C:Linux 2.4.10 +16D0:0218:80:00:1:1:1:0:S:30:Windows 95 +16D0:0218:80:WS:1:1:1:0:A:30:Windows 2000 +16D0:052A:40:00:1:1:0:1:S:3C:Linux 2.4.23 +16D0:0550:80:WS:1:1:1:0:S:30:Windows XP +16D0:055C:40:00:1:1:1:1:S:3C:Linux 2.6.7-gentoo-r7 +16D0:0564:40:00:0:1:1:0:A:30:Phlak 0.2 +16D0:0564:40:00:1:1:1:0:A:34:Linux 2.4.2 +16D0:0564:40:00:1:1:1:1:S:3C:Linux RedHat +16D0:0564:40:WS:0:0:1:0:A:2C:Linux 2.4 +16D0:0564:40:WS:1:1:1:0:A:30:Linux 2.4.19 +16D0:0564:40:WS:1:1:1:1:S:3C:Slackware Linux 8.1 +16D0:0584:40:00:1:1:1:1:S:3C:Linux 2.4.8 +16D0:0584:40:WS:0:0:1:0:A:2C:Linux 2.4.18 +16D0:0584:40:WS:1:1:1:0:A:30:Linux 2.4.17 +16D0:0584:80:WS:0:0:1:0:A:2C:RedHat Linux +16D0:0594:40:WS:0:0:0:0:A:2C:Linux +16D0:0598:40:WS:0:0:1:0:A:2C:Linux +16D0:0598:40:WS:1:1:0:0:A:30:Linux +16D0:059C:40:WS:1:1:1:0:A:30:Red Hat Linux +16D0:05AC:40:00:1:1:1:1:S:3C:Debian - Linux 2.4.18 +16D0:05AC:40:WS:0:0:1:0:A:2C:Linux 2.4.xx +16D0:05AC:40:WS:1:1:0:0:A:30:Windows .NET +16D0:05AC:40:WS:1:1:1:0:A:30:Linux 2.4.18-3 (IServ/RedHat) +16D0:05B4:01:WS:1:1:1:0:A:30:Linux +16D0:05B4:20:00:1:1:1:1:S:3C:Linux 2.4.20 +16D0:05B4:20:00:1:1:1:1:S:LT:Linux 2.4.10-GR Security Patch 1.8.1 +16D0:05B4:40:00:0:1:0:0:A:30:Slackware 2.4.17 +16D0:05B4:40:00:0:1:0:1:A:3C:HP psc 2500 network Printer +16D0:05B4:40:00:0:1:1:0:A:30:Linux Slackware 8 - kernel 2.4.17 +16D0:05B4:40:00:0:1:1:0:S:30:Mandrake 8.2 +16D0:05B4:40:00:0:1:1:0:S:3C:Linux 2.4.13-ac7 +16D0:05B4:40:00:0:1:1:1:S:3C:Linux 2.4.19-pre10-ac2 +16D0:05B4:40:00:1:1:0:0:S:34:Linux 2.4.xx +16D0:05B4:40:00:1:1:0:1:S:3C:Linux 2.6.0 +16D0:05B4:40:00:1:1:1:0:A:34:Linux 2.4.xx +16D0:05B4:40:00:1:1:1:0:S:30:Linux 2.4.1-14 +16D0:05B4:40:00:1:1:1:0:S:34:Linux 2.4.23-grsec +16D0:05B4:40:00:1:1:1:0:S:34:Linux Debian Woody +16D0:05B4:40:00:1:1:1:0:S:3C:Linux 2.4.xx +16D0:05B4:40:00:1:1:1:1:S:3C:Linux 2.4.xx +16D0:05B4:40:01:1:1:1:1:S:3C:Linux 2.4.10 - 2.4.16 +16D0:05B4:40:01:1:1:1:1:S:LT:Linux Red Hat 9 +16D0:05B4:40:03:1:1:1:0:A:34:Windows +16D0:05B4:40:07:1:1:1:1:S:3C:Debian Linux +16D0:05B4:40:07:1:1:1:1:S:3C:Linux Fedora Core 2 2.6.8-1.521 +16D0:05B4:40:WS:0:0:0:0:A:2C:HP LaserJet 2100 Series +16D0:05B4:40:WS:0:0:0:0:A:LT:Intel PRO/Wireless LAN Acess Point Version 02.00-04 +16D0:05B4:40:WS:0:0:0:0:S:2C:Linux +16D0:05B4:40:WS:0:0:1:0:A:2C:Linux 2.4.xx +16D0:05B4:40:WS:0:0:1:0:A:LT:Linux +16D0:05B4:40:WS:0:0:1:0:A:LT:Linux +16D0:05B4:40:WS:0:0:1:0:S:2C:Linux 2.4.18 +16D0:05B4:40:WS:0:1:1:1:S:38:SuSE Linux 8.0 Kernel 2.4.18-4GB (i686) +16D0:05B4:40:WS:1:1:0:0:A:30:Linux +16D0:05B4:40:WS:1:1:1:0:A:1C:Linux 2.4.22-gentoo-r5 +16D0:05B4:40:WS:1:1:1:0:A:30:Linux 2.4.xx +16D0:05B4:40:WS:1:1:1:0:A:30:Linux Fedora Core 1 +16D0:05B4:40:WS:1:1:1:0:A:30:Mandrake 9.2 (Linux 2.4.xx) +16D0:05B4:80:00:1:1:1:1:S:3C:Linux 2.4.14 - 2.4.22 +16D0:05B4:80:WS:0:0:0:0:A:2C:Linux +16D0:05B4:80:WS:0:0:1:0:A:2C:Windows XP / 2000 +16D0:05B4:80:WS:0:0:1:0:S:2C:FreeBSD +16D0:05B4:80:WS:1:1:0:0:A:30:Linux +16D0:05B4:80:WS:1:1:1:0:A:30:Windows 95 +16D0:05B4:80:WS:1:1:1:0:S:30:Windows 95 +16D0:05B4:80:WS:1:1:1:0:S:LT:Windows 98 / 2000 +16D0:05B4:FF:00:1:1:1:1:S:3C:Slackware Linux +16D0:05B4:FF:WS:0:0:0:0:A:2C:Linksys BEFSR11 1 Port Router/HUB +16D0:05B4:FF:WS:0:0:1:0:S:2C:Linux 2.4 +16D0:05B4:FF:WS:1:1:0:0:S:30:Windows 98 +16D0:05B4:FF:WS:1:1:1:0:A:LT:Linux 2.4.10 +16D0:05B4:FF:WS:1:1:1:0:S:30:Windows 98 +16D0:9C05:40:WS:1:1:1:0:A:30:Linux 2.4.18 +16D0:B405:40:00:1:1:1:1:S:3C:Linux 2.4.18 +16D0:B405:40:00:1:1:1:1:S:LT:Redhat Linux 7.1 (Kernel 2.4.2) +16D0:B405:40:01:1:1:1:1:S:LT:SuSe 8.0 Linux 2.4.18 +16D0:B405:40:WS:0:0:0:0:A:2C:HP LaserJet 4050N +16D0:B405:40:WS:0:0:0:0:A:LT:SMC Broadband / MacSense Router +16D0:B405:40:WS:0:0:1:0:A:2C:RedHat Linux 7.3 (2.4.18) +16D0:B405:FF:WS:0:0:0:0:A:2C:LinkSys Router +16D0:_MSS:80:00:0:0:0:0:A:LT:HP Color LaserJet 4500N, Jet Direct J3113A/2100 +16D0:_MSS:80:00:0:1:1:0:A:LT:Windows NT4 / Win95 / Win98 +16D0:_MSS:80:00:0:1:1:1:A:LT:Windows NT4 / Win95 / Win98 +16D0:_MSS:80:WS:0:0:0:0:A:LT:HP Color LaserJet 4500N, Jet Direct J3113A/2100 +16D0:_MSS:80:WS:0:0:1:0:A:LT:Linux 2.4.7 (X86) +1770:0578:40:WS:0:0:1:0:A:2C:SMC Router SMC7004VBR +1800:04EC:80:WS:1:1:0:0:A:30:NetWare 6 SP3 +1800:0558:80:WS:0:0:1:0:A:LT:Novell Netware 5.1 SP3 +1800:0558:80:WS:0:0:1:0:S:2C:Novel Netware 4.0 +1800:05B4:40:00:0:1:1:1:S:3C:VMS +1800:05B4:80:00:0:1:1:0:A:30:Novel Netware 5.1 +1800:05B4:80:00:1:1:1:0:A:34:Novell Netware 5.1 +1800:05B4:80:00:1:1:1:0:S:34:Novell Netware 6.0 +1800:05B4:80:WS:0:0:1:0:A:2C:Novell Netware 4.0 / 5.0 +1800:05B4:80:WS:0:0:1:0:S:2C:Novell Netware 5.1 +1800:05B4:80:WS:1:1:1:0:A:30:Netware 5.1 SP5 +1800:5805:80:WS:0:0:1:0:A:LT:Novell Netware 5.1 +1800:_MSS:40:WS:0:0:1:0:A:LT:VMS MultiNet V4.2(16) / OpenVMS V7.1-2 +1800:_MSS:80:00:0:1:0:0:A:LT:OpenVMS 6.2 - 7.2-1 on VAX or AXP +1800:_MSS:80:00:0:1:0:1:A:LT:OpenVMS 6.2 - 7.2-1 on VAX or AXP +1800:_MSS:80:00:0:1:1:0:A:LT:VMS MultiNet V4.2(16)/ OpenVMS V7.1-2 +1800:_MSS:80:00:0:1:1:1:A:LT:VMS MultiNet V4.2(16)/ OpenVMS V7.1-2 +1800:_MSS:80:WS:0:0:0:0:A:LT:IPAD Model 5000 or V.1.52 +1800:_MSS:80:WS:0:0:1:0:A:LT:Novell Netware 5.0 SP5 +1860:05B4:80:WS:1:1:1:0:A:30:Windows XP Pro +1920:05B4:40:WS:1:1:0:0:S:30:Windows 98 +192F:_MSS:80:00:0:0:0:0:A:LT:Mac OS 7.0-7.1 With MacTCP 1.1.1 - 2.0.6 +192F:_MSS:80:WS:0:0:0:0:A:LT:Mac OS 7.0-7.1 With MacTCP 1.1.1 - 2.0.6 +1AB8:0564:40:WS:1:1:1:0:A:LT:IRIX +1C52:05AA:40:00:1:1:1:1:S:40:Windows XP Pro +1C84:05B4:40:WS:0:0:1:0:A:2C:Linux +1C84:_MSS:80:WS:0:0:0:0:A:LT:Instant Internet box +1D4C:_MSS:80:WS:0:0:0:0:A:LT:Sega Dreamcast +1F0E:_MSS:80:WS:0:0:0:0:A:LT:AmigaOS AmiTCP/IP 4.3 +1FB0:0FD8:40:WS:0:0:0:0:A:2C:Actiontec ADSL modem +1FB0:0FD8:40:WS:0:0:0:0:A:2C:Actiontec ADSL mom +1FE0:0550:80:WS:1:1:1:0:S:30:Windows +1FFE:0218:FF:WS:0:0:0:0:A:2C:Linux Debian +1FFE:0546:FF:WS:0:0:0:0:A:2C:Linux Debian 2.4 +1FFE:055C:FF:WS:0:0:0:0:A:2C:Linux Debian woody +1FFE:0584:FF:WS:0:0:0:0:A:2C:Linux Debian +1FFE:0596:FF:WS:0:0:0:0:A:2C:Windows +1FFE:05B4:FF:WS:0:0:0:0:A:2C:Linux Debian +1FFF:_MSS:80:00:0:0:1:0:A:LT:Novell NetWare 3.12 - 5.00 +1FFF:_MSS:80:WS:0:0:1:0:A:LT:NetWare 4.11 SP7- 5 SP3A BorderManager 3.5 +2000:0002:40:00:0:1:0:0:A:LT:Mac OS 9/Apple ShareIP +2000:0109:40:WS:0:0:0:0:A:LT:Cisco CacheOS 1.1.0 +2000:0200:40:WS:0:0:0:0:A:2C:ForeThought ASX200BX +2000:0200:40:WS:0:0:0:0:A:LT:QNX / Amiga OS +2000:0200:80:WS:1:1:1:0:S:30:Windows XP - Windows 98 +2000:020C:40:00:0:1:0:1:A:LT:OS/400 +2000:0218:20:WS:1:1:0:0:S:30:Windows XP +2000:0218:40:WS:0:0:0:0:A:LT:OS/400 +2000:0218:80:00:1:1:1:0:S:30:Windows 9x +2000:0218:80:WS:1:1:1:0:S:30:Windows 9x or 2000 +2000:052A:80:WS:1:1:1:0:S:30:Windows 98 +2000:0534:80:WS:1:1:1:0:S:30:Windows 98 +2000:0550:80:WS:1:1:1:0:S:30:Windows 9x +2000:0556:80:WS:1:1:1:0:S:30:Windows 98 SE +2000:0564:40:WS:0:0:0:0:A:2C:Linux +2000:0564:80:WS:1:1:1:0:S:30:Windows 98 +2000:056C:40:00:0:1:0:1:A:3C:IBM AS400 +2000:0584:40:WS:0:0:0:0:A:2C:Linux (debian 2.0) +2000:0586:80:WS:1:1:1:0:S:30:Windows 9x or NT4 +2000:0588:80:WS:1:1:1:0:S:30:Windows 98SE +2000:0598:80:WS:1:1:1:0:S:30:Windows 2000 +2000:059C:40:00:0:1:0:1:A:3C:Windows NT +2000:059C:80:WS:1:1:1:0:S:30:Windows 98 +2000:05AC:40:00:0:1:0:0:A:30:OS 400 +2000:05AC:40:WS:0:0:0:0:A:2C:Windows +2000:05AC:40:WS:0:0:1:0:A:2C:AS400 +2000:05AC:80:WS:0:0:1:0:S:2C:Windows NT 4.0 +2000:05AC:80:WS:1:1:1:0:S:30:Windows 98 SE +2000:05B0:20:WS:0:0:1:0:S:2C:Windows 95 +2000:05B0:80:00:1:1:1:0:S:40:Linux 2.2.13 +2000:05B0:80:00:1:1:1:1:S:LT:Windows 95 +2000:05B0:80:WS:0:0:0:0:A:2C:D-Link DI 614v2.2 +2000:05B0:80:WS:1:1:1:0:S:30:Windows NT SP3 +2000:05B4:08:WS:1:1:0:0:S:30:Windows 2000 +2000:05B4:20:00:0:0:1:0:S:2C:Windows NT 4.0 +2000:05B4:20:WS:0:0:1:0:S:2C:Windows 95 +2000:05B4:20:WS:1:1:0:0:S:LT:Slackware Linux 7.1 Kernel 2.2.16 +2000:05B4:20:WS:1:1:1:0:S:30:Windows 98 +2000:05B4:40:00:0:1:0:0:A:30:SMC Barricade Wireless router +2000:05B4:40:00:0:1:1:0:S:3C:BSDI BSD/OS 3.1 +2000:05B4:40:00:0:1:1:0:S:LT:BSDI BSD/OS 3.1 +2000:05B4:40:00:0:1:1:1:A:3C:FreebSD 5.0 RELEASE (x86) +2000:05B4:40:00:1:1:1:0:S:3C:BSDI BSD/OS 3.0-3.1 (or MacOS, NetBSD) +2000:05B4:40:00:1:1:1:0:S:40:WebTV netcache engine (BSDI) +2000:05B4:40:WS:0:0:0:0:A:2C:Linux +2000:05B4:40:WS:0:0:0:0:S:2C:CacheFlow 500x CacheOS 2.1.08 - 2.2.1 +2000:05B4:40:WS:0:0:1:0:S:2C:AXCENT Raptor Firewall Windows NT 4.0/SP3 +2000:05B4:80:00:0:0:1:0:S:2C:Windows NT 4.0 +2000:05B4:80:00:0:0:1:0:S:LT:Windows NT 4.0 +2000:05B4:80:00:1:1:1:0:S:2C:Windows 9x +2000:05B4:80:00:1:1:1:0:S:30:Windows 9x +2000:05B4:80:00:1:1:1:0:S:40:Windows 9x +2000:05B4:80:00:1:1:1:1:S:40:Windows 95 +2000:05B4:80:WS:0:0:0:0:A:2C:D-Link DWL-900AP +2000:05B4:80:WS:0:0:0:0:S:2C:Windows NT 4.0 +2000:05B4:80:WS:0:0:1:0:A:2C:Windows 2000 +2000:05B4:80:WS:0:0:1:0:S:2C:Windows NT 4.0 SP6a / Windows 2000 +2000:05B4:80:WS:1:0:1:0:S:2C:Windows NT +2000:05B4:80:WS:1:0:1:0:S:LT:Windows NT +2000:05B4:80:WS:1:1:0:0:S:30:Windows 95 +2000:05B4:80:WS:1:1:1:0:A:30:Windows 2000 +2000:05B4:80:WS:1:1:1:0:S:30:Windows 98 / 2000 +2000:05B4:80:WS:1:1:1:0:S:3C:Linux 2.2.19 +2000:05B4:80:WS:1:1:1:0:S:LT:Windows 98 +2000:05B4:FF:WS:1:1:0:0:S:30:Windows XP SP1 +2000:05B4:FF:WS:1:1:1:0:S:30:Windows 98SE +2000:6363:80:WS:1:1:1:0:S:LT:Microsoft NT 4.0 Server SP5 +2000:6D70:40:WS:0:0:0:0:A:2C:Linux +2000:B405:20:WS:0:0:0:0:A:LT:HP Ux 9.x +2000:B405:20:WS:0:0:1:0:S:LT:Windows 2000 +2000:B405:40:00:0:1:0:1:A:3C:Apple AirPort Base Station +2000:B405:40:00:0:1:1:1:A:3C:windows 98 +2000:B405:80:00:0:1:0:1:A:3C:Cisco VPN3002 HW Client +2000:B405:80:WS:0:0:1:0:S:LT:Windows 98 / NT +2000:B405:80:WS:1:1:1:0:S:30:Windows 98 / XP +2000:B405:FF:WS:1:1:1:0:S:30:Windows 98se +2000:_MSS:40:WS:0:0:0:0:S:LT:Mac OS 8.6 +2000:_MSS:40:WS:0:0:1:0:A:LT:BSDI BSD/OS +2000:_MSS:80:00:0:0:0:0:A:LT:IBM VM/ESA 2.2.0 CMS Mainframe System +2000:_MSS:80:00:0:0:1:0:A:LT:Novell NetWare 3.12 - 5.00 +2000:_MSS:80:00:0:1:0:0:A:LT:Accelerated Networks - High Speed Integrated Access VoDSL +2000:_MSS:80:00:0:1:0:1:A:LT:Tandem NSK D40 +2000:_MSS:80:00:0:1:1:0:A:LT:AS/400e 720 running OS/400 R4.4 +2000:_MSS:80:00:0:1:1:1:A:LT:AS/400e 720 running OS/400 R4.4 +2000:_MSS:80:WS:0:0:0:0:A:LT:AGE Logic, Inc. IBM XStation +2010:_MSS:80:WS:0:0:1:0:A:LT:Windows NT / Win9x +2017:0534:80:WS:0:0:1:0:A:2C:Windows 98 SE +2017:05B4:40:00:0:1:1:1:A:LT:BSDI BSD/OS 3.0-3.1 (or possibly MacOS, NetBSD) +2017:05B4:80:WS:0:0:1:0:A:2C:Windows 98 SE / Windows NT 4.0 +2017:1802:80:WS:0:0:1:0:A:LT:Windows NT 4.0 +2017:_MSS:80:00:0:1:0:0:A:LT:Ascend GRF Router running Ascend Embedded/OS 2.1 +2017:_MSS:80:00:0:1:1:0:A:LT:BSDI 4.0-4.0.1 +2017:_MSS:80:00:0:1:1:1:A:LT:BSDI 4.0-4.0.1 +2017:_MSS:80:WS:0:0:0:0:A:LT:CacheOS (CacheFlow 500-5000 webcache) CFOS 2.1.08 - 2.2.1 +2017:_MSS:80:WS:0:0:1:0:A:LT:3Com NetBuilder & NetBuilder II OS v 9.3 +2058:0564:40:WS:0:0:1:0:A:2C:BSDi BSD/OS 4.0.1 +2058:0564:80:WS:0:0:0:0:A:2C:Windows NT +2058:0564:80:WS:0:0:1:0:A:2C:Windows 2000 / NT / Win9x +2058:05B4:80:WS:1:1:1:0:A:LT:Windows 98 SE +2058:6405:80:WS:0:0:1:0:A:LT:Windows +20D0:0578:40:00:1:1:1:1:A:40:Windows +20D0:0578:80:WS:0:0:1:0:A:2C:Windows NT 4.0 Server +2118:0584:80:WS:0:0:0:0:A:2C:Checkpoint FW-1 4.1 on Solaris 2.6 +2120:_MSS:80:WS:0:0:1:0:A:LT:Gauntlet 4.0a firewall on Solaris 2.5.1 +2130:0588:80:WS:1:1:1:0:A:30:Windows 98 SE +2142:058B:40:00:1:1:1:1:A:40:Windows NT +2180:0218:80:WS:1:1:1:0:A:30:Windows 98 +2180:05B0:80:WS:0:0:1:0:A:2C:Windows NT - Windows 9x +2180:05B4:20:WS:0:0:1:0:A:2C:Windows XP +2180:05B4:80:00:1:1:1:1:S:40:Windows 9x +2180:05B4:80:WS:0:0:1:0:A:2C:Windows NT / Win9x +2180:_MSS:20:WS:0:0:1:0:A:LT:Windows NT / Win9x +2180:_MSS:40:WS:0:0:1:0:A:LT:BSDI BSD/OS +2190:05B4:20:WS:0:0:1:0:A:LT:Windows NT / Win9x +2190:05B4:80:WS:0:0:1:0:A:LT:Windows NT / Win9x +21D2:05B4:80:WS:0:0:1:0:A:LT:Windows NT / Win9x +21F0:05B4:80:00:1:1:1:1:A:40:vXWorks +21F0:05B4:80:WS:0:0:1:0:A:LT:Windows NT 4.0 +2200:_MSS:80:00:0:1:0:0:A:LT:Stock OpenVMS 7.1 +2200:_MSS:80:00:0:1:0:1:A:LT:Stock OpenVMS 7.1 +2200:_MSS:80:00:0:1:1:0:A:LT:OpenVMS 6.2/Alpha +2200:_MSS:80:00:0:1:1:1:A:LT:OpenVMS 6.2/Alpha +2200:_MSS:80:WS:0:0:0:0:A:LT:Linux 2.0.34-38 +2208:05AC:40:WS:1:1:1:0:A:30:Linux +2208:05B4:80:WS:0:0:1:0:A:2C:Windows NT +2208:05B4:80:WS:1:1:1:0:A:30:Windows 98 SE +2220:05B0:80:WS:1:1:1:0:A:30:Windows NT +2220:_MSS:40:WS:0:0:1:0:A:LT:BSDI BSD/OS +2220:_MSS:80:WS:0:0:1:0:A:LT:Windows NT / Win9x +2229:_MSS:80:00:0:0:1:0:A:LT:Solaris 2.5, 2.5.1 +2229:_MSS:80:WS:0:0:0:0:A:LT:DG/UX Release R4.11MU02 +2229:_MSS:80:WS:0:0:1:0:A:LT:Solaris 2.3 - 2.4 +2238:0218:40:WS:1:1:1:0:A:30:Windows 98 +2238:0218:80:WS:1:1:1:0:S:30:Windows 2000 Pro +2238:0550:80:WS:1:1:1:0:S:LT:Linux +2238:0564:80:WS:0:0:1:0:A:30:Solaris 2.7 +2238:0564:80:WS:1:1:1:0:S:30:Solaris +2238:0564:FF:00:0:0:1:0:S:2C:Solaris 2.7 +2238:0584:80:WS:0:0:1:0:A:30:Linux Red Hat +2238:05AC:40:WS:0:0:0:0:A:2C:Windows 98 +2238:05B4:20:WS:0:0:0:0:A:LT:Snap Server (Quantum) +2238:05B4:20:WS:0:0:1:0:A:2C:Microsoft Windows 95 +2238:05B4:20:WS:1:1:1:0:S:30:Windows 98 +2238:05B4:40:00:0:0:1:0:S:LT:Solaris 2.6 +2238:05B4:40:00:0:1:0:0:A:30:Hp jetDirect +2238:05B4:40:00:0:1:0:1:A:3C:SMC Barricade SMC7004VWBR +2238:05B4:40:00:0:1:1:1:A:3C:IRIX +2238:05B4:40:00:0:1:1:1:A:LT:BSDI BSD/OS 3.0 +2238:05B4:40:00:1:1:1:1:A:40:Cisco IOS +2238:05B4:40:WS:0:0:0:0:A:2C:Linksys WAP11 +2238:05B4:40:WS:0:0:1:0:A:2C:Cisco IOS +2238:05B4:40:WS:0:0:1:0:A:LT:BSDI BSD/OS 3.0-3.1 (or possibly MacOS, NetBSD) +2238:05B4:40:WS:1:1:1:0:A:30:Windows NT4 +2238:05B4:40:WS:1:1:1:0:S:30:Windows XP SP1 + Sygate Personal Firewall +2238:05B4:80:00:1:1:1:1:A:40:Windows 98 +2238:05B4:80:WS:0:0:0:0:A:2C:Windows NT 4.x +2238:05B4:80:WS:0:0:1:0:A:2C:Windows NT 4.x / Win9x +2238:05B4:80:WS:0:0:1:0:A:30:Windows +2238:05B4:80:WS:1:1:0:0:A:30:Windows 98 +2238:05B4:80:WS:1:1:1:0:A:30:Windows 98 / 2000 / XP +2238:05B4:80:WS:1:1:1:0:S:30:Windows 2000 - XP SP1 +2238:05B4:FF:00:0:0:1:0:S:2C:Solaris 2.6 or 2.7 +2238:05B4:FF:00:0:1:0:0:A:30:SunOS 5.7 +2238:05B4:FF:00:0:1:1:0:A:30:SunOS 5.7 +2238:05B4:FF:WS:0:0:1:0:A:2C:SunOS 5.7 +2238:05B4:FF:WS:0:0:1:0:A:LT:OpenBSD +2238:05B4:FF:WS:0:0:1:0:S:2C:SunOS 5.7 Generic sun4u sparc +2238:05B4:FF:WS:0:1:1:0:S:2C:Solaris 2.6 or 2.7 +2238:05B4:FF:WS:1:0:1:0:S:2C:Solaris 2.6 - 2.7 +2238:05B4:FF:WS:1:1:1:0:A:30:SunOS 5.7 +2238:1128:80:WS:0:0:1:0:A:2C:Novell Netware +2238:1144:80:WS:0:0:1:0:A:2C:Windows NT 4.0 +2238:9805:80:00:0:1:0:1:A:3C:Windows XP Professional +2238:B405:20:WS:0:0:1:0:A:2C:Windows 95 +2238:B405:40:00:0:1:1:1:A:3C:Windows 2000 / XP +2238:B405:80:00:0:1:1:1:A:3C:Windows 95 +2238:B405:80:WS:0:0:1:0:A:2C:Windows 2000 +2238:B405:FF:00:0:1:1:0:A:LT:Solaris +2238:B405:FF:WS:0:0:0:0:A:2C:Solaris 2.5.1 +2238:B405:FF:WS:0:0:1:0:A:LT:Solaris 2.5.1 +2238:B405:FF:WS:0:0:1:0:S:LT:Solaris 7 +2238:_MSS:40:WS:0:0:1:0:A:LT:BSDI BSD/OS +2238:_MSS:80:WS:0:0:0:0:A:LT:HP printer w/JetDirect card +223F:05AC:FF:WS:0:0:0:0:A:2C:Windows 98 +223F:05B4:FF:WS:0:0:0:0:A:2C:Solaris 2.6 +223F:7805:FF:WS:0:0:0:0:A:LT:Solaris +2274:04EC:80:WS:1:1:1:0:A:30:Windows 98 +2274:04EC:FF:WS:1:1:1:0:A:30:Symantec Raptor Firewall +2274:0564:80:WS:0:0:1:0:A:2C:PIX FireWall +2284:114E:40:00:1:1:1:1:A:3C:Solaris +2297:0109:FF:00:0:1:1:1:A:3C:Solaris 2.6 -7 (SPARC) +2297:_MSS:80:00:0:1:1:0:A:LT:Raptor Firewall 6 on Solaris 2.6 +2297:_MSS:80:00:0:1:1:1:A:LT:Raptor Firewall 6 on Solaris 2.6 +2328:_MSS:FF:WS:0:0:1:0:A:LT:Solaris 2.6 - 2.7 +2332:_MSS:80:00:0:0:1:0:A:LT:Solaris 2.3 - 2.4 +2332:_MSS:80:WS:0:0:0:0:A:LT:Solaris 2.4 w/most Sun patches +2332:_MSS:80:WS:0:0:1:0:A:LT:Solaris 2.3 - 2.4 +2398:0218:FF:WS:0:0:1:0:A:2C:SunOS 5.6 +239C:_MSS:80:WS:0:0:0:0:A:LT:Apollo Domain/OS SR10.4 +23B4:23B4:FF:00:0:0:1:0:S:LT:Solaris 2.6 +2400:_MSS:FF:WS:0:0:1:0:A:LT:Solaris 2.6 - 2.7 +246C:0534:80:WS:0:0:1:0:A:2C:Windows NT 4.0 +2491:_MSS:80:00:0:1:1:0:A:LT:Solaris 2.6 - 2.7 with tcp_strong_iss=0 +2491:_MSS:80:00:0:1:1:1:A:LT:Solaris 2.6 - 2.7 with tcp_strong_iss=0 +2530:0550:80:WS:1:1:1:0:A:30:windows 98 +2530:05B4:80:WS:0:0:1:0:A:LT:Windows 2000 +2544:_MSS:80:00:0:0:1:0:A:LT:Solaris 2.3 - 2.4 +2568:0564:FF:00:1:1:1:1:A:40:Solaris 8 +2568:0564:FF:WS:0:1:0:1:A:38:Solaris +2568:0564:FF:WS:1:1:1:1:A:3C:Solaris +2580:05AC:80:WS:1:1:1:0:A:30:Windows 2000 Sp3 (Build2195) +25BC:0564:FF:WS:0:0:1:0:A:2C:Windows +25BC:0564:FF:WS:0:0:1:0:A:LT:Solaris +25BC:0564:FF:WS:1:1:1:0:A:30:Solaris +2648:0584:FF:00:1:1:1:1:A:40:Windows 2000 NT +2648:8405:FF:00:0:1:1:1:A:LT:Solaris +26E2:058E:FF:WS:1:1:1:0:A:30:SunOS 5.7 +2756:_MSS:80:WS:0:0:0:0:A:LT:AmigaOS AmiTCP/IP Genesis 4.6 +2760:05AC:FF:00:1:1:1:1:A:40:Solaris 7 +2788:_MSS:80:00:0:1:1:0:A:LT:Solaris 2.6 - 2.7 +2788:_MSS:80:00:0:1:1:1:A:LT:Solaris 2.6 - 2.7 +2798:05B4:FF:00:0:1:1:0:A:LT:Solaris +2798:05B4:FF:00:0:1:1:1:A:3C:Solaris 2.6 / SunOS 5.6 +2798:05B4:FF:00:1:1:1:1:A:40:SunOS 5.7 +2798:B405:FF:00:0:1:0:1:A:3C:Solaris 6 +2798:B405:FF:00:0:1:1:1:A:3C:Solaris 7 +2798:_MSS:FF:WS:0:0:1:0:A:LT:Solaris 2.6 - 2.7 +2800:05B4:80:WS:0:0:0:0:S:2C:Tiptel Innovaphone IP200 V4.00 sr4 +2800:05B4:80:WS:1:1:1:0:S:30:Windows XP Professional SP1 +2A20:0550:FF:00:0:1:1:1:A:3C:SunOS 5.6 sum4m sparc SUNW,SPARCstation-20 +2D24:_MSS:80:00:0:1:1:1:A:LT:Linux Kernel 2.4.xx (X86) +2D25:_MSS:80:WS:0:0:0:0:A:LT:Mac OS 7.0-7.1 With MacTCP 1.1.1 - 2.0.6 +2DA0:B405:40:00:0:1:0:0:A:30:HPirect J6039A +2DA0:_MSS:80:WS:0:0:0:0:A:LT:Windows 98SE + IE5.5sp1 +3000:05B4:FF:WS:0:0:0:0:A:2C:BeOS +3000:05B4:FF:WS:0:0:0:0:S:2C:BeOS 5.0 +3000:05B4:FF:WS:0:1:0:0:S:2C:BeOS 5.0 +3000:_MSS:80:WS:0:0:0:0:A:LT:Acorn Risc OS 3.6 (Acorn TCP/IP Stack 4.07) +37FF:_MSS:80:WS:0:0:0:0:A:LT:Linux 1.2.13 +3840:0564:40:WS:0:0:0:0:S:2C:Windows 98 +3908:05B4:40:00:1:1:0:1:S:40:HPUX 11.11 +3908:05B4:40:00:1:1:1:1:A:3C:IPCop v1.2.0 +3908:05B4:40:WS:1:1:0:0:S:30:Windows 98 SE +3908:05B4:40:WS:1:1:1:0:A:30:Linux Debian +3908:05B4:40:WS:1:1:1:0:S:30:windows 2000 Professional +3908:05B4:80:WS:1:1:1:0:A:30:Linux 2.0.3 +3C00:_MSS:80:WS:0:0:0:0:A:LT:Linux 2.0.27 - 2.0.30 +3C0A:_MSS:80:00:0:1:1:0:A:LT:Linux 2.1.19 - 2.2.17 +3C0A:_MSS:80:00:0:1:1:1:A:LT:Linux 2.1.19 - 2.2.17 +3CAC:0584:40:00:1:1:1:1:A:3C:Linux 2.2.16 +3E43:_MSS:80:00:0:1:0:0:A:LT:AIX 4.1-4.1.5 +3E43:_MSS:80:00:0:1:0:1:A:LT:AIX 4.1-4.1.5 +3E64:05AC:40:00:0:1:1:1:A:3C:Debian 3.0 +3E64:05AC:40:00:1:1:1:0:S:3C:Windows 98 +3E64:05AC:40:00:1:1:1:1:A:4C:Linux 2.2.x 2.4.x +3E64:05AC:40:00:1:1:1:1:S:3C:Linux Debian 3.0 (kernel 2.2) +3E80:05A6:80:WS:0:0:0:0:A:2C:Windows xp +3E80:05B4:FF:WS:0:0:0:0:A:2C:CiscoATA-186 +3E80:_MSS:80:WS:0:0:0:0:A:LT:Alcatel Advanced Reflexes IP Phone, Version: E/AT400/46.8 +3E80:_MSS:80:WS:0:0:1:0:A:LT:VersaNet ISP-Accelerator(TM) Remote Access Server +3EBC:05B4:40:00:1:1:0:1:A:3C:Linux 2.2.17 GNU Debian/Potato +3EBC:05B4:40:00:1:1:1:0:A:34:Linux Slackware 8.0 +3EBC:05B4:40:00:1:1:1:0:S:3C:Debian/Caldera Linux 2.2.x +3EBC:05B4:40:00:1:1:1:1:A:3C:Linux 2.2.19 or 2.4.17 +3EBC:05B4:40:00:1:1:1:1:S:3C:Linux 2.2.16 - 2.2.19 +3EBC:05B4:40:WS:0:0:0:0:A:2C:AIX 4.3.2 +3EBC:05B4:40:WS:0:0:1:0:A:2C:AIX 4.3 +3EBC:05B4:40:WS:0:0:1:0:A:LT:Debian GNU/Linux +3EBC:05B4:40:WS:1:1:1:0:A:30:Linux 2.2.19 +3EBC:05B4:40:WS:1:1:1:0:A:LT:Linux 2.2.19 +3EBC:05B4:80:WS:0:0:0:0:A:2C:Novell Netware +3EBC:B405:40:00:1:1:1:1:S:LT:Slackware Linux v7.1 - Linux Kernel 2.2.16 +3ED0:0218:40:WS:0:0:1:0:A:LT:Linux Slackware 8.0 +3F20:0650:40:00:1:1:1:1:S:3C:Linux 2.2.19 +3F25:0109:40:00:0:1:1:1:A:3C:Linux 2.2.17 - 2.2.19 +3F25:_MSS:80:00:0:1:0:0:A:LT:AIX 4.3.2.0-4.3.3.0 on an IBM RS/* +3F25:_MSS:80:00:0:1:0:1:A:LT:AIX 4.3.2.0-4.3.3.0 on an IBM RS/* +3F25:_MSS:80:00:0:1:1:0:A:LT:Linux 2.1.19 - 2.2.17 +3F25:_MSS:80:00:0:1:1:1:A:LT:Linux 2.1.19 - 2.2.17 +3F25:_MSS:80:WS:0:0:0:0:A:LT:AIX 3.2 +3F25:_MSS:80:WS:0:0:1:0:A:LT:Linux 2.2.19 +3FE0:05B4:40:WS:0:0:0:0:A:2C:Caldera OpenLinux(TM) 1.3 / RedHat 7.2 / FreeSCO 0.2.7 +3FE0:_MSS:80:00:0:0:0:0:A:LT:Linux 2.0.32-34 +3FF0:_MSS:80:00:0:0:0:0:A:LT:Linux 2.0.34-38 +3FF0:_MSS:80:WS:0:0:0:0:A:LT:AtheOS ( www.atheos.cx ) +3FFF:_MSS:80:WS:0:0:0:0:A:LT:IBM MVS (unknown version) +4000:0000:40:WS:0:0:0:0:S:LT:ULTRIX V4.5 (Rev. 47) +4000:01F4:80:WS:1:1:0:0:A:30:Windows +4000:0200:40:00:0:0:0:0:S:2C:AIX 3.2, 4.2 - 4.3 +4000:0200:40:00:0:1:0:0:S:3C:OpenBSD 2.6-2.8 +4000:0200:40:00:0:1:0:1:A:3C:IPSO 3.3 / Net BSD 1.5.2 +4000:0200:40:00:0:1:0:1:S:LT:OpenBSD +4000:0200:40:00:1:1:0:1:S:LT:FreeBSD +4000:0200:40:WS:0:0:0:0:A:2C:AIX 4.3 +4000:0200:40:WS:0:0:0:0:S:LT:BorderWare 5.2 +4000:0200:FF:WS:0:0:0:0:A:2C:Windows 2000 +4000:0218:80:00:1:1:1:1:S:LT:Windows XP Home +4000:023C:40:00:1:1:1:0:S:40:OpenBSD 3.0 +4000:023C:80:WS:1:1:1:0:S:30:Windows NT SP4+ +4000:0400:40:00:0:1:0:1:A:3C:IPSO 3.7 +4000:0400:40:WS:0:0:0:0:A:2C:Xerox 440 Document center +4000:04EC:80:WS:1:1:1:0:S:30:Windows 2000 +4000:04F8:80:WS:1:1:1:0:S:30:Windows NT SP3 +4000:0528:80:WS:1:1:1:0:S:30:Windows XP pro +4000:052A:80:WS:1:1:0:0:S:30:Windows 2000 Server +4000:0530:80:WS:1:1:1:0:S:30:Windows 2000 +4000:0534:80:WS:1:1:1:0:S:30:Windows 2000 +4000:0542:80:WS:1:1:1:0:S:30:Windows ME +4000:0550:40:WS:0:0:0:0:A:2C:Windows 2000 +4000:0550:40:WS:0:0:1:0:A:2C:NetBSD +4000:0550:80:WS:0:0:0:0:A:2C:Mac OS +4000:0550:80:WS:0:0:1:0:A:2C:Windows 2000 +4000:0550:80:WS:1:1:1:0:S:30:Windows 2000 +4000:0556:80:WS:1:1:1:0:S:30:Windows XP +4000:0562:80:WS:1:1:1:0:S:30:Windows 2000 +4000:0564:80:WS:1:1:0:0:S:30:Windows 2000 +4000:0564:80:WS:1:1:1:0:S:LT:Windows 2000 +4000:0578:40:00:0:1:0:1:A:3C:NetBSD 1.6 +4000:0578:40:00:1:1:1:1:S:40:OpenBSD 3.0 +4000:0578:80:WS:1:1:1:0:S:30:Windows 2000 +4000:0578:FF:00:1:1:0:1:A:40:Windows 2000 / 2003 +4000:057A:80:WS:1:1:1:0:S:30:Windows 2000 +4000:057E:80:WS:1:1:1:0:S:30:Windows XP (Home) +4000:0582:80:WS:1:1:1:0:S:30:Microsoft Windows 2000 Professional SP4 +4000:0584:20:WS:1:1:0:0:S:30:Windows ME +4000:0584:80:00:1:1:0:1:A:40:Windows +4000:0584:80:WS:1:1:1:0:S:30:Windows 2000 +4000:0586:80:WS:1:1:1:0:S:30:Windows 2000 +4000:0588:80:WS:1:1:1:0:S:30:Windows ME +4000:058A:80:WS:1:1:1:0:S:30:Windows 2000 +4000:058C:80:WS:1:1:1:0:S:30:Free BSD +4000:0596:80:WS:1:1:1:0:S:30:Linux Red Hat +4000:0598:40:WS:0:0:0:0:A:2C:Linux Debian 3.0 +4000:0598:40:WS:1:1:0:0:A:30:Windows +4000:0598:80:00:1:1:1:1:S:40:Windows XP +4000:0598:80:WS:1:1:1:0:S:30:Windows 2000 +4000:05A0:80:WS:1:1:1:0:S:30:Windows XP Pro +4000:05A4:80:WS:1:1:1:0:S:30:Windows +4000:05AC:40:00:1:1:1:1:S:40:OpenBSD 3.1 +4000:05AC:80:WS:1:1:0:0:A:30:Windows 2000 +4000:05AC:80:WS:1:1:1:0:S:30:Windows 2000 / XP +4000:05B0:80:WS:1:1:1:0:S:30:Window 2000 pro. SP2 +4000:05B4:01:WS:1:1:1:0:S:30:Windows 2003 +4000:05B4:20:WS:1:1:1:0:S:30:Windows +4000:05B4:40:00:0:0:1:0:S:2C:FreeBSD 4.0-STABLE, 3.2-RELEASE +4000:05B4:40:00:0:1:0:0:S:3C:NetBSD 1.3/i386 +4000:05B4:40:00:0:1:0:1:A:3C:NetBSD 1.5.2 (GENERIC) +4000:05B4:40:00:0:1:0:1:S:3C:NetBSD 1.5 (x86) +4000:05B4:40:00:0:1:1:0:S:2C:FreeBSD 2.2.8-RELEASE +4000:05B4:40:00:0:1:1:0:S:3C:Linux 2.4.2 - 2.4.14 +4000:05B4:40:00:0:1:1:0:S:44:FreeBSD 4.3 - 4.4PRERELEASE +4000:05B4:40:00:0:1:1:0:S:LT:FreeBSD 2.2.8-RELEASE +4000:05B4:40:00:0:1:1:1:A:3C:NetBSD 1.6U +4000:05B4:40:00:0:1:1:1:S:3C:FreeBSD 4.4 +4000:05B4:40:00:1:1:0:1:S:40:OpenBSD 3.2 +4000:05B4:40:00:1:1:1:1:A:40:OpenBSD 3.5 +4000:05B4:40:00:1:1:1:1:S:40:OpenBSD 3.0 +4000:05B4:40:00:1:1:1:1:S:48:Amiga OS / Miami Deluxe 1.0c +4000:05B4:40:5E:0:1:1:0:S:2C:FreeBSD 4.0-STABLE, 3.2-RELEASE +4000:05B4:40:62:0:0:1:0:S:2C:FreeBSD 4.0-STABLE, 3.2-RELEASE +4000:05B4:40:70:0:0:1:0:S:2C:FreeBSD 4.0-STABLE, 3.2-RELEASE +4000:05B4:40:WS:0:0:0:0:A:2C:NetBSD 1.3 - 1.33 / AIX 4.3.X +4000:05B4:40:WS:0:0:0:0:S:2C:AIX 4.3 - 4.3.3 +4000:05B4:40:WS:0:0:1:0:A:2C:NetBSD +4000:05B4:40:WS:0:0:1:0:S:2C:FreeBSD 4.2 - 4.3 +4000:05B4:40:WS:1:1:0:0:A:30:Windows +4000:05B4:40:WS:1:1:1:0:S:30:Windows 2000 sp3 +4000:05B4:80:00:0:1:1:1:A:LT:Linux Kernel 2.4.xx (X86) +4000:05B4:80:00:1:1:0:1:A:40:Windows Server 2003 +4000:05B4:80:00:1:1:1:0:S:30:Windows 2000 +4000:05B4:80:00:1:1:1:1:A:40:Windows 2000 +4000:05B4:80:00:1:1:1:1:S:40:Windows 2000 Pro +4000:05B4:80:4B:1:1:1:0:S:30:Windows ME +4000:05B4:80:WS:0:0:0:0:A:2C:Windows 2000 +4000:05B4:80:WS:0:0:0:0:S:2C:Windows Longhorn +4000:05B4:80:WS:0:0:1:0:A:2C:Windows 2000 +4000:05B4:80:WS:0:1:1:0:S:30:Windows XP +4000:05B4:80:WS:1:1:0:0:A:30:Windows Server 2003 +4000:05B4:80:WS:1:1:0:0:S:30:Windows 2000 +4000:05B4:80:WS:1:1:0:0:S:LT:BeOS +4000:05B4:80:WS:1:1:1:0:A:30:Windows XP +4000:05B4:80:WS:1:1:1:0:S:30:Windows ME / 2000 / XP +4000:05B4:80:WS:1:1:1:0:S:3C:Linux RedHat 7.2 (kernel 2.4.9) +4000:05B4:80:WS:1:1:1:0:S:LT:Windows XP / 2000 / ME +4000:05B4:FF:00:0:1:1:0:S:LT:FreeBSD 2.2.6-RELEASE +4000:05B4:FF:WS:0:0:0:0:A:LT:Cisco Systems IOS 11.3 +4000:05B4:FF:WS:1:1:1:0:S:30:Windows 2000 +4000:0650:40:00:0:1:1:1:A:3C:NetBSD 1.6 +4000:0FB0:80:WS:1:1:1:0:S:LT:Windows 2000 Professional +4000:3605:80:WS:1:1:1:0:S:30:Windows XP +4000:5005:40:WS:0:0:0:0:A:2C:Mac OS X +4000:5005:80:WS:0:0:0:0:A:2C:Windows 2000 +4000:62BB:80:WS:1:1:1:0:S:LT:Windows 2000 +4000:B405:40:00:0:1:0:1:A:3C:NetBSD 1.5 +4000:B405:40:00:0:1:1:1:S:LT:FreeBSD +4000:B405:80:00:0:1:0:1:A:3C:Windows Server 2003 +4000:B405:80:WS:1:1:1:0:S:30:Windows XP / 2000 / ME +4000:B405:80:WS:1:1:1:0:S:LT:Windows XP - 2000 +4000:D84A:80:WS:1:1:1:0:S:30:Windows 2000 +4000:_MSS:80:00:0:0:0:0:A:LT:IBM MVS (unknown version) +4000:_MSS:80:00:0:0:1:0:A:LT:OpenVMS 7.1 using Process Software's TCPWare 5.3 +4000:_MSS:80:00:0:1:0:0:A:LT:Check Point FireWall-1 4.0 SP-5 (IPSO build) +4000:_MSS:80:00:0:1:0:1:A:LT:Check Point FireWall-1 4.0 SP-5 (IPSO build) +4000:_MSS:80:WS:0:0:0:0:A:LT:Auspex Fileserver (AuspexOS 1.9.1/SunOS 4.1.4) +4000:_MSS:80:WS:0:0:0:0:S:28:Windows XP +4000:_MSS:80:WS:0:0:1:0:A:LT:AmigaOS Miami 3.0 +4020:0564:40:00:0:1:0:1:A:3C:OpenBSD +402E:0218:80:00:0:1:1:1:A:3C:Windows Millenium +402E:05B4:80:00:0:1:0:1:A:3C:Linux +402E:05B4:80:00:0:1:1:1:A:3C:Windows 2000 Professional / Windows XP +402E:5005:80:00:0:1:1:1:A:3C:Windows XP / 2000 / ME +402E:B405:40:WS:0:0:1:0:A:LT:Free BSD 4.1.1 - 4.3 X86 +402E:_MSS:80:00:0:1:0:0:A:LT:FreeBSD 2.1.0 - 2.1.5 +402E:_MSS:80:00:0:1:0:1:A:LT:FreeBSD 2.1.0 - 2.1.5 +402E:_MSS:80:00:0:1:1:0:A:LT:D-Link DI-701, Version 2.22 +402E:_MSS:80:00:0:1:1:1:A:LT:D-Link DI-701, Version 2.22 +402E:_MSS:80:WS:0:0:0:0:A:LT:OpenBSD 2.1/X86 +402E:_MSS:80:WS:0:0:1:0:A:LT:AmigaOS Miami 2.1-3.0 +402E:_MSS:80:WS:0:1:1:0:A:LT:Windows XP Professional Release +403D:_MSS:80:00:0:1:0:0:A:LT:FreeBSD 2.1.0 - 2.1.5 +403D:_MSS:80:00:0:1:0:1:A:LT:FreeBSD 2.1.0 - 2.1.5 +403D:_MSS:80:00:0:1:1:0:A:LT:Acorn RiscOS 3.7 using AcornNet TCP/IP stack +403D:_MSS:80:00:0:1:1:1:A:LT:Acorn RiscOS 3.7 using AcornNet TCP/IP stack +4074:01F4:40:00:0:1:0:1:A:3C:OpenBSD 3.2 +4074:_MSS:40:WS:0:0:0:0:A:LT:OpenBSD 2.x +4088:05B4:40:WS:0:0:1:0:A:LT:FreeBSD +40B0:0564:80:WS:1:1:1:0:A:30:Windows 2000 (firewalled) +40B0:05B4:40:WS:0:0:1:0:A:2C:FreeBSD 4.3 +40E8:0218:80:WS:1:1:1:0:A:LT:Windows ME +40E8:04EC:80:WS:0:0:1:0:A:2C:Windows 2000 Pro +40E8:0584:80:WS:0:0:1:0:A:2C:Windows 2000 +40E8:05B4:40:00:1:1:0:1:A:40:Windows +40E8:05B4:80:WS:0:0:1:0:A:2C:Windows 2000 Server +40E8:05B4:80:WS:1:1:1:0:A:30:Windows XP +40E8:05B4:FF:00:0:0:1:0:S:30:Mac OS 7.x-9.x +40E8:B405:80:WS:0:0:1:0:A:2C:Windows 2000 +40E8:B405:FF:00:0:0:1:0:S:LT:Mac OS 8.6 +4150:_MSS:40:WS:0:0:1:0:A:LT:Cisco Localdirector 430, running OS 2.1 +41A0:0578:80:00:1:1:1:1:A:40:Windows XP SP1 +41A0:0584:40:00:1:1:1:1:A:40:Windos XP +41B8:05B4:80:WS:1:1:1:0:A:30:Windows 2000 server +41E8:057E:80:00:1:1:1:1:A:40:Windows 2000 +4230:0584:80:00:1:1:0:1:A:40:Linux +4230:0584:80:00:1:1:1:1:A:40:Windows 2000 Server +4230:0584:80:WS:1:1:0:0:A:30:Windows 2000 Server +4230:0584:80:WS:1:1:1:0:A:30:Windows 2000 Server +4230:05B4:80:WS:1:1:1:0:A:30:Windows XP +4238:0518:40:WS:0:0:0:0:S:2C:Xbox +4240:05B4:40:04:1:1:1:0:S:34:Windows XP +4240:05B4:80:04:1:1:1:0:S:34:Windows 2000 Pro +4240:B405:80:04:1:1:1:0:S:34:Windows XP +4240:_MSS:80:00:0:0:1:0:A:LT:MacOS 8.1 +4248:0586:80:00:1:1:1:1:A:40:GNU / Olli OS +4248:0586:80:WS:1:1:1:0:A:30:Windows 2000 server +4290:058C:40:WS:0:0:1:0:A:2C:Windows 2000 +4290:05B4:80:WS:1:1:1:0:A:30:Windows 2000 Pro SP3 +4322:052A:40:WS:0:0:1:0:A:2C:Windows +4322:05B4:80:WS:1:1:1:0:A:30:Linksys Router +4350:9C05:80:WS:1:1:1:0:A:30:Windows Server 2003 +4380:05A0:80:WS:1:1:1:0:A:30:Openbsd +4380:05B4:80:WS:1:1:1:0:A:30:Windows 2003 Server +4380:A005:80:WS:1:1:1:0:A:30:Open BSD +43B0:05A4:80:WS:1:1:1:0:A:30:OpenBSD 2.8 GENERIC +43E0:05B4:40:00:0:1:0:1:A:LT:OpenBSD 2.8 GENERIC +43E0:05B4:40:00:0:1:1:0:A:LT:FreeBSD 4.x +43E0:05B4:40:00:0:1:1:1:A:3C:FreeBSD 4.4-Release +43E0:05B4:40:00:1:1:0:1:A:40:OpenBSD 3.4 +43E0:05B4:40:00:1:1:1:1:A:40:OpenBSD 2.9 3.0 +43E0:A805:40:00:0:1:0:1:A:LT:OpenBSD 2.6 +43E0:B405:40:00:0:1:0:1:A:LT:OpenBSD 2.9 +43E0:B405:40:00:0:1:1:1:A:3C:FreeBSD 4.4 / OpenBSD 3.1 +43E0:_MSS:40:WS:0:0:0:0:A:LT:OpenBSD 2.x +43E0:_MSS:40:WS:0:0:1:0:A:LT:FreeBSD 2.2.1 - 4.0 +43F8:AA05:40:WS:0:0:1:0:A:2C:Free BSD +4410:05AC:40:WS:1:1:1:0:A:30:OpenBSD 3.0 +4410:05AC:80:00:1:1:1:1:A:LT:Windows 2000 +4410:05AC:80:WS:1:1:1:0:A:30:Windows 2000 Workstation / Windows 98 SE +4410:05B4:80:00:1:1:1:0:A:34:Windows 2000 +4410:05B4:80:00:1:1:1:1:A:40:Windows 2000 +4410:05B4:80:WS:1:1:1:0:A:30:Windows 2000 +4431:_MSS:80:00:0:1:1:0:A:LT:Solaris 2.6 - 2.7 +4431:_MSS:80:00:0:1:1:1:A:LT:Solaris 2.6 - 2.7 +4440:05B0:80:00:1:1:1:1:A:40:Windows 2000 (Advanced Server) +4440:05B0:80:WS:1:1:1:0:A:30:Solaris 7 +4440:05B4:80:WS:1:1:1:0:A:30:Windows 2000 Terminal Server +4440:05B4:80:WS:1:1:1:0:A:LT:Solaris 7 +4452:_MSS:80:00:0:0:1:0:A:LT:Solaris 2.5, 2.5.1 +4470:05B4:40:00:0:1:0:1:A:3C:Windows 2000 +4470:05B4:40:00:0:1:1:1:A:3C:WINDOWS 2000 +4470:05B4:40:00:1:1:0:0:A:LT:Windows 2000 +4470:05B4:40:00:1:1:0:1:A:40:Windows NT +4470:05B4:40:00:1:1:1:0:A:34:OpenBSD 3.0 +4470:05B4:40:00:1:1:1:1:A:3C:Linux +4470:05B4:40:00:1:1:1:1:A:40:Windows NT +4470:05B4:40:WS:0:0:0:0:A:LT:FreeBSD NFR Network Flight Recorder +4470:05B4:40:WS:0:0:1:0:A:2C:FreeBSD 4.2 / FreeBSD 3.4-STABLE +4470:05B4:40:WS:1:1:0:0:A:30:OpenBSD 2.8 +4470:05B4:40:WS:1:1:1:0:A:30:OpenBSD 3.0 - 3.1 +4470:05B4:80:00:0:1:1:0:A:LT:Windows 2000 +4470:05B4:80:00:0:1:1:1:A:3C:Windows NT4 / Win95 / Win98 +4470:05B4:80:00:1:1:0:1:A:40:Linux 2.2.14 - 2.2.20 +4470:05B4:80:00:1:1:0:1:A:LT:Windows 2000 Professional +4470:05B4:80:00:1:1:1:0:A:34:Windows 2000 Server +4470:05B4:80:00:1:1:1:1:A:40:Windows 2000 Pro / XP Pro / 2003 Server +4470:05B4:80:WS:0:0:1:0:A:2C:Windows 2000 +4470:05B4:80:WS:1:1:0:0:A:30:Windows 2000 pro +4470:05B4:80:WS:1:1:1:0:A:30:Windows 2000 Server / XP Pro / NT 4.0 server +4470:05B4:80:WS:1:1:1:0:A:3C:FreeBSD 4.x +4470:05B4:80:WS:1:1:1:0:S:30:Windows Server 2003 Enterprise Edition +4470:05B4:80:WS:1:1:1:1:S:3C:Windows 2000 Advance Server +4470:05B4:FF:WS:0:0:1:0:A:2C:Windows 2000 +4470:05B4:FF:WS:1:1:1:0:A:30:Windows XP +4470:B405:40:00:0:1:1:1:A:3C:Windows NT 2000/5.0 +4470:B405:80:00:0:1:0:1:A:3C:Windows ME +4470:B405:80:00:0:1:1:1:A:3C:Windows 2000 Workstation / XP Home +4470:B405:80:00:0:1:1:1:A:LT:Windows Server 2003 +4470:B405:80:00:1:1:1:0:A:34:Windows XP SP1 +4470:B405:80:WS:1:1:0:0:A:30:Mac OS 8.6 +4470:B405:80:WS:1:1:1:0:A:30:Windows XP +4470:B405:FF:00:0:0:1:0:A:LT:Mac OS 8.6 +4470:_MSS:40:WS:0:0:0:0:A:LT:FreeBSD 2.2.1 - 4.0 +4470:_MSS:40:WS:0:0:1:0:A:LT:FreeBSD 2.2.1 - 4.0 +4470:_MSS:80:WS:0:0:0:0:A:LT:Snap Network Box +44E8:04EC:80:00:1:1:1:1:A:40:Windows 2000 pro +44E8:04EC:80:WS:1:1:1:0:A:30:Windows 2000 Pro +4510:0550:80:00:1:1:1:1:A:40:Windows 2000 +4510:0550:80:WS:0:0:1:0:A:LT:Windows 2000 Professional 5.0.2195 Service Pack 2 +4510:0550:80:WS:1:1:1:0:A:30:Windows 2000 Professional 5.0.2195 Service Pack 2 +4510:05B4:FF:WS:1:1:1:0:A:30:Windows XP Pro +455B:_MSS:80:00:0:0:0:0:A:LT:MacOS 8.1 running on a PowerPC G3 (iMac) +455B:_MSS:80:00:0:0:1:0:A:LT:Mac OS 8.6 +462B:_MSS:80:00:0:1:1:0:A:LT:Solaris 2.6 - 7 X86 +462B:_MSS:80:00:0:1:1:1:A:LT:Solaris 2.6 - 7 X86 +4764:23B2:40:00:1:1:1:1:S:3C:Linux 2.4.xx +4860:0218:80:WS:1:1:1:0:S:30:Windows XP +4860:058E:10:WS:1:1:1:0:S:30:Linux +4860:05B4:80:WS:1:1:1:0:S:30:Windows 2000 +4EC0:05B4:80:00:0:1:1:1:A:3C:Windows XP Pro SP1 +4F68:05AC:80:WS:1:1:1:0:S:30:Windows 2000 Professional +4FD8:05B4:40:00:1:1:1:0:S:34:Windows XP Professional +5B40:_MSS:80:WS:0:0:0:0:A:LT:Polycom ViewStation 512K videoconferencing system +6000:_MSS:80:00:0:0:0:0:A:LT:SCO OpenServer(TM) Release 5 +6000:_MSS:80:00:0:0:1:0:A:LT:OpenVMS v7.1 VAX +6000:_MSS:80:00:0:1:1:0:A:LT:Sequent DYNIX/ptx(R) V4.4.6 +6028:05B4:40:00:0:1:1:1:A:3C:Solaris 8 +6028:05B4:40:00:1:1:1:1:A:40:Solaris 7 / 8 +6028:B405:40:00:0:1:1:1:A:3C:Solaris 8 +6030:0564:40:00:1:1:1:1:A:40:Solaris 8 +6030:6405:40:00:0:1:1:1:A:3C:Solaris 8 +6050:05B4:40:00:1:1:1:0:A:34:Windows +6050:05B4:40:WS:0:0:1:0:A:2C:Solaris 9 +6050:05B4:FF:WS:0:0:0:0:A:2C:Solaris 8 +606C:00D8:40:00:1:1:1:1:A:40:Solaris 9 +60DA:0584:40:00:0:1:1:1:A:3C:Solaris 8 +60DA:_MSS:80:00:0:1:1:0:A:LT:Sun Solaris 8 early acces beta through actual release +60DA:_MSS:80:00:0:1:1:1:A:LT:Sun Solaris 8 early acces beta through actual release +60F4:05B4:40:00:0:0:1:0:S:LT:SCO UnixWare 7.0.1 +60F4:05B4:40:00:0:1:1:0:A:30:SunOS 5.8 +60F4:05B4:40:00:0:1:1:0:S:LT:SCO UnixWare 7.1.0 x86 +60F4:05B4:40:00:0:1:1:1:A:3C:SCO UnixWare 7.1.1 +60F4:05B4:40:00:1:1:1:0:A:34:SunOS 5.8 +60F4:05B4:40:WS:0:0:0:0:A:2C:SCO openserver 5.0.5 +60F4:05B4:40:WS:0:0:0:0:S:2C:SCO openserver 5.0.6 +60F4:05B4:40:WS:0:0:1:0:A:2C:Windows 2000 +60F4:05B4:40:WS:0:0:1:0:S:2C:SCO Openserver 5 +60F4:05B4:40:WS:1:1:0:0:S:30:SunOS 5.8 +60F4:05B4:40:WS:1:1:1:0:A:30:SunOS 5.8 +60F4:05B4:40:WS:1:1:1:0:S:30:Solaris 8 +60F4:05B4:40:WS:1:1:1:0:S:LT:Solaris 8 +60F4:B405:40:WS:1:1:1:0:S:LT:Sun +60F4:_MSS:40:WS:0:0:1:0:A:LT:SCO OpenServer 5.0.5 +60F4:_MSS:80:00:0:1:0:0:A:LT:NCR MP-RAS SVR4 UNIX System Version 3 +60F4:_MSS:80:00:0:1:0:1:A:LT:NCR MP-RAS SVR4 UNIX System Version 3 +60F4:_MSS:80:00:0:1:1:0:A:LT:NCR MP-RAS 3.01 +60F4:_MSS:80:00:0:1:1:1:A:LT:NCR MP-RAS 3.01 +60F4:_MSS:80:WS:0:0:0:0:A:LT:SCO UnixWare 7.0.0 or OpenServer 5.0.4-5 +6108:0564:40:WS:1:1:0:0:A:30:Windows 95 / 98 +61A8:0200:40:00:1:1:1:1:A:LT:Windows NT +61A8:_MSS:80:00:0:1:1:0:A:LT:Windows NT4 / Win95 / Win98 +61A8:_MSS:80:00:0:1:1:1:A:LT:Windows NT4 / Win95 / Win98 +6270:04EC:80:00:1:1:1:0:S:34:Windows 2000 +6270:04EC:80:WS:1:1:1:0:A:30:Linux Red Hat +6270:04EC:80:WS:1:1:1:0:S:30:Windows XP +6270:0564:40:WS:1:1:1:0:A:30:Windows +6270:0584:40:00:1:1:1:1:A:40:SunOS 5.8 +6270:05AC:80:00:1:1:1:1:A:40:Solaris +6270:05B4:40:00:1:1:1:0:S:34:Windows 2000 +6270:05B4:80:WS:1:1:1:0:S:30:Windows XP +6348:0584:40:WS:1:1:1:0:A:30:Solaris/Ultra sparc +6420:_MSS:40:WS:0:1:1:0:A:3C:SunOS 5.8 +64F0:055C:40:WS:1:1:1:1:A:3C:SunOS +6540:05B4:40:00:1:1:1:1:A:40:Windows XP +6978:05B4:80:WS:1:1:1:0:S:30:Windows XP +6C68:05B4:40:02:1:1:1:0:S:34:Windows XP +6FCC:_MSS:80:WS:0:0:0:0:A:LT:IBM OS/2 V 2.1 +7000:05B4:40:WS:0:0:0:0:A:2C:IBM OS/2 +7000:05B4:40:WS:0:0:0:0:S:2C:IBM OS/2 V.3 +7000:_MSS:80:WS:0:0:0:0:A:LT:IBM OS/2 V.3 +70D5:_MSS:80:00:0:1:1:0:A:LT:Digital UNIX OSF1 V 4.0-4.0F +7210:04EC:40:00:1:1:1:1:S:40:Windows 98 +7210:05B4:80:WS:0:0:1:0:A:2C:Windows NT server 4.0 sp6a +77C4:05B4:40:00:0:1:1:0:A:30:Linux 2.2.19 +77C4:05B4:40:00:1:1:0:1:A:3C:Linux 2.2.22 (PLD) +77C4:05B4:40:00:1:1:1:1:A:3C:Linux SuSE 7.3 +77C4:05B4:40:00:1:1:1:1:A:LT:Linux SuSE 7.x +77C4:05B4:40:WS:0:0:1:0:A:2C:SuSE Linux 7.1 +77C4:05B4:40:WS:1:1:1:0:A:30:Linux Mandrake 7.1 / Debian 3.0 +77C4:B405:40:00:0:1:1:1:A:3C:Linux +77C4:_MSS:40:WS:0:0:1:0:A:LT:Linux 2.1.122 - 2.2.14 +7850:0578:40:WS:1:1:1:0:A:30:Suse Linux 7.0 +7900:_MSS:80:00:0:1:1:0:A:LT:Atari Mega STE running JIS-68k 3.0 +7900:_MSS:80:00:0:1:1:1:A:LT:Atari Mega STE running JIS-68k 3.0 +7958:0584:40:00:1:1:1:0:A:34:Linux Mandrake 7.2 +7958:0584:40:00:1:1:1:1:A:3C:Windows NT 4 +7958:0584:40:WS:1:1:1:0:A:30:Linux 2.2.16-3 (RH 6.2) +7960:0F2C:40:00:1:1:1:0:S:LT:Linux 2.2.12-20 +7B10:0598:40:00:1:1:1:1:A:3C:Linux 2.2.18pre21 +7B2F:_MSS:80:00:0:1:1:0:A:LT:Linux 2.1.19 - 2.2.17 +7B2F:_MSS:80:00:0:1:1:1:A:LT:Linux 2.1.19 - 2.2.17 +7B44:055C:40:WS:1:1:1:0:A:30:Debian/GNU Linux +7B88:0218:40:WS:0:0:1:0:A:2C:Reliant Unix from Siemens-Nixdorf +7BC0:_MSS:40:WS:0:0:1:0:A:LT:Linux 2.1.122 - 2.2.14 +7BF0:052A:40:WS:1:1:1:0:A:30:PLD Linux +7BF0:2A05:40:WS:1:1:1:0:A:30:Linux 2.2.19 +7BF0:_MSS:40:WS:0:0:1:0:A:LT:Linux 2.1.122 - 2.2.14 +7BFC:0564:40:00:1:1:1:1:A:3C:Slackware Linux 8.0 +7BFC:0564:40:00:1:1:1:1:A:LT:CISCO PIX 6.1 +7BFC:0564:40:WS:0:0:1:0:A:2C:Linux +7BFC:0564:40:WS:1:0:1:1:A:38:Linux +7BFC:0564:40:WS:1:1:1:0:A:LT:Cisco PIX +7BFC:6405:40:00:0:1:1:1:A:3C:Linux +7C00:_MSS:80:00:0:0:0:0:A:LT:Linux 2.0.27 - 2.0.30 +7C00:_MSS:80:WS:0:0:0:0:A:LT:Convex OS Release 10.1 +7C38:_MSS:80:00:0:1:1:0:A:LT:Linux 2.1.19 - 2.2.17 +7C38:_MSS:80:00:0:1:1:1:A:LT:Linux 2.1.19 - 2.2.17 +7C70:05B4:40:00:1:1:1:0:S:LT:Linux 2.3.99-ac - 2.4.0-test1 +7C70:_MSS:80:00:0:1:1:0:A:LT:Linux 2.3.28-33 +7C70:_MSS:80:00:0:1:1:1:A:LT:Linux 2.3.28-33 +7C9C:05AA:40:WS:0:0:1:0:A:2C:SuSE Linux 7.0 +7C9C:AA05:40:00:0:1:1:1:A:LT:Linux RedHat 7.1 +7CC8:0584:40:00:1:1:1:0:S:3C:Linux 2.2 +7D00:05A0:80:00:1:1:1:0:S:34:Windows +7D00:05A0:80:WS:1:1:1:0:S:30:OpenBSD +7D00:05B4:80:WS:1:1:1:0:S:30:Windows XP Pro +7D78:0109:80:10:0:1:0:1:S:LT:OpenBSD 2.9 generic +7D78:0564:40:00:1:1:1:1:S:3C:Linux +7D78:0564:40:WS:1:1:1:1:S:3C:Slware Linux 7.1 +7D78:05AC:40:00:1:1:1:0:A:34:OpenBSD 2.9 +7D78:05B4:01:00:1:1:1:1:S:3C:Linux +7D78:05B4:20:00:1:1:1:0:S:LT:Linux 2.2.13 +7D78:05B4:3A:WS:0:0:0:0:S:LT:Linux 2.0.38 +7D78:05B4:40:00:0:1:1:0:A:30:RedHat 6.2 +7D78:05B4:40:00:0:1:1:0:S:LT:Linux 2.2.19 +7D78:05B4:40:00:0:1:1:1:A:3C:Linux 2.2.17 - 2.2.20 +7D78:05B4:40:00:1:1:0:0:S:LT:Linux 2.2.19 +7D78:05B4:40:00:1:1:0:1:A:3C:Linux pld 2.4.22 +7D78:05B4:40:00:1:1:1:0:A:34:Linux 2.2.19 (Mandrake Secure) +7D78:05B4:40:00:1:1:1:0:A:LT:Linux 2.2.19 - 2.2.20 +7D78:05B4:40:00:1:1:1:0:S:34:Linux 2.2.19 (Mandrake Secure) +7D78:05B4:40:00:1:1:1:0:S:3C:Linux 2.2.9 - 2.2.18 +7D78:05B4:40:00:1:1:1:0:S:LT:Linux 2.2.14 - 2.2.20 +7D78:05B4:40:00:1:1:1:1:A:3C:Linux 2.2.14 - 2.2.20 +7D78:05B4:40:00:1:1:1:1:S:3C:Linux 2.2.14 - 2.2.20 +7D78:05B4:40:09:1:1:1:0:S:3C:Linux 2.2.x +7D78:05B4:40:BE:1:1:1:0:S:3C:Linux 2.2.16 +7D78:05B4:40:WS:0:0:0:0:S:2C:Linux 2.0.33 +7D78:05B4:40:WS:0:0:1:0:A:2C:Cobalt Linux RaQ 4 (2.2.19) +7D78:05B4:40:WS:0:0:1:0:A:LT:Linux 2.2.19 - 2.2.20 +7D78:05B4:40:WS:1:0:1:1:A:38:Linux 2.2.16-22 +7D78:05B4:40:WS:1:1:0:0:A:30:Linux 2.2.(PLD) +7D78:05B4:40:WS:1:1:1:0:A:30:Linux 2.2.12 - 2.2.20 +7D78:05B4:80:WS:0:0:1:0:A:LT:Windows XP +7D78:05B4:80:WS:1:1:1:0:A:30:Windows 2000 sp2 +7D78:05B4:80:WS:1:1:1:0:S:30:Windows XP Professional +7D78:05B4:FF:00:1:1:1:1:A:3C:Linux 2.2.18 +7D78:B405:40:00:0:1:1:0:A:30:Yellow Dog Linux 2.2 +7D78:B405:40:00:0:1:1:1:A:3C:Cobalt +7D78:B405:40:00:1:1:1:1:A:3C:Linux Redhat 6.2 Zoot (Kernel 2.2.14-5) +7D78:B405:40:00:1:1:1:1:S:LT:Linux 2.2.14 +7D78:_MSS:80:WS:0:0:0:0:A:28:Linux +7D78:_MSS:80:WS:0:0:0:0:S:28:Linux 2.4.19 crypto gentoo +7DC8:0578:40:WS:1:1:1:0:A:30:Suse Linux +7E18:_MSS:80:00:0:1:1:0:A:LT:Linux Kernel 2.4.0-test5 +7EA0:3F5C:40:00:1:1:1:1:A:3C:Linux Kernel 2.4.10 +7EB8:3F5C:40:00:1:1:1:1:S:3C:Suse 7.3 (2.4.16) +7EDC:0584:40:WS:1:1:1:0:A:LT:Linux 2.2.18 +7EF4:0514:40:00:1:1:1:1:A:3C:Linux 2.2.14 +7F53:0109:40:00:0:1:1:1:A:LT:Linux 2.2.14 +7F53:_MSS:80:00:0:0:0:0:A:LT:AIX 4.0 - 4.2 +7F53:_MSS:80:00:0:1:1:0:A:LT:Linux 2.1.19 - 2.2.17 +7F53:_MSS:80:00:0:1:1:1:A:LT:Linux 2.1.19 - 2.2.17 +7F53:_MSS:80:WS:0:0:0:0:A:LT:AIX 3.2 +7F53:_MSS:80:WS:0:0:1:0:A:LT:Linux Kernel 2.1.88 +7F7D:_MSS:80:00:0:1:1:0:A:LT:Linux 2.1.91 - 2.1.103 +7F7D:_MSS:80:00:0:1:1:1:A:LT:Linux 2.1.91 - 2.1.103 +7F80:0550:40:00:1:1:1:1:A:LT:Linux 2.2.19 +7FB6:0218:FF:00:0:0:0:0:S:LT:3Com HiPer ARC, System V4.2.32 +7FB8:0218:40:00:1:1:0:0:S:3C:SCO UnixWare 7.1.0 x86 +7FB8:0218:40:00:1:1:0:1:S:3C:Linux +7FB8:0218:40:00:1:1:1:1:A:LT:Linux 2.2.19 +7FB8:0218:40:WS:0:0:1:0:A:2C:Linux 2.2.16 +7FE0:05B4:40:WS:0:0:0:0:A:2C:Linux 2.0.38 +7FE0:_MSS:40:WS:0:0:0:0:A:LT:Linux 2.0.34 - 2.0.38 +7FE0:_MSS:80:00:0:0:0:0:A:LT:Linux 2.0.32-34 +7FE0:_MSS:80:WS:0:0:0:0:A:LT:Cobalt Linux 4.0 (Fargo) Kernel 2.0.34C52_SK on MIPS +7FF0:_MSS:80:00:0:0:0:0:A:LT:Linux 2.0.34-38 +7FFF:04EC:80:WS:1:1:1:0:S:30:Windows 2000 +7FFF:0550:80:00:1:1:1:0:S:34:Windows 2000 +7FFF:0550:80:WS:1:1:1:0:A:30:Windows 2000 +7FFF:0550:80:WS:1:1:1:0:S:30:Suse +7FFF:0564:80:WS:1:1:1:0:A:30:Windows 98 SE +7FFF:0578:80:WS:1:1:1:0:S:30:Linux Suse +7FFF:057A:80:00:1:1:1:0:S:34:Linux +7FFF:0586:40:WS:1:1:1:0:S:30:Windows 2000 +7FFF:058E:40:00:1:1:1:0:S:34:OpenBSD 3.1 +7FFF:05A0:80:00:1:1:1:0:S:34:Windows XP +7FFF:05A0:80:WS:1:1:1:0:A:30:Windows 98 SE +7FFF:05A0:80:WS:1:1:1:0:S:30:Windows 2000 Server +7FFF:05AC:80:00:0:1:1:0:A:30:Windows 2000 / XP / ME +7FFF:05AC:80:00:1:1:1:0:S:34:Windows 2000 +7FFF:05B4:40:00:0:1:0:0:A:30:Sinix 5.4x +7FFF:05B4:40:00:0:1:1:0:A:30:Windows XP +7FFF:05B4:40:00:1:1:1:1:S:3C:SuSe Linux +7FFF:05B4:40:03:1:1:1:1:S:3C:Linux +7FFF:05B4:40:WS:0:0:0:0:S:2C:Windows 98 SE +7FFF:05B4:80:00:0:1:1:1:A:3C:Windows XP +7FFF:05B4:80:00:1:1:1:0:S:34:Windows XP / 2000 +7FFF:05B4:80:00:1:1:1:1:A:40:Windows 2000 +7FFF:05B4:80:00:1:1:1:1:S:40:Windows XP Service Pack 1 +7FFF:05B4:80:WS:0:0:1:0:A:2C:Windows NT +7FFF:05B4:80:WS:0:0:1:0:S:2C:Windows NT 4.0 SP6a +7FFF:05B4:80:WS:1:1:1:0:A:30:Windows 98 SE +7FFF:05B4:80:WS:1:1:1:0:S:30:Windows 2000 Server +7FFF:7E05:80:00:0:1:1:0:A:30:BeOS +7FFF:_MSS:80:00:0:0:1:0:A:LT:Linux 2.4.7 (X86) +7FFF:_MSS:80:00:0:1:0:0:A:LT:ReliantUNIX-Y 5.44 B0033 RM600 1/256 R10000 +7FFF:_MSS:80:00:0:1:1:0:A:LT:Linux Kernel 2.4.xx (X86) +7FFF:_MSS:80:00:0:1:1:1:A:LT:Linux Kernel 2.4.xx (X86) +7FFF:_MSS:80:WS:0:0:0:0:A:LT:SINIX-Y 5.43B0045 +7FFF:_MSS:80:WS:0:0:1:0:A:LT:Linux 2.1.76 +8000:0200:40:00:0:1:0:0:A:LT:Mac OS X Server +8000:0218:40:WS:0:0:1:0:A:2C:HP-UX +8000:0564:40:00:0:1:0:1:A:3C:solaris 8 +8000:0564:40:00:1:1:1:1:A:40:Solaris 8 +8000:0578:40:00:0:1:1:1:S:3C:Linux +8000:0584:40:00:0:1:1:1:A:3C:HP-UX +8000:0584:40:WS:0:0:1:0:A:2C:HP-UX B.10.20 +8000:05A0:40:WS:1:1:1:0:A:30:Windows 2000 +8000:05AC:40:00:0:1:1:1:A:3C:FreeBSD 4.9 +8000:05AC:40:00:0:1:1:1:S:LT:Mac OS X 10.1.5 +8000:05AC:40:WS:0:0:1:0:A:2C:OS400 V5R2 +8000:05AC:FF:WS:0:0:1:0:A:2C:Mac OS X +8000:05B4:01:WS:0:0:1:0:A:2C:HP-UX +8000:05B4:20:WS:0:0:1:0:S:2C:Windows CE 3.0 (Ipaq 3670) +8000:05B4:20:WS:0:1:1:0:S:2C:Windows CE 3.0 (Ipaq 3670) +8000:05B4:40:00:0:0:1:0:S:2C:HP-UX B.10.01 A 9000/712 +8000:05B4:40:00:0:1:0:0:A:LT:NetBSD +8000:05B4:40:00:0:1:0:0:S:LT:OpenVMS +8000:05B4:40:00:0:1:0:1:A:3C:HP-UX B.11.00 +8000:05B4:40:00:0:1:0:1:S:3C:NetBSD +8000:05B4:40:00:0:1:1:0:A:LT:HP-UX +8000:05B4:40:00:0:1:1:0:S:30:Digital UNIX V4.0E, Mac OS X +8000:05B4:40:00:0:1:1:1:A:3C:Windows +8000:05B4:40:00:0:1:1:1:S:3C:Mac OS X 10.1.[23] +8000:05B4:40:00:1:1:1:1:S:40:OpenBSD 3.1 +8000:05B4:40:WS:0:0:0:0:A:2C:FreeBSD +8000:05B4:40:WS:0:0:0:0:S:2C:AIX +8000:05B4:40:WS:0:0:1:0:A:2C:Mac OS X Darwin 1.4 / HP-UX 10.20 +8000:05B4:40:WS:0:0:1:0:S:2C:Mac OS X +8000:05B4:40:WS:1:1:1:0:A:30:Windows 2000 +8000:05B4:80:00:0:1:1:0:S:30:Dec V4.0 OSF1 +8000:05B4:80:00:1:1:1:0:A:34:Windows XP Pro +8000:05B4:80:WS:0:0:1:0:S:LT:Novell NetWare 4.11 +8000:05B4:FF:00:0:1:0:0:S:30:MAC OS 8.6 +8000:05B4:FF:00:0:1:1:0:S:30:Mac OS 9 +8000:05B4:FF:00:0:1:1:1:A:3C:Mac OS +8000:05B4:FF:WS:0:0:1:0:A:LT:OpenBSD +8000:05B4:FF:WS:1:1:1:0:A:30:Wire Home Portal DSL Routerw/nat +8000:1000:40:WS:0:0:1:0:A:2C:HP-UX +8000:114C:40:WS:0:0:0:0:A:2C:IBM MVS +8000:6405:FF:00:0:1:1:1:A:3C:Mac OS 9.2.2 +8000:6405:FF:WS:0:0:1:0:A:2C:Mac OS 9.2.2 +8000:9405:FF:00:0:1:1:1:A:3C:Mac Os 9.1 +8000:B405:40:00:0:1:1:1:S:3C:Mac OS X 10.x (Darwin 1.3.x 1.4.x 5.x) +8000:B405:40:00:0:1:1:1:S:LT:Mac OS X 10.x.x - Darwin 6.1 +8000:B405:40:00:0:1:1:1:S:LT:Mac Ox X 10.2.8 Jaguar +8000:B405:40:WS:0:0:1:0:S:2C:MacOS X +8000:B405:40:WS:0:0:1:0:S:LT:Mac Os X +8000:B405:80:00:1:1:1:1:S:40:Windows CE 3.0 +8000:B405:80:WS:1:1:1:0:S:LT:Pocket PC +8000:B405:FF:00:0:1:0:0:S:LT:Mac OS 9.1 +8000:B405:FF:00:0:1:1:0:A:30:Mac OS 9.1 +8000:B405:FF:00:0:1:1:0:S:30:Mac OS 9.2 +8000:B405:FF:00:0:1:1:1:A:3C:Mac OS 9.1 +8000:_MSS:80:00:0:0:1:0:A:LT:Novell NetWare 3.12 - 5.00 +8000:_MSS:80:00:0:1:0:0:A:LT:Cray UNICOS 9.0.1ai - 10.0.0.2 +8000:_MSS:80:00:0:1:0:1:A:LT:Cray UNICOS 9.0.1ai - 10.0.0.2 +8000:_MSS:80:00:0:1:1:0:A:LT:Apple MacOS 9.04 (Powermac or G4) +8000:_MSS:80:00:0:1:1:1:A:LT:Apple MacOS 9.04 (Powermac or G4) +8000:_MSS:80:WS:0:0:0:0:A:LT:DECNIS 600 V4.1.3B System +8000:_MSS:80:WS:0:0:1:0:A:LT:Cisco IOS 12.0(3.3)S (perhaps a 7200) +804C:A005:40:00:0:1:1:1:A:3C:Mac OS X +8052:05B4:40:01:1:1:1:1:S:40:Solaris 5.8 +805C:_MSS:80:00:0:1:0:0:A:LT:BSDI BSD/OS 2.0 - 2.1 +805C:_MSS:80:00:0:1:0:1:A:LT:BSDI BSD/OS 2.0 - 2.1 +805C:_MSS:80:00:0:1:1:0:A:LT:Compaq Tru64 UNIX (formerly Digital UNIX) 4.0e +807A:_MSS:80:00:0:1:0:0:A:LT:OpenBSD 2.6-2.8 +807A:_MSS:80:00:0:1:0:1:A:LT:OpenBSD 2.6-2.8 +807A:_MSS:80:00:0:1:1:0:A:LT:AmigaOS 3.1 running Miami Deluxe 0.9m +807A:_MSS:80:00:0:1:1:1:A:LT:AmigaOS 3.1 running Miami Deluxe 0.9m +8084:0584:40:01:1:1:1:1:A:40:SunOS 5.8 / Solaris 8 +8160:0564:40:01:1:1:1:0:A:34:Solaris 8 +8160:05B4:40:01:0:1:1:1:A:3C:Solaris 8 - X86 +81D0:0218:40:00:0:1:0:0:A:LT:OSF1 4.0 +81D0:_MSS:40:WS:0:0:1:0:A:LT:Compaq Tru64 UNIX 5.0 +8218:05B4:40:00:0:1:1:1:A:3C:Mac OS X 10.1.5 +8218:05B4:40:00:1:1:1:1:A:40:Solaris +8218:05B4:40:01:1:1:1:0:A:LT:Solaris 8 +8218:05B4:40:01:1:1:1:1:A:40:Gauntlet Firewall +8218:B405:40:00:0:1:0:1:A:3C:MAC OS X 10.3.4 +8218:B405:40:00:0:1:1:1:A:3C:Mac OS X 10.1.4 +8218:B405:40:00:0:1:1:1:A:LT:MacOS X Server Release +8235:0488:FF:WS:0:0:0:0:S:2C:Mac OS X +8246:AA05:40:00:0:1:0:1:A:3C:X server +8274:05B4:40:WS:0:0:0:0:A:2C:Digital Unix 4.0b +832C:05B4:40:00:0:1:1:0:A:30:Compaq Tru64 UNIX 5.0 / Digital UNIX V5.60 +832C:05B4:40:WS:0:0:0:0:A:2C:Digital Unix +832C:05B4:40:WS:0:0:1:0:A:2C:Freebsd 4.3 +832C:05B4:40:WS:1:1:1:0:A:30:Windows 2000 pro +832C:05B4:40:WS:1:1:1:0:S:30:Solaris 8 +832C:05B4:FF:00:1:1:0:0:A:34:Windows 2000 Server +832C:05B4:FF:WS:0:0:1:0:S:2C:Solaris 7 +832C:05B4:FF:WS:1:1:0:0:A:30:MAC OS X +832C:10D8:40:00:0:1:0:0:A:30:Unix +832C:B405:40:00:0:1:1:0:A:30:Digital UNIX V4.0F +832C:B405:40:WS:0:0:1:0:A:2C:Mac OS X 10.1 +832C:B405:40:WS:0:0:1:0:A:LT:Darwin +832C:B405:FF:00:0:1:1:0:A:LT:Mac OS X +832C:_MSS:40:WS:0:0:1:0:A:LT:Linux 2.0.34 - 2.0.38 +8340:0578:40:WS:1:1:1:0:A:30:Solaris 8 +8340:0584:40:00:0:1:1:1:A:3C:Mac OS X/10 +8340:05B4:40:00:0:1:1:1:A:3C:MacOS X +8371:_MSS:80:00:0:1:1:0:A:LT:Solaris 2.6 - 2.7 +8371:_MSS:80:00:0:1:1:1:A:LT:Solaris 2.6 - 2.7 +8377:_MSS:80:00:0:0:1:0:A:LT:Solaris 2.5, 2.5.1 +8400:8C05:40:00:0:1:1:1:A:3C:MacOS X 10.3 +8520:B405:40:WS:0:0:1:0:A:LT:MacOS X 10.2.1 +869F:_MSS:80:00:0:1:1:0:A:LT:Windows NT4 / Win95 / Win98 +869F:_MSS:80:00:0:1:1:1:A:LT:Windows NT4 / Win95 / Win98 +8700:05AC:FF:00:1:1:1:1:A:40:Solaris 2.6 +8765:_MSS:80:00:0:1:1:0:A:LT:Solaris 2.6 - 2.7 with tcp_strong_iss=0 +8765:_MSS:80:00:0:1:1:1:A:LT:Solaris 2.6 - 2.7 with tcp_strong_iss=0 +879B:_MSS:80:WS:0:0:1:0:A:LT:Solaris 2.5, 2.5.1 +87C0:05B4:FF:00:1:1:0:1:A:40:Windows +87C0:05B4:FF:00:1:1:1:1:A:40:Solaris 2.6 2.7 +87C0:_MSS:FF:WS:0:0:1:0:A:LT:Solaris 2.6 - 2.7 +88E0:05B4:80:WS:1:1:1:0:S:30:Windows 2000 +8EDA:_MSS:80:00:0:0:1:0:A:LT:Solaris 2.5, 2.5.1 +8F4D:_MSS:80:00:0:1:1:0:A:LT:Solaris 2.6 - 2.7 +8F4D:_MSS:80:00:0:1:1:1:A:LT:Solaris 2.6 - 2.7 +91B4:05AC:40:00:1:1:1:0:A:34:Windows NT 5.1 (Windows XP) +91B4:05B4:40:00:1:1:1:0:S:34:Windows XP +94C0:05B4:80:WS:1:1:1:0:S:30:Windows 2000 +95C2:B405:80:WS:1:1:1:0:S:30:Windows ME +9820:05B4:40:WS:1:1:1:0:S:30:Windows 2000 +9C40:05B4:80:WS:1:1:1:0:S:30:Windows Xp +AA3C:05B4:80:WS:1:1:1:0:S:30:Windows 2000 Pro +ABCD:_MSS:80:00:0:1:1:0:A:LT:Solaris 2.6 - 2.7 +ABCD:_MSS:80:00:0:1:1:1:A:LT:Solaris 2.6 - 2.7 +AC00:0550:80:WS:0:0:1:0:S:2C:Windows NT 4.0 SP6a +AC00:05AC:80:WS:1:1:1:0:S:30:Windows 2000 SP2 +AC00:FA3B:80:WS:1:1:1:0:S:LT:Windows 2000 SP2 +AE4C:0594:80:WS:1:1:1:0:S:30:OpenBSD 3.5 +AE4C:05B4:40:03:1:1:1:1:S:40:Windows XP +AE4C:05B4:40:WS:0:0:0:0:S:2C:Windows 95 +AE4C:05B4:80:03:1:1:1:0:S:34:Windows 2000 +AE60:0586:80:WS:1:1:1:0:S:30:Windows ME +AE60:05B4:80:03:1:1:1:1:S:40:Linux +AE60:05B4:80:WS:1:1:1:0:S:30:Windows XP +B270:05B4:80:WS:1:1:1:0:S:LT:Windows ME +B400:05AC:20:03:1:1:1:1:S:40:windows 200 +B400:05B4:20:03:1:1:0:1:S:LT:Windows 2000 SP2 +B400:05B4:20:03:1:1:1:1:S:40:Windows 2000 +B400:05B4:40:03:1:1:1:1:S:40:Windows XP Pro SP1 +B400:05B4:80:03:1:1:1:1:S:40:Windows XP +B400:B405:20:03:1:1:1:0:S:34:Windows 2000 SP3 +B580:05AC:40:02:1:1:1:1:A:40:Windows XP +B580:05AC:80:03:1:1:1:1:A:40:Windows XP +B580:05B4:80:03:1:1:1:1:A:40:Windows XP +B5A4:05B4:80:00:1:1:0:1:A:40:Linux 2.4.18 +B5A4:05B4:80:00:1:1:1:0:S:34:Windows 2000 Server +B5A4:05B4:80:00:1:1:1:1:A:40:Windows XP Corp. SP1 (Ger) +B5A4:05B4:80:WS:0:0:0:0:A:2C:Windows XP Corp. SP1 (Ger) +B5A4:05B4:80:WS:1:1:1:0:S:30:Windows XP SP2 german +B5C9:_MSS:80:00:0:1:1:0:A:LT:Windows Millenium Edition v4.90.3000 +B5C9:_MSS:80:00:0:1:1:1:A:LT:Windows Millenium Edition v4.90.3000 +B680:05B4:FF:WS:0:0:0:0:A:2C:ZyXEL ZyNOS 3.50 +B9F0:0578:FF:WS:0:0:0:0:A:2C:Windows 2000 +BB80:05B4:80:WS:1:1:1:0:S:30:Windows 2000 +BB80:_MSS:80:WS:0:0:1:0:A:LT:Windows 98 +C000:057A:40:WS:1:1:1:0:A:30:Linux +C000:05A0:80:00:1:1:1:1:S:40:Windows XP +C000:05B4:40:00:0:0:0:0:S:2C:IRIX 6.5 / 6.4 +C000:05B4:40:00:1:1:1:1:A:40:IRIX64 6.5 IP27 +C000:05B4:40:WS:0:0:0:0:S:LT:Irix 6.5 +C000:05B4:40:WS:1:1:1:0:A:30:Linux +C000:05B4:80:00:0:1:0:0:A:LT:IRIX 6.2 - 6.5 +C000:05B4:80:00:0:1:0:1:A:LT:IRIX 6.2 - 6.5 +C000:_MSS:80:WS:0:0:0:0:A:LT:OS-9/68K V2.4 (Quanterra Q4124 - 68030) +C050:05B4:40:00:0:1:1:1:A:3C:Solaris 9 SPARC ULTRA 10 +C050:05B4:40:00:1:1:1:1:A:40:SunOS 5.9 (sun4u) +C08A:_MSS:80:00:0:1:1:0:A:LT:FreeBSD 2.2.1 - 4.1 +C08A:_MSS:80:00:0:1:1:1:A:LT:FreeBSD 2.2.1 - 4.1 +C0B7:_MSS:80:00:0:1:1:0:A:LT:FreeBSD 2.2.1 - 4.1 +C0B7:_MSS:80:00:0:1:1:1:A:LT:FreeBSD 2.2.1 - 4.1 +C1E8:05B4:40:WS:0:0:1:0:A:2C:Solaris 9 +C1E8:05B4:40:WS:1:1:1:0:A:30:Windows NT +C1E8:05B4:40:WS:1:1:1:0:S:30:Solaris 9 +C210:0564:40:WS:1:1:1:0:A:30:Linux +C377:05AC:80:02:1:1:1:1:S:40:Windows 2000 advanced server SP2 +C3C8:0598:40:WS:1:1:1:0:A:30:Unix +C79C:05B4:80:WS:1:1:1:0:S:30:Windows XP Home +CDFF:_MSS:80:00:0:0:1:0:A:LT:SONY NEWS-OS 6.1.2 +D600:05AC:80:02:1:1:1:1:S:40:Windows XP Professional +D780:05B4:40:03:1:1:1:0:S:34:Winblows XP +D780:B405:40:03:1:1:1:0:S:LT:Windows XP +DA00:05B4:80:02:1:1:0:0:S:34:Windows 2000 +DA00:05B4:80:02:1:1:1:0:S:34:Windows XP +E000:0564:40:00:0:1:0:1:A:3C:FreeBSD 4.8 +E000:0564:40:00:0:1:1:1:A:3C:BSD +E000:0564:40:WS:0:0:1:0:A:2C:Free BSD 4.7 +E000:0578:40:00:0:1:1:1:A:3C:FreeBSD 4.9-stable +E000:0578:40:WS:0:0:1:0:A:2C:FreeBSD +E000:0584:40:00:0:1:1:1:A:3C:Linux/FreeBSD +E000:0586:40:WS:0:0:0:0:A:2C:FreeBSD4.6.2 +E000:05A0:40:00:0:1:1:1:A:3C:FreeBSD 4.7-RELEASE / 4.9 +E000:05AA:40:WS:0:0:1:0:A:2C:Windows2000 +E000:05AC:40:00:0:1:1:1:A:3C:free BSD +E000:05AC:40:WS:0:0:1:0:A:2C:FreeBSD 4.7 +E000:05B4:40:00:0:1:0:1:A:3C:FreeBSD 4.6-RELEASE-p1 +E000:05B4:40:00:0:1:1:0:A:30:Free BSD 4.8-STABLE +E000:05B4:40:00:0:1:1:1:A:3C:FreeBSD 4.7-PRERELEASE +E000:05B4:40:00:0:1:1:1:S:3C:FreeBSD 4.6-RELEASE +E000:05B4:40:00:0:1:1:1:S:LT:Free BSD 4.7-Stable +E000:05B4:40:WS:0:0:0:0:A:2C:FreeBSD 4.6-RELEASE-p1 +E000:05B4:40:WS:0:0:1:0:A:2C:FreeBSD 4.7 +E000:05B4:40:WS:0:0:1:0:S:2C:FreeBSD +E000:05B4:80:00:0:1:1:1:S:3C:FreeBSD 4.6-RC2 +E000:6405:40:00:0:1:0:1:A:3C:FreeBSD 4.6 +E000:B405:40:00:0:1:0:1:A:3C:FreeBSD 4.6 +E000:B405:40:00:0:1:1:1:A:3C:Free BSD 4.8 +E000:B405:40:00:0:1:1:1:S:3C:Free BSD +E000:B405:40:00:0:1:1:1:S:LT:Free BSD +E000:C003:40:00:0:1:1:1:A:3C:Linux Debian +E640:05AC:40:02:1:1:1:0:S:34:Windows 2000 Server - Windows XP SP1 +E640:05B4:40:02:1:1:0:0:S:LT:Windows 2000 SP2 +E640:05B4:40:02:1:1:1:0:S:34:Windows 2000 Professional +E8C0:05A0:40:01:1:1:1:0:S:34:Windows 98 +E920:_MSS:80:00:0:1:1:1:A:LT:Windows ME +EA60:05AC:40:WS:0:0:1:0:A:2C:Router Cisco 677 +EA60:05DC:40:WS:0:0:1:0:A:2C:Windows XP +EA60:05DC:40:WS:0:0:1:0:A:LT:Cisco 667i-DIR DSL router -- cbos 2.4.2 +EA60:_MSS:80:WS:0:0:1:0:A:LT:Cisco 675 DSL router -- cbos 2.1 +EB28:0578:40:WS:1:1:1:0:A:30:IRIX 6.5.x +EBC0:05AC:40:02:0:1:0:0:S:30:Windows 2000 +EBC0:05AC:40:02:1:1:1:0:S:34:Windows XP +EBC0:05B4:40:02:1:1:0:0:S:LT:Windows ME +EBC0:05B4:40:02:1:1:1:0:S:34:Windows 2000 Pro SP2 / XP Pro +EBC0:05B4:40:02:1:1:1:1:S:40:Windows XP +EBC0:05B4:40:WS:1:1:1:0:S:30:Windown XP +EBC0:05B4:80:02:1:1:1:0:S:34:Windows XP +EBC0:05B4:80:02:1:1:1:1:S:40:Windows XP +EBC0:05B4:80:WS:1:1:1:0:S:30:Windows ME +ED90:05B4:40:00:0:1:1:1:A:3C:Irix 6.5.8 +ED90:05B4:40:00:1:1:1:1:A:40:IRIX 6.5 +ED90:_MSS:40:WS:0:0:1:0:A:LT:IRIX 6.2 - 6.5 +EE48:_MSS:40:WS:0:0:1:0:A:LT:IRIX 5.1 - 5.3 +EF2A:_MSS:80:00:0:1:0:0:A:LT:IRIX 5.2 +EF2A:_MSS:80:00:0:1:0:1:A:LT:IRIX 5.2 +EF88:_MSS:40:WS:0:0:1:0:A:LT:IRIX 6.2 - 6.5 +F000:0200:40:WS:0:0:0:0:S:LT:IRIX 5.3 / 4.0.5F +F000:05B4:40:00:0:1:0:0:A:30:OSF1 5.1 732 alpha +F000:05B4:40:00:0:1:0:0:S:30:OSF1 5.1 +F000:05B4:40:WS:0:0:0:0:A:2C:OSF1 +F000:05B4:40:WS:0:0:0:0:S:LT:IRIX 6.3 +F000:05B4:40:WS:1:1:0:0:S:LT:IRIX 6.5.10 +F000:05B4:80:00:0:1:0:0:A:LT:IRIX 5.3 +F000:05B4:80:00:0:1:0:1:A:LT:IRIX 5.3 +F000:B405:40:WS:1:1:0:0:S:30:SGI Irix 6.5.17m +F400:05B4:80:01:1:1:1:0:S:34:Windows XP +F424:05B4:80:04:1:1:1:0:A:34:Windows XP SP1 - english +F5E0:05B4:80:01:1:1:1:0:S:34:Windows 2000 +F990:05B4:40:WS:1:1:1:0:S:30:Windows 2000 +F99F:0000:80:WS:0:0:0:0:S:28:Linux 2.2.x or 2.4.x +FAD8:0574:80:WS:1:1:1:0:S:30:Windows XP +FAF0:0200:80:WS:1:1:1:0:S:30:Windows 2000 +FAF0:04EC:80:WS:1:1:1:0:S:30:Windows XP Professional +FAF0:0514:80:WS:1:1:1:0:S:30:Windows XP +FAF0:0518:80:WS:1:1:1:0:S:30:Windows 2000 server +FAF0:0528:80:WS:1:1:1:0:S:30:Windows +FAF0:0550:80:WS:1:1:1:0:A:30:Windows XP Pro +FAF0:055C:80:WS:1:1:1:0:S:30:Windows XP SP2 +FAF0:0564:80:00:1:1:1:1:A:40:Windows XP +FAF0:0564:80:WS:0:0:1:0:A:2C:Windows XP Professional +FAF0:0564:80:WS:1:1:1:0:A:30:Windows 2K +FAF0:0564:80:WS:1:1:1:0:S:30:Windows XP Professional +FAF0:0572:80:WS:1:1:1:0:S:30:Windows XP +FAF0:0578:80:WS:1:1:1:0:A:30:Windows XP +FAF0:0578:80:WS:1:1:1:0:S:30:Windows 2000 +FAF0:057A:80:WS:1:1:1:0:S:30:Windows XP +FAF0:0584:40:WS:1:1:1:0:A:30:Unix +FAF0:0584:80:WS:0:1:1:0:S:30:Windows XP +FAF0:0584:80:WS:1:1:1:0:A:30:Windows 2000 / XP +FAF0:0584:80:WS:1:1:1:0:S:30:Windows XP +FAF0:0586:80:WS:1:1:1:0:S:30:Windows XP pro +FAF0:0598:80:WS:1:1:1:0:A:30:Windows XP +FAF0:05A0:80:00:1:1:1:1:A:40:Windows XP +FAF0:05AC:40:03:1:1:1:0:A:34:Windows 2000 +FAF0:05AC:80:00:1:1:1:1:A:40:Windows XP +FAF0:05AC:80:WS:1:1:1:0:A:30:Windows 2000 +FAF0:05AC:80:WS:1:1:1:0:S:30:Windows 2000 Pro +FAF0:05B0:80:WS:1:1:1:0:A:30:Windows 2000 +FAF0:05B4:40:00:1:1:1:0:S:34:Windows XP +FAF0:05B4:40:00:1:1:1:0:S:LT:Windows 98 +FAF0:05B4:40:00:1:1:1:1:A:40:Windows 2000 +FAF0:05B4:40:00:1:1:1:1:S:40:Windows 2000 +FAF0:05B4:40:02:1:1:0:0:A:LT:Windows ME +FAF0:05B4:40:02:1:1:1:0:A:34:Windows 2000 +FAF0:05B4:40:WS:0:0:0:0:A:2C:IBM AIX (JG) +FAF0:05B4:40:WS:0:0:1:0:A:2C:SunOS 5.9 +FAF0:05B4:40:WS:0:0:1:0:S:2C:Windows NT Server 4.0 +FAF0:05B4:40:WS:1:1:1:0:A:30:Unix +FAF0:05B4:40:WS:1:1:1:0:S:30:Windows XP Professional, Build 2600 +FAF0:05B4:80:00:0:1:1:0:A:LT:Windows 2000 Professional, Build 2183 (RC3) +FAF0:05B4:80:00:0:1:1:1:A:3C:Windows 2000 Professional / Windows XP Pro +FAF0:05B4:80:00:1:1:1:0:A:34:Windows XP +FAF0:05B4:80:00:1:1:1:0:S:34:Windows 2000 +FAF0:05B4:80:00:1:1:1:1:A:40:Windows 2000 Version 5.0 (Build 2195) +FAF0:05B4:80:00:1:1:1:1:S:40:Windows XP +FAF0:05B4:80:WS:0:0:0:0:A:2C:Windows NT 4.0 +FAF0:05B4:80:WS:0:0:0:0:S:2C:Windows XP Proffesional Release +FAF0:05B4:80:WS:0:0:1:0:A:2C:Linux Slackware 8.0 +FAF0:05B4:80:WS:0:1:1:0:A:LT:Windows XP Professional Release +FAF0:05B4:80:WS:0:1:1:0:S:30:Windows XP +FAF0:05B4:80:WS:1:1:0:0:A:30:Linux +FAF0:05B4:80:WS:1:1:0:0:S:30:Windows 2000 Pro +FAF0:05B4:80:WS:1:1:1:0:A:30:Windows XP +FAF0:05B4:80:WS:1:1:1:0:S:30:Windows XP Pro, Windows 2000 Pro +FAF0:05B4:80:WS:1:1:1:0:S:LT:Windows 98 SE / 2000 / XP Professional +FAF0:05B4:FF:WS:0:0:1:0:S:2C:Linux 2.1.xx +FAF0:05B4:FF:WS:1:1:1:0:A:LT:Windows 2000 Pro +FAF0:05B4:FF:WS:1:1:1:0:S:30:Windows 2000 Professional SP 3 +FAF0:B405:40:00:0:1:1:0:A:LT:Mac OS X Server 10.1 +FAF0:B405:80:00:0:1:1:1:A:3C:Windows XP professional +FAF0:B405:80:00:0:1:1:1:A:LT:Windows XP +FAF0:B405:80:00:1:1:1:1:A:LT:Pocket Pc 2002 +FAF0:B405:80:WS:0:0:1:0:A:2C:Windows XP Pro +FAF0:B405:80:WS:1:1:1:0:A:30:Windows XP +FAF0:B405:80:WS:1:1:1:0:S:30:Windows XP Home +FAF0:_MSS:FF:WS:0:0:0:0:A:LT:Solaris 2.6 - 2.7 +FB04:0594:80:WS:1:1:1:0:S:30:Windows XP +FB40:0218:40:00:1:1:1:0:S:34:Windows 2000 Pro +FB40:05B4:40:00:1:1:1:0:S:34:Windows XP +FC00:04EC:80:WS:1:1:1:0:S:30:Windows XP +FC00:0518:40:WS:0:0:0:0:A:2C:Xbox - Avalaunch 0.48.64 +FC00:0546:80:WS:1:1:1:0:S:30:Windows XP Pro +FC00:0564:80:WS:1:1:1:0:A:30:Cisco PIX FireWall +FC00:0578:40:WS:0:0:0:0:S:2C:Microsoft XBox +FC00:057E:80:WS:1:1:1:0:S:30:Windows XP +FC00:05B4:80:00:0:1:1:1:A:3C:Windows 2000 +FC00:05B4:80:00:1:1:0:1:A:40:Windows 2000 Running IIS Version 5 +FC00:05B4:80:00:1:1:1:0:S:34:Windows XP SP1 +FC00:05B4:80:00:1:1:1:1:A:40:Windows 2000 - XP +FC00:05B4:80:WS:0:0:1:0:A:2C:Windows XP +FC00:05B4:80:WS:1:1:1:0:A:30:Windows X +FC00:05B4:80:WS:1:1:1:0:S:30:Windows 2000 Pro +FC00:7E05:80:WS:1:1:1:0:S:30:Windows XP Pro +FC00:B405:80:00:0:1:1:1:A:3C:Windows 2000 server +FC00:B405:80:00:1:1:1:0:A:34:Windows XP Professional v2002 SP1 +FC00:B405:80:WS:1:1:1:0:S:30:Windows XP +FC6C:05B4:80:WS:1:1:1:0:S:LT:Windows XP +FCA4:057E:80:WS:1:1:1:0:S:30:Windows XP +FD20:05A0:80:00:1:1:1:1:A:40:Windows XP Home v2002 +FD20:05A0:80:WS:1:1:1:0:A:30:Windows XP home +FD20:05A0:80:WS:1:1:1:0:S:30:Windows XP Home v2002 +FDB8:0584:FF:WS:1:1:1:0:S:30:Windows XP +FDD4:05A4:80:WS:1:1:1:0:S:30:Windows XP SP1 +FE70:0588:80:WS:1:1:0:0:A:30:Windows 98 SE +FE70:0588:80:WS:1:1:0:0:S:30:Windows XP Home +FE88:05B4:FF:00:0:1:1:1:A:3C:Solaris +FE88:05B4:FF:00:1:1:1:1:A:40:Mac OS X Server +FE88:B405:40:00:0:1:1:1:A:3C:Mac OS X Server 10.x +FE88:_MSS:FF:WS:0:0:1:0:A:LT:Solaris 2.6 - 2.7 +FEF4:0534:80:00:1:1:1:1:A:40:Windows 2000 +FEF4:0534:80:WS:1:1:1:0:S:30:Windows XP +FEFA:_MSS:80:00:0:1:0:0:A:LT:AIX v4.2 +FEFA:_MSS:80:00:0:1:0:1:A:LT:AIX v4.2 +FF00:0550:80:00:1:1:1:1:A:40:Windows XP +FF00:0550:80:WS:1:1:1:0:S:30:Windows XP +FF3C:0584:80:WS:1:1:1:0:A:30:Windows 2000 +FF3C:05AC:40:WS:1:1:1:0:A:30:Windows XP +FF3C:05AC:80:00:1:1:1:0:A:34:Windows XP Pro +FF3C:05AC:80:WS:1:1:0:0:S:30:Windows 2000 Pro SP3 +FF3C:05AC:80:WS:1:1:1:0:S:30:Windows 2000 +FF70:0218:80:WS:1:1:1:0:A:30:Windows 2000 Professional +FF70:0218:80:WS:1:1:1:0:S:1C:Windows XP Professional Build 2600.xpsp2.030422 +FFA3:05B4:40:WS:1:1:1:0:S:30:Windown 2000 +FFAF:_MSS:80:00:0:0:1:0:A:LT:Solaris 2.3 - 2.4 +FFAF:_MSS:80:00:0:1:0:0:A:LT:Hitachi HI-UX/MPP (don't know version) +FFAF:_MSS:80:00:0:1:0:1:A:LT:Hitachi HI-UX/MPP (don't know version) +FFAF:_MSS:80:WS:0:0:0:0:A:LT:AIX 3.2.5 (Bull HardWare) +FFDC:0200:40:00:0:1:0:1:A:3C:Windows XP +FFF0:04EC:80:00:1:1:1:0:A:34:Windos XP +FFF0:04EC:80:00:1:1:1:1:A:40:Windows 2000 +FFF0:04EC:80:WS:1:1:1:0:S:30:Windows 2000 +FFF0:057A:80:00:1:1:1:1:A:40:Windows XP +FFF0:05B0:80:WS:1:1:1:0:A:30:Windows XP +FFF0:05B0:80:WS:1:1:1:0:S:30:Windows XP +FFF0:B005:80:00:0:1:1:1:A:3C:Windows XP +FFF0:EC04:80:WS:1:1:1:0:S:30:Windows XP +FFF7:_MSS:80:00:0:1:1:0:A:LT:Solaris 2.6 - 2.7 +FFF7:_MSS:80:00:0:1:1:1:A:LT:Solaris 2.6 - 2.7 +FFFF:0200:40:01:0:1:0:0:A:30:FreeBSD 4.8 +FFFF:0200:40:WS:0:0:0:0:A:2C:AIX +FFFF:0200:80:WS:1:1:1:0:S:30:Windows +FFFF:0218:80:00:1:1:1:0:S:34:Windows XP +FFFF:04EC:40:00:1:1:1:1:S:40:Windows XP +FFFF:04EC:80:00:1:1:1:1:A:40:Windows 2000 +FFFF:04EC:80:WS:0:0:1:0:A:2C:Windows 2000 +FFFF:04EC:80:WS:1:1:1:0:S:30:Windows 2000 Professional +FFFF:052A:40:WS:0:0:0:0:A:2C:Windows* [aol client] +FFFF:052A:80:00:1:1:0:1:A:40:Windows 2000 Server +FFFF:0534:40:WS:1:1:1:0:A:30:Windows XP Pro SP1 +FFFF:0548:80:WS:1:1:0:0:S:30:Windows 2000 Server +FFFF:0550:40:WS:1:1:1:0:A:30:Windows 2000 Server +FFFF:0558:80:WS:0:0:1:0:S:LT:BorderManager 3.5 +FFFF:0564:40:00:0:1:1:1:A:3C:FreeBSD +FFFF:0564:40:01:0:1:1:1:S:3C:FreeBSD 5.1-RELEASE +FFFF:0564:40:WS:0:0:0:0:A:LT:AIX +FFFF:0564:40:WS:0:0:1:0:A:2C:Linux +FFFF:0564:40:WS:1:1:1:0:S:30:Windows 98 Second Edition +FFFF:0564:80:00:1:1:1:1:A:40:Windows 2000 server +FFFF:0564:80:WS:1:1:1:0:A:30:Windows 2000 / NT +FFFF:0564:80:WS:1:1:1:0:S:30:Windows +FFFF:0564:80:WS:1:1:1:1:A:3C:Windows 2000 +FFFF:0578:40:WS:0:0:1:0:S:2C:FreeBSD 4.5 +FFFF:057E:80:00:1:1:1:1:S:40:Windows 2000 +FFFF:0584:40:00:1:1:1:1:A:40:Windows XP +FFFF:0584:40:WS:0:0:0:0:A:2C:Solaris +FFFF:0584:80:WS:1:1:1:0:A:30:Cisco-louche1 +FFFF:0584:80:WS:1:1:1:0:S:30:Linux Debian +FFFF:0586:40:00:0:1:1:1:A:3C:Unix +FFFF:0586:40:01:0:1:1:1:S:3C:Mac OS X 10.2 +FFFF:0586:40:WS:1:1:1:0:S:30:Windows 98 SE +FFFF:058C:40:00:1:1:1:1:A:40:Windows XP Pro +FFFF:058C:40:WS:0:0:0:0:A:2C:FreeBSD 4.5 +FFFF:058C:40:WS:1:1:1:0:A:30:Windows 2000 Pro SP2 +FFFF:058C:80:00:1:1:1:1:A:40:FreeBSD +FFFF:058C:80:WS:1:1:1:0:A:30:NetBSD +FFFF:0598:40:WS:0:0:0:0:A:2C:FreeBSD 4.5 +FFFF:0598:40:WS:0:0:0:0:S:2C:Cisco webcache +FFFF:05A0:80:WS:1:1:1:0:A:30:Windows XP +FFFF:05A0:80:WS:1:1:1:0:S:30:Windows XP Pro +FFFF:05A0:FF:WS:1:1:1:0:S:30:Windows 98 +FFFF:05AC:40:00:1:1:1:0:S:34:MS Windows XP SP1 +FFFF:05AC:40:01:0:1:0:1:A:3C:FreeBSD 4.5-STABLE +FFFF:05AC:40:01:0:1:1:1:S:3C:Mac OS X 10.2.x +FFFF:05AC:40:WS:1:1:1:0:S:30:Windows 98 Second Edition +FFFF:05AC:40:WS:1:1:1:0:S:LT:Windows 98 +FFFF:05AC:80:00:0:1:0:1:S:3C:Windows XP +FFFF:05AC:80:00:1:1:1:1:A:40:Windows 2000 Server +FFFF:05AC:80:WS:0:0:1:0:S:LT:Windows 98 +FFFF:05AC:80:WS:1:1:1:0:A:30:BSD +FFFF:05AC:80:WS:1:1:1:0:S:30:Windows 95 +FFFF:05B0:80:WS:1:1:1:0:S:30:Windows 2000 Professional +FFFF:05B4:40:00:0:1:0:0:S:3C:CacheOS 3.1 on a CacheFlow 6000 +FFFF:05B4:40:00:0:1:1:1:A:3C:Mac OS X (Panther) ver. 10.3.3 (7F44) +FFFF:05B4:40:00:0:1:1:1:S:3C:FreeBSD 4.4 / 4.5 / 4.7 +FFFF:05B4:40:00:1:1:1:1:S:40:Openbsd 2.9 +FFFF:05B4:40:01:0:1:0:0:A:30:FreeBSD 4.5 +FFFF:05B4:40:01:0:1:0:0:S:30:AOL proxy +FFFF:05B4:40:01:0:1:0:1:A:3C:FreeBSD 4.4 - 4.5 +FFFF:05B4:40:01:0:1:0:1:A:LT:AIX +FFFF:05B4:40:01:0:1:1:1:A:3C:FreeBSD 4.3 - 4.4 - 5.1 +FFFF:05B4:40:01:0:1:1:1:A:LT:Linux +FFFF:05B4:40:01:0:1:1:1:S:3C:FreeBSD 4.5-STABLE +FFFF:05B4:40:01:0:1:1:1:S:44:FreeBSD +FFFF:05B4:40:02:0:1:0:1:A:3C:AIX 4.3 +FFFF:05B4:40:02:1:1:1:0:S:34:Windows 2003 +FFFF:05B4:40:03:0:1:1:1:A:3C:FreeBSD 4.7-RELEASE +FFFF:05B4:40:WS:0:0:0:0:A:2C:FreeBSD 4.5 +FFFF:05B4:40:WS:0:0:0:0:A:LT:Win NT 4.0 SP4 +FFFF:05B4:40:WS:0:0:1:0:A:2C:FreeBSD 4.3 - 4.4 +FFFF:05B4:40:WS:0:0:1:0:S:2C:FreeBSD 4.5-RELEASE +FFFF:05B4:40:WS:1:1:0:0:S:30:Windows 98 +FFFF:05B4:40:WS:1:1:1:0:A:30:Windows 2000 Pro SP2 +FFFF:05B4:40:WS:1:1:1:0:S:30:Windows 98 Second Edition +FFFF:05B4:80:00:0:0:1:0:A:LT:MacOS 8.1 +FFFF:05B4:80:00:0:1:0:0:A:LT:AIX 3.2 running on RS/6000 +FFFF:05B4:80:00:0:1:0:1:A:LT:AIX 3.2 running on RS/6000 +FFFF:05B4:80:00:0:1:1:1:A:3C:Windows 2000 SP4 +FFFF:05B4:80:00:1:1:0:1:A:40:Windows 2000 Server +FFFF:05B4:80:00:1:1:1:0:A:34:Windows 2000 Server SP4 +FFFF:05B4:80:00:1:1:1:1:A:40:Windows 2000 Advanced Server +FFFF:05B4:80:01:0:1:1:1:S:3C:FreeBSD 5.0 dp-1 +FFFF:05B4:80:03:1:1:1:0:S:34:Windows 2000 +FFFF:05B4:80:03:1:1:1:1:S:40:Windows 2000 SP 3 +FFFF:05B4:80:WS:0:0:1:0:A:2C:BSD +FFFF:05B4:80:WS:1:1:0:0:A:30:Windows 2000 Server SP4 +FFFF:05B4:80:WS:1:1:0:0:S:30:Windows 98 SE +FFFF:05B4:80:WS:1:1:1:0:A:30:NetBSD +FFFF:05B4:80:WS:1:1:1:0:S:30:Windows 2000 Professional SP4 +FFFF:05B4:80:WS:1:1:1:0:S:LT:MacOS X +FFFF:05B4:FF:01:0:1:1:0:A:30:Mac OS 9 +FFFF:05B4:FF:01:0:1:1:0:S:30:Mac OS 9 +FFFF:05B4:FF:WS:0:0:1:0:A:2C:FreeBSD +FFFF:05B4:FF:WS:1:1:1:0:S:30:Windows 2000 +FFFF:7805:40:01:0:1:0:1:S:3C:Mac OS X 10.3 +FFFF:7E05:80:00:1:1:1:1:S:40:Windows 2000 +FFFF:8C05:FF:01:0:1:0:1:A:LT:MacOS X +FFFF:A005:40:01:0:1:1:1:S:LT:Linux (Embedded) Router +FFFF:AC05:80:00:1:1:1:1:S:40:Windows XP +FFFF:AC05:80:WS:1:1:1:0:S:30:Windows XP +FFFF:B405:40:00:0:1:1:1:A:3C:Mac OS X (Panther) ver. 10.3.x +FFFF:B405:40:00:0:1:1:1:S:3C:Mac OS X 10.3 Panther +FFFF:B405:40:00:0:1:1:1:S:LT:Darwin +FFFF:B405:40:00:0:1:1:1:S:LT:Darwin 1.4 +FFFF:B405:40:00:0:1:1:1:S:LT:Mac OS X 10.3.2 (ppc) +FFFF:B405:40:00:0:1:1:1:S:LT:Mac Os X 10.3.4 +FFFF:B405:40:01:0:1:0:1:A:3C:FreeBSD 4.4 / 4.5 +FFFF:B405:40:01:0:1:1:0:A:LT:Mac OS X +FFFF:B405:40:01:0:1:1:1:A:3C:Mac OS X 10.1.3 / 10.2.x +FFFF:B405:40:01:0:1:1:1:S:3C:Mac OS X 10.1.x +FFFF:B405:40:02:0:1:1:1:S:3C:Mac OS X 10.x.x +FFFF:B405:40:WS:0:0:1:0:A:2C:Mac OS X +FFFF:B405:40:WS:0:0:1:0:A:LT:Mac OS X +FFFF:B405:40:WS:0:0:1:0:S:2C:Mac OS X 10.3 +FFFF:B405:40:WS:0:0:1:0:S:LT:Mac OS X (10.3) +FFFF:B405:40:WS:0:0:1:0:S:LT:Mac OS X (10.3) +FFFF:B405:40:WS:0:0:1:0:S:LT:Mac OS X 10.3 +FFFF:B405:80:00:0:1:1:1:A:3C:Windows 2000 +FFFF:B405:80:WS:0:0:0:0:A:2C:Windows 2000 Advanced Server +FFFF:B405:80:WS:1:1:1:0:A:30:Windows XP +FFFF:B405:80:WS:1:1:1:0:S:30:Windows +FFFF:B405:FF:02:0:1:0:1:A:LT:AIX +FFFF:B405:FF:02:0:1:1:0:S:LT:Mac OS 9.2 +FFFF:_MSS:80:00:0:0:0:0:A:LT:IBM MVS TCP/IP stack V. 3.2 or AIX 4.3.2 +FFFF:_MSS:80:00:0:1:1:0:A:LT:Cray Unicos 9.0 - 10.0 or Unicos/mk 1.5.1 +FFFF:_MSS:80:00:0:1:1:1:A:LT:Cray Unicos 9.0 - 10.0 or Unicos/mk 1.5.1 +FFFF:_MSS:80:WS:0:0:0:0:A:LT:IBM MVS TCP/IP stack V. 3.2 or AIX 4.3.2 +FFFF:_MSS:80:WS:0:0:1:0:A:LT:Novell NetWare 3.12 - 5.00 +FFFF:_MSS:FF:WS:0:0:1:0:A:LT:Solaris 2.6 - 2.7 Modified: csw/mgar/pkg/ntop/trunk/files/ntop.conf.CSW =================================================================== --- csw/mgar/pkg/ntop/trunk/files/ntop.conf.CSW 2011-02-09 08:10:52 UTC (rev 13240) +++ csw/mgar/pkg/ntop/trunk/files/ntop.conf.CSW 2011-02-09 18:23:28 UTC (rev 13241) @@ -1,5 +1,5 @@ # -# Configuration sample file for csw ntop v3.0 +# Configuration sample file for csw ntop v4.0.3 # v1.0 # # It is strongly recommended that you read ntop documentation @@ -165,6 +165,7 @@ #--skip-version-check # By default, ntop accesses a remote file to periodically check if the most current version is running. This option disables that check. +# NOTE [CSWmaintainer]: --skip-version-check appears to be ignored by ntop version 4.0.3 --skip-version-check --w3c Deleted: csw/mgar/pkg/ntop/trunk/files/postinstall =================================================================== --- csw/mgar/pkg/ntop/trunk/files/postinstall 2011-02-09 08:10:52 UTC (rev 13240) +++ csw/mgar/pkg/ntop/trunk/files/postinstall 2011-02-09 18:23:28 UTC (rev 13241) @@ -1,21 +0,0 @@ -#!/sbin/sh - -CONFDIR=$BASEDIR/opt/csw/etc/ntop -DATADIR=$BASEDIR/var/opt/csw/ntop - -PATH=/bin:/usr/bin:"$PATH" -export PATH - -if [ ! -f "$CONFDIR/ntop.conf" ]; then - cp -p $CONFDIR/ntop.conf.CSW $CONFDIR/ntop.conf -fi - -if [ ! -f "$DATADIR/ntop_pw.db" ]; then - if [ ! -d "$DATADIR" ]; then - mkdir -p $DATADIR - chown nobody:nobody $DATADIR - chmod 0711 $DATADIR - fi - $BASEDIR/opt/csw/bin/ntop -P $DATADIR -u nobody --set-admin-password=$ADMIN_PW -fi -echo "\nURL to access ntop is http://hostname:3000" Deleted: csw/mgar/pkg/ntop/trunk/files/postremove =================================================================== --- csw/mgar/pkg/ntop/trunk/files/postremove 2011-02-09 08:10:52 UTC (rev 13240) +++ csw/mgar/pkg/ntop/trunk/files/postremove 2011-02-09 18:23:28 UTC (rev 13241) @@ -1,8 +0,0 @@ -#!/sbin/sh - -CONFDIR=$BASEDIR/opt/csw/etc/ntop - -if [ -d "$CONFDIR" ]; then - echo "" - echo "You might want to manually remove files in $CONFDIR." -fi Deleted: csw/mgar/pkg/ntop/trunk/files/request =================================================================== --- csw/mgar/pkg/ntop/trunk/files/request 2011-02-09 08:10:52 UTC (rev 13240) +++ csw/mgar/pkg/ntop/trunk/files/request 2011-02-09 18:23:28 UTC (rev 13241) @@ -1,29 +0,0 @@ -#!/sbin/sh -# -DATADIR=$BASEDIR/var/opt/csw/ntop - -if [ ! -f $DATADIR/ntop_pw.db ]; then - stty -echo - trap "stty echo ; echo 'Interrupted' ; exit 1" 1 2 3 15 - while [ true ]; do - echo "\nPlease enter the password for the admin user: \c" - read admin_pw - if [ `expr "$admin_pw" : '.*'` -ge 5 ];then - echo "\nPlease enter the password again: \c" - read admin_pw1 - if [ "$admin_pw" != "$admin_pw1" ];then - echo "\nPasswords don't match. Please try again." - else - break - fi - else - echo "\nPassword too short (5 characters or more). Please try again." - fi - done - echo "\n" - stty echo -fi -cat > $1 << ! -ADMIN_PW=$admin_pw -! -exit 0 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From chninkel at users.sourceforge.net Wed Feb 9 20:49:21 2011 From: chninkel at users.sourceforge.net (chninkel at users.sourceforge.net) Date: Wed, 09 Feb 2011 19:49:21 +0000 Subject: [csw-devel] SF.net SVN: gar:[13242] csw/mgar/pkg/openssl/trunk/Makefile Message-ID: Revision: 13242 http://gar.svn.sourceforge.net/gar/?rev=13242&view=rev Author: chninkel Date: 2011-02-09 19:49:21 +0000 (Wed, 09 Feb 2011) Log Message: ----------- openssl: fixed checkpkgs warning Modified Paths: -------------- csw/mgar/pkg/openssl/trunk/Makefile Modified: csw/mgar/pkg/openssl/trunk/Makefile =================================================================== --- csw/mgar/pkg/openssl/trunk/Makefile 2011-02-09 18:23:28 UTC (rev 13241) +++ csw/mgar/pkg/openssl/trunk/Makefile 2011-02-09 19:49:21 UTC (rev 13242) @@ -55,10 +55,10 @@ # we use sun perl not csw one CHECKPKG_OVERRIDES_CSWosslutils += missing-dependency|CSWperl -CHECKPKG_OVERRIDES_CSWosslrt += surplus-dependency|CSWcacertificates +#CHECKPKG_OVERRIDES_CSWosslrt += surplus-dependency|CSWcacertificates # this package doesn't yet obey the new shared libraries standard -CHECKPKG_OVERRIDES_CSWosslrt += non-uniform-lib-versions-in-package|sonames=['libcrypto.so.0.9.7',|'libcrypto.so.0.9.8',|'libssl.so.0.9.7',|'libssl.so.0.9.8'] +CHECKPKG_OVERRIDES_CSWosslrt += non-uniform-lib-versions-in-package|sonames=libcrypto.so.0.9.7,libcrypto.so.0.9.8,libssl.so.0.9.7,libssl.so.0.9.8 # we will not recompile old 0.9.7 version for now ifeq ($(shell /usr/bin/uname -p),sparc) @@ -81,7 +81,21 @@ CHECKPKG_OVERRIDES_CSWossldevel += discouraged-path-in-pkgmap|/opt/csw/lib/pentium_pro/libssl.a endif +# the /usr/local reference in the documents file are relevant +CHECKPKG_OVERRIDES_CSWosslutils += file-with-bad-content|/usr/local|root/opt/csw/share/doc/openssl_utils/FAQ +CHECKPKG_OVERRIDES_CSWosslutils += file-with-bad-content|/usr/local|root/opt/csw/share/doc/openssl_utils/INSTALL +CHECKPKG_OVERRIDES_CSWosslutils += file-with-bad-content|/usr/local|root/opt/csw/share/doc/openssl_utils/CHANGES +CHECKPKG_OVERRIDES_CSWossl += file-with-bad-content|/usr/local|root/opt/csw/share/doc/openssl/INSTALL +CHECKPKG_OVERRIDES_CSWossl += file-with-bad-content|/usr/local|root/opt/csw/share/doc/openssl/CHANGES +CHECKPKG_OVERRIDES_CSWossl += file-with-bad-content|/usr/local|root/opt/csw/share/doc/openssl/FAQ +CHECKPKG_OVERRIDES_CSWosslrt += file-with-bad-content|/usr/local|root/opt/csw/share/doc/openssl_rt/FAQ +CHECKPKG_OVERRIDES_CSWosslrt += file-with-bad-content|/usr/local|root/opt/csw/share/doc/openssl_rt/INSTALL +CHECKPKG_OVERRIDES_CSWosslrt += file-with-bad-content|/usr/local|root/opt/csw/share/doc/openssl_rt/CHANGES +CHECKPKG_OVERRIDES_CSWossldevel += file-with-bad-content|/usr/local|root/opt/csw/share/doc/openssl_devel/CHANGES +CHECKPKG_OVERRIDES_CSWossldevel += file-with-bad-content|/usr/local|root/opt/csw/share/doc/openssl_devel/INSTALL +CHECKPKG_OVERRIDES_CSWossldevel += file-with-bad-content|/usr/local|root/opt/csw/share/doc/openssl_devel/FAQ + ###### Upstream and opencsw files information ####### MASTER_SITES = http://www.openssl.org/source/ http://openssl.org/news/ @@ -202,10 +216,14 @@ [ -f $(PKGROOT)$(prefix)/ssl/openssl.cnf ] && \ ginstall -D $(PKGROOT)$(prefix)/ssl/openssl.cnf $(PKGROOT)$(sysconfdir)/ssl/openssl.cnf.CSW +fix-paths: + gsed -i -e 's,/usr/local/ssl/lib,/opt/csw/etc/ssl,' $(PKGROOT)$(mandir)/man1/ca.1 + @$(MAKECOOKIE) + install-oldlibs: $(addprefix install-oldlibs-,$(OLDLIBS)) install-oldlibs-%: @echo " ==> Installing old libraries $* from archive oldlibs.$*-$(GARCH).tar.gz" cd $(PKGROOT) && gunzip -c $(CURDIR)/$(FILEDIR)/oldlibs.$*-$(GARCH).tar.gz | tar xvf - @$(MAKECOOKIE) -pre-package: install-certs install-oldlibs install-changelog install-doc +pre-package: install-certs install-oldlibs install-changelog install-doc fix-paths This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bwalton at opencsw.org Wed Feb 9 20:55:09 2011 From: bwalton at opencsw.org (Ben Walton) Date: Wed, 09 Feb 2011 14:55:09 -0500 Subject: [csw-devel] SF.net SVN: gar:[13242] csw/mgar/pkg/openssl/trunk/Makefile In-Reply-To: References: Message-ID: <1297281245-sup-2037@pinkfloyd.chass.utoronto.ca> Excerpts from chninkel's message of Wed Feb 09 14:49:21 -0500 2011: > +# the /usr/local reference in the documents file are relevant > +CHECKPKG_OVERRIDES_CSWosslutils += > file-with-bad-content|/usr/local|root/opt/csw/share/doc/openssl_utils/FAQ You could shorten this and drop the remaining versions: CHECKPKG_OVERRIDES_CSWosslutils += file-with-bad-content|/usr/local This falls down if there ever exist files outside of $(docdir) with this reference though... Thanks -Ben -- Ben Walton Systems Programmer - CHASS University of Toronto C:416.407.5610 | W:416.978.4302 From jonbcraig at users.sourceforge.net Thu Feb 10 06:31:35 2011 From: jonbcraig at users.sourceforge.net (jonbcraig at users.sourceforge.net) Date: Thu, 10 Feb 2011 05:31:35 +0000 Subject: [csw-devel] SF.net SVN: gar:[13243] csw/mgar/pkg/ntop/trunk Message-ID: Revision: 13243 http://gar.svn.sourceforge.net/gar/?rev=13243&view=rev Author: jonbcraig Date: 2011-02-10 05:31:35 +0000 (Thu, 10 Feb 2011) Log Message: ----------- ntop: fixes for /usr/local references Modified Paths: -------------- csw/mgar/pkg/ntop/trunk/Makefile csw/mgar/pkg/ntop/trunk/files/CSWntop.postinstall csw/mgar/pkg/ntop/trunk/files/CSWntop.postremove Added Paths: ----------- csw/mgar/pkg/ntop/trunk/files/0007-Update-defaults-from-usr-local-to-opt-csw-etc-opt-cs.patch Modified: csw/mgar/pkg/ntop/trunk/Makefile =================================================================== --- csw/mgar/pkg/ntop/trunk/Makefile 2011-02-09 19:49:21 UTC (rev 13242) +++ csw/mgar/pkg/ntop/trunk/Makefile 2011-02-10 05:31:35 UTC (rev 13243) @@ -29,6 +29,7 @@ PATCHFILES += 0004-Strip-default-Solaris-library-pathes-as-we-set-our-o.patch PATCHFILES += 0005-Change-default-PID-file-location-to-var-opt-csw-ntop.patch PATCHFILES += 0006-Temporary-Fix-for-Broken-sourceforge-CVS-access.patch +PATCHFILES += 0007-Update-defaults-from-usr-local-to-opt-csw-etc-opt-cs.patch # We define upstream file regex so we can be notifed of new upstream software release UPSTREAM_MASTER_SITES = $(SF_PROJECT_SHOWFILE)=17233 @@ -44,7 +45,9 @@ RUNTIME_DEP_PKGS_CSWntop += CSWlibgdbm3 RUNTIME_DEP_PKGS_CSWntop += CSWzlib RUNTIME_DEP_PKGS_CSWntop += CSWiconv +RUNTIME_DEP_PKGS_CSWntop += CSWgraphviz + BUILD_DEP_PKGS = $(RUNTIME_DEP_PKGS_CSWntop) BUILD_DEP_PKGS += CSWlibtool CSWautoconf CSWautomake BUILD_DEP_PKGS += CSWlibpcapdevel CSWossldevel @@ -88,6 +91,26 @@ #CHECKPKG_OVERRIDES_CSWntop += shared-lib-pkgname-mismatch|sonames=['libcpacketPlugin-4.0.3.so',|'libicmpPlugin-4.0.3.so',|'libnetflowPlugin-4.0.3.so',|'libntop-4.0.3.so',|'libntopreport-4.0.3.so',|'librrdPlugin-4.0.3.so',|'libsflowPlugin-4.0.3.so']|pkgname=CSWntop|expected=['CSWlib4-0-3']| CHECKPKG_OVERRIDES_CSWntop += shared-lib-pkgname-mismatch +# Bad content files - Documentation +CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/share/ntop/html/faq.html +CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/share|root/opt/csw/share/ntop/html/faq.html +CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/share/ntop/html/ntop.html +CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/share/man/man8/ntop.8 + +# Bad content files - Shared libraries (Captured Build Info for Version Output) +#CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/libicmpPlugin-4.0.3.so +#CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/libsflowPlugin-4.0.3.so +#CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/libntop-4.0.3.so +#CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/libntopreport-4.0.3.so +#CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/libnetflowPlugin-4.0.3.so +#CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/librrdPlugin-4.0.3.so +#CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/libcpacketPlugin-4.0.3.so +#CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/ntop/plugins/sflowPlugin.so +#CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/ntop/plugins/cpacketPlugin.so +#CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/ntop/plugins/rrdPlugin.so +#CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/ntop/plugins/netflowPlugin.so +#CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/ntop/plugins/icmpPlugin.so + include gar/category.mk pre-configure-modulated: Added: csw/mgar/pkg/ntop/trunk/files/0007-Update-defaults-from-usr-local-to-opt-csw-etc-opt-cs.patch =================================================================== --- csw/mgar/pkg/ntop/trunk/files/0007-Update-defaults-from-usr-local-to-opt-csw-etc-opt-cs.patch (rev 0) +++ csw/mgar/pkg/ntop/trunk/files/0007-Update-defaults-from-usr-local-to-opt-csw-etc-opt-cs.patch 2011-02-10 05:31:35 UTC (rev 13243) @@ -0,0 +1,43 @@ +From 22dd84d99aea4bfb4868e4e08df255d615a4733e Mon Sep 17 00:00:00 2001 +From: Jon Craig +Date: Thu, 10 Feb 2011 06:24:08 +0100 +Subject: [PATCH] Update defaults from /usr/local to /opt/csw - /etc/opt/csw + +--- + globals-defines.h | 6 +++--- + report.c | 2 +- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/globals-defines.h b/globals-defines.h +index a412617..7096add 100644 +--- a/globals-defines.h ++++ b/globals-defines.h +@@ -2767,9 +2767,9 @@ struct ip6_hdr + + /* *************************** */ + +-#define DEFAULT_NTOP_PLUGINS_INSTALL "/usr/local/lib/ntop/plugins" +-#define DEFAULT_NTOP_HTML_INSTALL "/usr/local/share/ntop" +-#define DEFAULT_NTOP_CFG_CONFIGFILE_DIR "/usr/local/etc/ntop" ++#define DEFAULT_NTOP_PLUGINS_INSTALL "/opt/csw/lib/ntop/plugins" ++#define DEFAULT_NTOP_HTML_INSTALL "/opt/csw/share/ntop" ++#define DEFAULT_NTOP_CFG_CONFIGFILE_DIR "/etc/opt/csw/ntop" + + #define DOMAIN_VIEW 0 + #define NETWORK_VIEW 1 +diff --git a/report.c b/report.c +index 0e62c8d..cbe6b7b 100644 +--- a/report.c ++++ b/report.c +@@ -2353,7 +2353,7 @@ void makeDot() { + if(fetchPrefsValue("dot.path", buf, sizeof(buf)) != -1) { + snprintf(dotPath, sizeof(dotPath), "%s", buf); + } else { +- snprintf(dotPath, sizeof(dotPath), "/usr/local/bin/dot"); ++ snprintf(dotPath, sizeof(dotPath), "/opt/csw/bin/dot"); + storePrefsValue("dot.path", dotPath); /* Set the default */ + } + +-- +1.7.3.2 + Modified: csw/mgar/pkg/ntop/trunk/files/CSWntop.postinstall =================================================================== --- csw/mgar/pkg/ntop/trunk/files/CSWntop.postinstall 2011-02-09 19:49:21 UTC (rev 13242) +++ csw/mgar/pkg/ntop/trunk/files/CSWntop.postinstall 2011-02-10 05:31:35 UTC (rev 13243) @@ -1,27 +1,39 @@ #!/sbin/sh -CONFDIR=$BASEDIR/etc/opt/etc/ntop +CONFDIR=$BASEDIR/etc/opt/csw/ntop DATADIR=$BASEDIR/var/opt/csw/ntop PATH=/bin:/usr/bin:/usr/sbin:"$PATH" export PATH if [ ! -f "$CONFDIR/ntop.conf" ]; then + echo "Installing CSWntop default config" cp -p $CONFDIR/ntop.conf.CSW $CONFDIR/ntop.conf fi if [ ! -d "$DATADIR" ]; then - mkdir -p $DATADIR + echo "Making DATADIR $DATADIR" + mkdir -p $DATADIR fi -if [ ! -d "$DATADIR/rrd ]; then - mkdir -p $DATADIR/rrd - chown nobody:nobody $DATADIR/rrd - chmod 0711 $DATADIR/rrd +if [ ! -d "$DATADIR/rrd" ]; then + echo "Making $DATADIR/rrd" + mkdir -p $DATADIR/rrd + chown nobody:nobody $DATADIR/rrd + chmod 0711 $DATADIR/rrd fi if [ ! -f "$DATADIR/ntop_pw.db" ]; then + echo "Setting admin password" $BASEDIR/opt/csw/bin/ntop -P $DATADIR -u nobody --set-admin-password=$ADMIN_PW +else + echo "Keeping the existing $DATADIR/ntop_pw.db password." fi echo "\nURL to access ntop is http://hostname:3000" + +if [ -x /etc/init.d/cswntop ]; then + /etc/init.d/cswntop start +else + svcadm enable /network/cswntop +fi Modified: csw/mgar/pkg/ntop/trunk/files/CSWntop.postremove =================================================================== --- csw/mgar/pkg/ntop/trunk/files/CSWntop.postremove 2011-02-09 19:49:21 UTC (rev 13242) +++ csw/mgar/pkg/ntop/trunk/files/CSWntop.postremove 2011-02-10 05:31:35 UTC (rev 13243) @@ -3,7 +3,7 @@ CONFDIR=$BASEDIR/etc/opt/csw/ntop DATADIR=$BASEDIR/var/opt/csw/ntop -if [ -d "$CONFDIR" || -d "$DATADIR" ]; then +if [ -d "$CONFDIR" -o -d "$DATADIR" ]; then echo "" echo "You might want to manually remove files in:" if [ -d "$CONFDIR" ]; then This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From jonbcraig at users.sourceforge.net Thu Feb 10 07:27:48 2011 From: jonbcraig at users.sourceforge.net (jonbcraig at users.sourceforge.net) Date: Thu, 10 Feb 2011 06:27:48 +0000 Subject: [csw-devel] SF.net SVN: gar:[13244] csw/mgar/pkg/ntop/trunk Message-ID: Revision: 13244 http://gar.svn.sourceforge.net/gar/?rev=13244&view=rev Author: jonbcraig Date: 2011-02-10 06:27:47 +0000 (Thu, 10 Feb 2011) Log Message: ----------- ntop: added a README.CSW Modified Paths: -------------- csw/mgar/pkg/ntop/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/ntop/trunk/files/README.CSW Modified: csw/mgar/pkg/ntop/trunk/Makefile =================================================================== --- csw/mgar/pkg/ntop/trunk/Makefile 2011-02-10 05:31:35 UTC (rev 13243) +++ csw/mgar/pkg/ntop/trunk/Makefile 2011-02-10 06:27:47 UTC (rev 13244) @@ -17,9 +17,10 @@ DISTFILES += cswntop EXPANDVARS += cswntop -DISTFILES += CSWntop.postinstall CSWntop.postremove CSWntop.request DISTFILES += ntop.conf.CSW EXPANDVARS += ntop.conf.CSW +DISTFILES += CSWntop.postinstall CSWntop.postremove CSWntop.request +DISTFILES += README.CSW INITSMF = /etc/opt/csw/init.d/cswntop @@ -92,24 +93,23 @@ CHECKPKG_OVERRIDES_CSWntop += shared-lib-pkgname-mismatch # Bad content files - Documentation -CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/share/ntop/html/faq.html CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/share|root/opt/csw/share/ntop/html/faq.html CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/share/ntop/html/ntop.html CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/share/man/man8/ntop.8 # Bad content files - Shared libraries (Captured Build Info for Version Output) -#CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/libicmpPlugin-4.0.3.so -#CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/libsflowPlugin-4.0.3.so -#CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/libntop-4.0.3.so -#CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/libntopreport-4.0.3.so -#CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/libnetflowPlugin-4.0.3.so -#CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/librrdPlugin-4.0.3.so -#CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/libcpacketPlugin-4.0.3.so -#CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/ntop/plugins/sflowPlugin.so -#CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/ntop/plugins/cpacketPlugin.so -#CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/ntop/plugins/rrdPlugin.so -#CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/ntop/plugins/netflowPlugin.so -#CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/ntop/plugins/icmpPlugin.so +CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/libicmpPlugin-4.0.3.so +CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/libsflowPlugin-4.0.3.so +CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/libntop-4.0.3.so +CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/libntopreport-4.0.3.so +CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/libnetflowPlugin-4.0.3.so +CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/librrdPlugin-4.0.3.so +CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/libcpacketPlugin-4.0.3.so +CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/ntop/plugins/sflowPlugin.so +CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/ntop/plugins/cpacketPlugin.so +CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/ntop/plugins/rrdPlugin.so +CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/ntop/plugins/netflowPlugin.so +CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/lib/ntop/plugins/icmpPlugin.so include gar/category.mk Added: csw/mgar/pkg/ntop/trunk/files/README.CSW =================================================================== --- csw/mgar/pkg/ntop/trunk/files/README.CSW (rev 0) +++ csw/mgar/pkg/ntop/trunk/files/README.CSW 2011-02-10 06:27:47 UTC (rev 13244) @@ -0,0 +1,24 @@ +* The etter.finger.os is a static version +During the build process for this release of the package the +sourceforge website was hacked and a number of services were +shutdown during the rebuilding/securing of the website. CVS +was one of these services and that impacted the ability to +build ntop. As part of the build process the file +etter.finger.os is downloaded from the etters project +CVS system and without http acces to the repository the +build would not proceed. I extracted the last version +of this file and short circuited the build to use this +frozen version of the file. The package was last updated +in 2004, so this shouldn't be a problem. The next time +ntop is refreshed I will revisit this to see if it can +be handled better, or at least the way the package +author intends it to be handled. + +* Files with bad content +A number of shared libraries and documentation files have +references to /usr/local. In the case of the shared +libaries these references were a static reference to +pre-processor, compiler and linker flags. As such they +may be ignored. The documentation has a number of +references but I have chosen to leave these references +as the author choose to have them. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Thu Feb 10 14:02:54 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Thu, 10 Feb 2011 13:02:54 +0000 Subject: [csw-devel] SF.net SVN: gar:[13245] csw/mgar/pkg/lang-python Message-ID: Revision: 13245 http://gar.svn.sourceforge.net/gar/?rev=13245&view=rev Author: wahwah Date: 2011-02-10 13:02:53 +0000 (Thu, 10 Feb 2011) Log Message: ----------- mechanize: Initial commit, doesn't build running build_ext Traceback (most recent call last): File "./setup.py", line 92, in main() File "./setup.py", line 87, in main packages = ["mechanize"], File "/opt/csw/lib/python/distutils/core.py", line 152, in setup dist.run_commands() File "/opt/csw/lib/python/distutils/dist.py", line 975, in run_commands self.run_command(cmd) File "/opt/csw/lib/python/distutils/dist.py", line 995, in run_command cmd_obj.run() File "/opt/csw/lib/python/site-packages/setuptools/command/test.py", line 121, in run self.with_project_on_sys_path(self.run_tests) File "/opt/csw/lib/python/site-packages/setuptools/command/test.py", line 101, in with_project_on_sys_path func() File "/opt/csw/lib/python/site-packages/setuptools/command/test.py", line 130, in run_tests testLoader = loader_class() File "/opt/csw/lib/python/unittest.py", line 816, in __init__ self.parseArgs(argv) File "/opt/csw/lib/python/unittest.py", line 843, in parseArgs self.createTests() File "/opt/csw/lib/python/unittest.py", line 849, in createTests self.module) File "/opt/csw/lib/python/unittest.py", line 613, in loadTestsFromNames suites = [self.loadTestsFromName(name, module) for name in names] File "/opt/csw/lib/python/unittest.py", line 587, in loadTestsFromName return self.loadTestsFromModule(obj) File "/opt/csw/lib/python/site-packages/setuptools/command/test.py", line 34, in loadTestsFromModule tests.append(self.loadTestsFromName(submodule)) File "/opt/csw/lib/python/unittest.py", line 584, in loadTestsFromName parent, obj = obj, getattr(obj, part) AttributeError: 'module' object has no attribute 'test_urllib2_localnet' gmake[1]: *** [test-work/solaris9-sparc/build-isa-sparcv8/mechanize-0.2.4/setup.py] Error 1 gmake[1]: Leaving directory `/home/maciej/src/opencsw/pkg/lang-python/mechanize/trunk' gmake: *** [merge-isa-sparcv8] Error 2 Modified Paths: -------------- csw/mgar/pkg/lang-python/mechanize/trunk/Makefile csw/mgar/pkg/lang-python/mechanize/trunk/checksums Added Paths: ----------- csw/mgar/pkg/lang-python/mechanize/ Modified: csw/mgar/pkg/lang-python/mechanize/trunk/Makefile =================================================================== --- csw/mgar/pkg/template/trunk/Makefile 2011-02-09 19:49:21 UTC (rev 13242) +++ csw/mgar/pkg/lang-python/mechanize/trunk/Makefile 2011-02-10 13:02:53 UTC (rev 13245) @@ -2,185 +2,14 @@ # Distributed under the terms of the GNU General Public License v2 # $Id$ -## This file contains comments to guide you through various GAR settings. -## Please remove unnecessary comments before committing your code to the code -## repository. The comments to remove are marked with double hashes. -## If you want to remove them all in-place, use: -## gsed -i -e '/^##/d' Makefile -## -## For more information about GAR variables, please see: -## https://sourceforge.net/apps/trac/gar/wiki/GAR%20Variable%20Reference -## -NAME = mypkg -VERSION = 1.0 -## -## The category that your software fits in. This is not a descriptive field, but -## influences the build process. Depending on the CATEGORIES setting, different -## Makefiles are included from gar/categories/ in your trunk directory, which -## adjust the build settings for the respective category. -## -## Possible settings are: -## apps, cpan, devel, gnome, java, kde, lang, lib, meta, net, python, server, -## utils, x11, xfce, xorg, xtra -CATEGORIES = lib -## -## A one-line description of the package, which will appear in the pkginfo. -DESCRIPTION = -## -## A longer description of the package. This is only for descriptive purposes -## inside the Makefile and is not used elsewhere. +NAME = mechanize +VERSION = 0.2.4 +CATEGORIES = python +DESCRIPTION = Stateful programmatic web browsing in Python define BLURB - endef -## -## Upstream URL that should show up in the VENDOR field as well as on -## http://opencsw.org/packages/. -SPKG_SOURCEURL = -## -## Whitespace-separated list of URLs to download the source package from. -## There are presets: $(SF_MIRRORS), $(GNU_MIRRORS) and $(GOOGLE_MIRROR), -## $(PYPI_MIRROR) -MASTER_SITES = -## -## SF_PROJ is required if you set $(MASTER_SITES) to $(SF_MIRRORS) and the -## Sourceforge project name differs from $(NAME). Specifies the Sourceforge -## project name of the software you wish to download. -## SF_PROJ = -## -## A list of space separated patch filenames from files/ that are to be applied -## to the extracted software before the ./configure stage. Patches need to be -## included in the DISTFILES variable as well. -## PATCHFILES = -## -## Whitespace-separated list of files which comprise this build. mGAR will look -## for the files in the $(FILEDIR) (trunk/files) directory and on the -## $(MASTER_SITES). +SPKG_SOURCEURL = http://wwwsearch.sourceforge.net/mechanize/ +MASTER_SITES = http://wwwsearch.sourceforge.net/$(NAME)/src/ DISTFILES = $(NAME)-$(VERSION).tar.gz -## -## We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz -## -## Catalog name is the name to be used with pkg{-get,util} -i . -## It is different from the system package name, which by convention is CSWpkgname. -## CATALOGNAME = -## -## Set to 1 to mark the package as architecture-independent. -## ARCHALL = 0 -## -## A list of files / patterns that should be excluded from the package. Amends -## the default list of excluded filenames $(MERGE_EXCLUDE_DEFAULT), which -## contains things like libtool .la files and files with a leading ~. -## EXTRA_MERGE_EXCLUDE_FILES = -## -## A list of space separated package names that should be marked as -## incompatible with the current package. This will go into the depend file. -## When a user has one of the incompatible packages installed and installs -## your package, he will be prompted that the incompatible package must be -## removed. He will however not be prevented to install your package without -## removing the conflicting package first. -## INCOMPATIBLE_PKGS = -## -## The name of the license file that should be included in your package. Defaults -## to COPYING. See http://sourceforge.net/apps/trac/gar/wiki/CopyRightfor details -## on including and displaying licenses. -## LICENSE = -## -## A list of space separated package names that should be produced from your -## Makefile. This is used when a software has different components that can be -## packaged and used individually (think runtime libraries, client tools, server -## files, development headers). You don't need to set this when you just want to -## produce one package. -## -## When you set this variable to include more than one package, you also need to -## set PKGFILES_CSWpkgname for each package (except for the first one in your -## $(PACKAGES) list) to define which files go into each package. The first -## package from $(PACKAGES) one will hold all files that are not matched by -## PKGFILES_ for other packages. -## PACKAGES = -## -## If specified, GAR feeds the almost-final package prototype file to -## $(PROTOTYPE_FILTER) and reads the final package prototype file from it. -## $(PROTOTYPE_FILTER) is usually a sed/awk/perl one-liner, which was mostly used -## to prepare the prototype file for use with cswclassutils (see -## $(SPKG_CLASSES)). Now that there are convenience variables for cswclassutils, -## you will rarely have to use this. A still valid use case would be to change -## the file permissions of a file to be set-UID. -## See http://wiki.opencsw.org/cswclassutils-package for common usage information -## PROTOTYPE_FILTER = -## -## cswclassutils settings -## -## A list of action classes. Possible values are: -## none cswpreserveconf cswcpsampleconf cswpycompile cswusergroup cswinitsmf -## cswinetd cswetcservices -## The class 'cswinitsmf' must be the last class listed. When you use cswclassutils, -## you need to add CSWcswclassutils to RUNTIME_DEP_PKGS. -## SPKG_CLASSES = none -## Simplified settings for classes: -## PRESERVECONF = -## SAMPLECONF = -## INITSMF = -## USERGROUP = -## ETCSERVICES = -## INETDCONF = -## A list of runtime package dependencies in the form of CSWfoo. -## RUNTIME_DEP_PKGS = -## -## A list of packages necessary to build this package -## BUILD_DEP_PKGS = $(RUNTIME_DEP_PKGS) -## -## When using non-empty $(PACKAGES): -## RUNTIME_DEP_PKGS_CSWpkgname = -## SPKG_DESC_CSWpkgname = -## PKGFILES_CSWpkgname = -## CATALOGNAME_CSWpkgname = -## -## A list of space separated directories where objects should be stripped in -## addition to the bin/ and sbin/ directories. -## STRIP_DIRS = -## -## Define a custom target for the configure phase. When you set this, the target -## that will be used instead of configure: target, is named -## configure-$(CONFIGURE_SCRIPTS) and you will need to define it in your Makefile -## after including gar/gar.include.mk. If you want to skip the configure phase -## completely (for example when your software doesn't need to be compiled) assign -## this variable an empty value. The procedure works for configure, build, -## install and test steps. -## CONFIGURE_SCRIPTS = -## BUILD_SCRIPTS = -## INSTALL_SCRIPTS = -## TEST_SCRIPTS = -## -## Compilation settings -## -## The build directory. -## WORKSRC = $(WORKDIR)/$(NAME)-$(VERSION) -## -## BUILD_ARGS is passed as an argument to gmake during the build phase. Use this -## for example, if you need to override Makefile variables. -## BUILD_ARGS = -## -## Arguments passed to the ./configure script. -CONFIGURE_ARGS = $(DIRPATHS) -## -## BUILD64 = -## CONFIGURE_ENV = -## EXTRA_CFLAGS = -## EXTRA_LDFLAGS = -## EXTRA_INC = -## EXTRA_LIB = -## GARFLAVOR = -## INSTALL_ARGS = -## OPT_FLAGS_SOS = -xO3 -## OPT_FLAGS_GCC = -O2 -pipe -## -## The compiler to use. Defaults to SOS11, can be also: SOS12, GCC3, GCC4. -## GARCOMPILER = SOS11 -## -# Remove the following rules and uncomment the -# include before building. -all: .DEFAULT -.DEFAULT: - @true - -#include gar/category.mk +include gar/category.mk Modified: csw/mgar/pkg/lang-python/mechanize/trunk/checksums =================================================================== --- csw/mgar/pkg/template/trunk/checksums 2011-02-09 19:49:21 UTC (rev 13242) +++ csw/mgar/pkg/lang-python/mechanize/trunk/checksums 2011-02-10 13:02:53 UTC (rev 13245) @@ -0,0 +1 @@ +0c1c3cec1c6d7b5d87662a069f04eb8d mechanize-0.2.4.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Thu Feb 10 19:00:06 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Thu, 10 Feb 2011 18:00:06 +0000 Subject: [csw-devel] SF.net SVN: gar:[13246] csw/mgar/gar/v2/lib/python/pkgdb.py Message-ID: Revision: 13246 http://gar.svn.sourceforge.net/gar/?rev=13246&view=rev Author: wahwah Date: 2011-02-10 18:00:06 +0000 (Thu, 10 Feb 2011) Log Message: ----------- pkgdb: A bugfix for pkgdb initdb If the intention is to initialize the database, don't call the automanage function. One of the things that AutoManage does, is throwing an error if the database does not have the right schema; if we call initdb, it's for exactly this reason, that the schema needs to be initialized. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/pkgdb.py Modified: csw/mgar/gar/v2/lib/python/pkgdb.py =================================================================== --- csw/mgar/gar/v2/lib/python/pkgdb.py 2011-02-10 13:02:53 UTC (rev 13245) +++ csw/mgar/gar/v2/lib/python/pkgdb.py 2011-02-10 18:00:06 UTC (rev 13246) @@ -387,7 +387,10 @@ md5_sums = args dm = database.DatabaseManager() - dm.AutoManage() + # Automanage is not what we want to do, if the intention is to initialize + # the database. + if command != 'initdb': + dm.AutoManage() if (command, subcommand) == ('show', 'errors'): for md5_sum in md5_sums: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From jonbcraig at users.sourceforge.net Thu Feb 10 20:25:34 2011 From: jonbcraig at users.sourceforge.net (jonbcraig at users.sourceforge.net) Date: Thu, 10 Feb 2011 19:25:34 +0000 Subject: [csw-devel] SF.net SVN: gar:[13247] csw/mgar/pkg/ntop/trunk Message-ID: Revision: 13247 http://gar.svn.sourceforge.net/gar/?rev=13247&view=rev Author: jonbcraig Date: 2011-02-10 19:25:33 +0000 (Thu, 10 Feb 2011) Log Message: ----------- ntop: smoothing out user experience Modified Paths: -------------- csw/mgar/pkg/ntop/trunk/Makefile csw/mgar/pkg/ntop/trunk/files/CSWntop.postinstall csw/mgar/pkg/ntop/trunk/files/CSWntop.postremove csw/mgar/pkg/ntop/trunk/files/CSWntop.request csw/mgar/pkg/ntop/trunk/files/cswntop Modified: csw/mgar/pkg/ntop/trunk/Makefile =================================================================== --- csw/mgar/pkg/ntop/trunk/Makefile 2011-02-10 18:00:06 UTC (rev 13246) +++ csw/mgar/pkg/ntop/trunk/Makefile 2011-02-10 19:25:33 UTC (rev 13247) @@ -46,8 +46,10 @@ RUNTIME_DEP_PKGS_CSWntop += CSWlibgdbm3 RUNTIME_DEP_PKGS_CSWntop += CSWzlib RUNTIME_DEP_PKGS_CSWntop += CSWiconv -RUNTIME_DEP_PKGS_CSWntop += CSWgraphviz +## Following package enables optional functionality +#RUNTIME_DEP_PKGS_CSWntop += CSWgraphviz +#CHECKPKG_OVERRIDES_CSWntop += surplus-dependency|CSWgraphviz BUILD_DEP_PKGS = $(RUNTIME_DEP_PKGS_CSWntop) BUILD_DEP_PKGS += CSWlibtool CSWautoconf CSWautomake @@ -93,6 +95,7 @@ CHECKPKG_OVERRIDES_CSWntop += shared-lib-pkgname-mismatch # Bad content files - Documentation +CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/share/ntop/html/faq.html CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/share|root/opt/csw/share/ntop/html/faq.html CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/share/ntop/html/ntop.html CHECKPKG_OVERRIDES_CSWntop += file-with-bad-content|/usr/local|root/opt/csw/share/man/man8/ntop.8 Modified: csw/mgar/pkg/ntop/trunk/files/CSWntop.postinstall =================================================================== --- csw/mgar/pkg/ntop/trunk/files/CSWntop.postinstall 2011-02-10 18:00:06 UTC (rev 13246) +++ csw/mgar/pkg/ntop/trunk/files/CSWntop.postinstall 2011-02-10 19:25:33 UTC (rev 13247) @@ -1,7 +1,7 @@ #!/sbin/sh -CONFDIR=$BASEDIR/etc/opt/csw/ntop -DATADIR=$BASEDIR/var/opt/csw/ntop +CONFDIR="${BASEDIR}etc/opt/csw/ntop" +DATADIR="${BASEDIR}var/opt/csw/ntop" PATH=/bin:/usr/bin:/usr/sbin:"$PATH" export PATH @@ -16,12 +16,9 @@ mkdir -p $DATADIR fi -if [ ! -d "$DATADIR/rrd" ]; then - echo "Making $DATADIR/rrd" - mkdir -p $DATADIR/rrd - chown nobody:nobody $DATADIR/rrd - chmod 0711 $DATADIR/rrd -fi +# Make sure directory permissions allow user nobody +chown nobody:nobody $DATADIR +chmod 0711 $DATADIR if [ ! -f "$DATADIR/ntop_pw.db" ]; then echo "Setting admin password" Modified: csw/mgar/pkg/ntop/trunk/files/CSWntop.postremove =================================================================== --- csw/mgar/pkg/ntop/trunk/files/CSWntop.postremove 2011-02-10 18:00:06 UTC (rev 13246) +++ csw/mgar/pkg/ntop/trunk/files/CSWntop.postremove 2011-02-10 19:25:33 UTC (rev 13247) @@ -1,7 +1,7 @@ #!/sbin/sh -CONFDIR=$BASEDIR/etc/opt/csw/ntop -DATADIR=$BASEDIR/var/opt/csw/ntop +CONFDIR="${BASEDIR}etc/opt/csw/ntop" +DATADIR="${BASEDIR}var/opt/csw/ntop" if [ -d "$CONFDIR" -o -d "$DATADIR" ]; then echo "" Modified: csw/mgar/pkg/ntop/trunk/files/CSWntop.request =================================================================== --- csw/mgar/pkg/ntop/trunk/files/CSWntop.request 2011-02-10 18:00:06 UTC (rev 13246) +++ csw/mgar/pkg/ntop/trunk/files/CSWntop.request 2011-02-10 19:25:33 UTC (rev 13247) @@ -1,6 +1,7 @@ #!/sbin/sh # -DATADIR=$BASEDIR/var/opt/csw/ntop +CONFDIR="${BASEDIR}etc/opt/csw/ntop" +DATADIR="${BASEDIR}var/opt/csw/ntop" if [ ! -f $DATADIR/ntop_pw.db ]; then stty -echo Modified: csw/mgar/pkg/ntop/trunk/files/cswntop =================================================================== --- csw/mgar/pkg/ntop/trunk/files/cswntop 2011-02-10 18:00:06 UTC (rev 13246) +++ csw/mgar/pkg/ntop/trunk/files/cswntop 2011-02-10 19:25:33 UTC (rev 13247) @@ -61,10 +61,12 @@ if [ -z "$INTERFACES" ];then for i in `/sbin/ifconfig -a |/usr/bin/grep "^[a-z0-9]*:"` do - /usr/bin/echo $i | /usr/bin/grep "^[a-z0-9]*:" >/dev/null 2>&1 + # Only accept base interfaces (skip addtnl IPs) + /usr/bin/echo $i | /usr/bin/grep "^[a-z0-9]*:$" >/dev/null 2>&1 if [ $? -eq 1 ]; then continue fi + # Skip the localhost m=`/usr/bin/echo ${i} | /usr/bin/sed 's/:[0-9]*:*//'` if [ "$m" = "lo0" ]; then continue @@ -72,20 +74,18 @@ net_device_list="${net_device_list} ${m}" done net_device_list=`/usr/bin/echo $net_device_list | /usr/bin/sort -u` - interfaces=0; - set -- $net_device_list - for i - do - if [ ${interfaces} -gt 0 ]; then - INTERFACES="${i},${INTERFACES}" - else - INTERFACES="${i}" + if [ ${net_device_list} ]; then + set -- $net_device_list + INTERFACES="$1" + shift; + for i + do + INTERFACES="$INTERFACES,${i}" + done fi - interfaces=`/usr/bin/expr ${interfaces} + 1` - done - fi - if [ ${interfaces} -gt 1 ]; then - UNIXEXTRA=" ${UNIXEXTRA} -i ${INTERFACES}" + if [ ${INTERFACES} ]; then + UNIXEXTRA=" ${UNIXEXTRA} -i ${INTERFACES}" + fi fi LOG=`/usr/bin/egrep "^\--use-syslog|^-L" "$CONF" | /usr/bin/cut -f2 -d" "` if [ -z "$LOG" ];then This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From jonbcraig at users.sourceforge.net Thu Feb 10 21:18:13 2011 From: jonbcraig at users.sourceforge.net (jonbcraig at users.sourceforge.net) Date: Thu, 10 Feb 2011 20:18:13 +0000 Subject: [csw-devel] SF.net SVN: gar:[13248] csw/mgar/pkg/ntop/trunk/files Message-ID: Revision: 13248 http://gar.svn.sourceforge.net/gar/?rev=13248&view=rev Author: jonbcraig Date: 2011-02-10 20:18:13 +0000 (Thu, 10 Feb 2011) Log Message: ----------- ntop: should be ready for user testing/release Modified Paths: -------------- csw/mgar/pkg/ntop/trunk/files/README.CSW csw/mgar/pkg/ntop/trunk/files/cswntop Modified: csw/mgar/pkg/ntop/trunk/files/README.CSW =================================================================== --- csw/mgar/pkg/ntop/trunk/files/README.CSW 2011-02-10 19:25:33 UTC (rev 13247) +++ csw/mgar/pkg/ntop/trunk/files/README.CSW 2011-02-10 20:18:13 UTC (rev 13248) @@ -1,24 +1,87 @@ +Package: ntop +Release: 4.0.3 +================================================================= + +The following are a collection of statments to detail +the particulars of this release. These serve as a +reminder to the maintainer and as potential notes for +future maintainers and/or end users. +=== + +* Default configuration + +This package automatically starts ntop via SMF/init during +the install. As this package is intended to run as a service +a few settings are forced. The interfaces default to all +interfaces on the box unless specified in the configuration +file /etc/opt/csw/ntop/ntop.conf. Likewise, logging is +sent to syslog-local3 unless changed. Settings in this +configuration file override any changes made through the +GUI. You can of course disable the SMF/init settings +and control ntop startup/shutdown manually. +=== + * The etter.finger.os is a static version -During the build process for this release of the package the -sourceforge website was hacked and a number of services were -shutdown during the rebuilding/securing of the website. CVS -was one of these services and that impacted the ability to -build ntop. As part of the build process the file -etter.finger.os is downloaded from the etters project -CVS system and without http acces to the repository the -build would not proceed. I extracted the last version -of this file and short circuited the build to use this -frozen version of the file. The package was last updated -in 2004, so this shouldn't be a problem. The next time -ntop is refreshed I will revisit this to see if it can -be handled better, or at least the way the package -author intends it to be handled. +This file provides the information ntop uses to passively +identify host operating sytsems. During the build process +for this release of the package the sourceforge website was +hacked and a number of services were shutdown during the +rebuilding/securing of the website. CVS was one of these +services and that impacted the ability to build ntop. As +part of the build process the file etter.finger.os is +downloaded from the etters project CVS system and without +http acces to the repository the build would not proceed. +I extracted the last version of this file and short +circuited the build to use this frozen version of the file. +The package was last updated in 2004, so this shouldn't be +a problem. The next time ntop is refreshed I will revisit +this to see if it can be handled better, or at least the +way the package author intends it to be handled. +=== + * Files with bad content + A number of shared libraries and documentation files have references to /usr/local. In the case of the shared libaries these references were a static reference to pre-processor, compiler and linker flags. As such they may be ignored. The documentation has a number of -references but I have chosen to leave these references -as the author choose to have them. +references as well but they are appropriate for the +tone of the document. I have chosen to leave these +references as the author choose to have them. +=== + +* Use of graphviz + +Addtional web display functionality is enabled when +this package is installed. I did not make it a +dependency because of the number of additional packages +that would be installed. I'll leave this choice to the +end user. +=== + +* Use of Mako + +Additional functionality could be enabled if the mako +package were installed. This package is not currently +available from OpenCSW but may be integrated in the +future if this package becomes available. +=== + +* Use of MySQL + +I have choosen to not add support for MySQL at this time. +I have not used ntop with MySQL and so my experience +with this type of configuration is non-existent. If +this feature is important to end users they may request +it and I will consider extending support. +=== + +* Use of FC + +This feature follows along with the MySQL statement and +is not enabled for this release. Please request if you +need this functionality and I will consider extending +support. +=== Modified: csw/mgar/pkg/ntop/trunk/files/cswntop =================================================================== --- csw/mgar/pkg/ntop/trunk/files/cswntop 2011-02-10 19:25:33 UTC (rev 13247) +++ csw/mgar/pkg/ntop/trunk/files/cswntop 2011-02-10 20:18:13 UTC (rev 13248) @@ -74,7 +74,7 @@ net_device_list="${net_device_list} ${m}" done net_device_list=`/usr/bin/echo $net_device_list | /usr/bin/sort -u` - if [ ${net_device_list} ]; then + if [ "${net_device_list}" ]; then set -- $net_device_list INTERFACES="$1" shift; @@ -83,7 +83,7 @@ INTERFACES="$INTERFACES,${i}" done fi - if [ ${INTERFACES} ]; then + if [ "${INTERFACES}" ]; then UNIXEXTRA=" ${UNIXEXTRA} -i ${INTERFACES}" fi fi This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From theferret at users.sourceforge.net Thu Feb 10 23:13:15 2011 From: theferret at users.sourceforge.net (theferret at users.sourceforge.net) Date: Thu, 10 Feb 2011 22:13:15 +0000 Subject: [csw-devel] SF.net SVN: gar:[13249] csw/mgar/pkg/dialog/trunk/Makefile Message-ID: Revision: 13249 http://gar.svn.sourceforge.net/gar/?rev=13249&view=rev Author: theferret Date: 2011-02-10 22:13:15 +0000 (Thu, 10 Feb 2011) Log Message: ----------- Just a minor Makefile comment, ignore Modified Paths: -------------- csw/mgar/pkg/dialog/trunk/Makefile Modified: csw/mgar/pkg/dialog/trunk/Makefile =================================================================== --- csw/mgar/pkg/dialog/trunk/Makefile 2011-02-10 20:18:13 UTC (rev 13248) +++ csw/mgar/pkg/dialog/trunk/Makefile 2011-02-10 22:13:15 UTC (rev 13249) @@ -1,3 +1,6 @@ +# Reminder: to build dialog_minimal, use +# gmake package-CSWdialog-minimal + NAME = dialog VERSION = 1.1r20110118 VERSION2 = 1.1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Fri Feb 11 08:39:21 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Fri, 11 Feb 2011 07:39:21 +0000 Subject: [csw-devel] SF.net SVN: gar:[13250] csw/mgar/pkg/lang-python/mechanize/trunk/Makefile Message-ID: Revision: 13250 http://gar.svn.sourceforge.net/gar/?rev=13250&view=rev Author: wahwah Date: 2011-02-11 07:39:21 +0000 (Fri, 11 Feb 2011) Log Message: ----------- mechanize: Skipping tests until python-dev update Mechanize requires Python test files to run its tests. Disabling tests for now. Modified Paths: -------------- csw/mgar/pkg/lang-python/mechanize/trunk/Makefile Modified: csw/mgar/pkg/lang-python/mechanize/trunk/Makefile =================================================================== --- csw/mgar/pkg/lang-python/mechanize/trunk/Makefile 2011-02-10 22:13:15 UTC (rev 13249) +++ csw/mgar/pkg/lang-python/mechanize/trunk/Makefile 2011-02-11 07:39:21 UTC (rev 13250) @@ -11,5 +11,10 @@ SPKG_SOURCEURL = http://wwwsearch.sourceforge.net/mechanize/ MASTER_SITES = http://wwwsearch.sourceforge.net/$(NAME)/src/ DISTFILES = $(NAME)-$(VERSION).tar.gz -UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz +LICENSE = PKG-INFO +PACKAGES = CSWpy-mechanize +ARCHALL_CSWpy-mechanize = 1 +# mechanize does have tests, but they require files that we don't have in the +# package repository. +SKIPTEST = 1 include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Fri Feb 11 09:08:58 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Fri, 11 Feb 2011 08:08:58 +0000 Subject: [csw-devel] SF.net SVN: gar:[13251] csw/mgar/pkg/lang-python Message-ID: Revision: 13251 http://gar.svn.sourceforge.net/gar/?rev=13251&view=rev Author: wahwah Date: 2011-02-11 08:08:58 +0000 (Fri, 11 Feb 2011) Log Message: ----------- zope: Initial commit It doesn't build, because it requires Python 2.4.3, which we don't currently ship. Modified Paths: -------------- csw/mgar/pkg/lang-python/zope/trunk/Makefile csw/mgar/pkg/lang-python/zope/trunk/checksums Added Paths: ----------- csw/mgar/pkg/lang-python/zope/ Modified: csw/mgar/pkg/lang-python/zope/trunk/Makefile =================================================================== --- csw/mgar/pkg/template/trunk/Makefile 2011-02-09 19:49:21 UTC (rev 13242) +++ csw/mgar/pkg/lang-python/zope/trunk/Makefile 2011-02-11 08:08:58 UTC (rev 13251) @@ -2,185 +2,17 @@ # Distributed under the terms of the GNU General Public License v2 # $Id$ -## This file contains comments to guide you through various GAR settings. -## Please remove unnecessary comments before committing your code to the code -## repository. The comments to remove are marked with double hashes. -## If you want to remove them all in-place, use: -## gsed -i -e '/^##/d' Makefile -## -## For more information about GAR variables, please see: -## https://sourceforge.net/apps/trac/gar/wiki/GAR%20Variable%20Reference -## -NAME = mypkg -VERSION = 1.0 -## -## The category that your software fits in. This is not a descriptive field, but -## influences the build process. Depending on the CATEGORIES setting, different -## Makefiles are included from gar/categories/ in your trunk directory, which -## adjust the build settings for the respective category. -## -## Possible settings are: -## apps, cpan, devel, gnome, java, kde, lang, lib, meta, net, python, server, -## utils, x11, xfce, xorg, xtra +# The latest stable version has been released on 2009-08-06, and requires +# Python 2.4.3, which we don't currently ship. + +NAME = Zope +VERSION = 3.4.1 CATEGORIES = lib -## -## A one-line description of the package, which will appear in the pkginfo. -DESCRIPTION = -## -## A longer description of the package. This is only for descriptive purposes -## inside the Makefile and is not used elsewhere. +DESCRIPTION = Web application server define BLURB - endef -## -## Upstream URL that should show up in the VENDOR field as well as on -## http://opencsw.org/packages/. -SPKG_SOURCEURL = -## -## Whitespace-separated list of URLs to download the source package from. -## There are presets: $(SF_MIRRORS), $(GNU_MIRRORS) and $(GOOGLE_MIRROR), -## $(PYPI_MIRROR) -MASTER_SITES = -## -## SF_PROJ is required if you set $(MASTER_SITES) to $(SF_MIRRORS) and the -## Sourceforge project name differs from $(NAME). Specifies the Sourceforge -## project name of the software you wish to download. -## SF_PROJ = -## -## A list of space separated patch filenames from files/ that are to be applied -## to the extracted software before the ./configure stage. Patches need to be -## included in the DISTFILES variable as well. -## PATCHFILES = -## -## Whitespace-separated list of files which comprise this build. mGAR will look -## for the files in the $(FILEDIR) (trunk/files) directory and on the -## $(MASTER_SITES). -DISTFILES = $(NAME)-$(VERSION).tar.gz -## -## We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz -## -## Catalog name is the name to be used with pkg{-get,util} -i . -## It is different from the system package name, which by convention is CSWpkgname. -## CATALOGNAME = -## -## Set to 1 to mark the package as architecture-independent. -## ARCHALL = 0 -## -## A list of files / patterns that should be excluded from the package. Amends -## the default list of excluded filenames $(MERGE_EXCLUDE_DEFAULT), which -## contains things like libtool .la files and files with a leading ~. -## EXTRA_MERGE_EXCLUDE_FILES = -## -## A list of space separated package names that should be marked as -## incompatible with the current package. This will go into the depend file. -## When a user has one of the incompatible packages installed and installs -## your package, he will be prompted that the incompatible package must be -## removed. He will however not be prevented to install your package without -## removing the conflicting package first. -## INCOMPATIBLE_PKGS = -## -## The name of the license file that should be included in your package. Defaults -## to COPYING. See http://sourceforge.net/apps/trac/gar/wiki/CopyRightfor details -## on including and displaying licenses. -## LICENSE = -## -## A list of space separated package names that should be produced from your -## Makefile. This is used when a software has different components that can be -## packaged and used individually (think runtime libraries, client tools, server -## files, development headers). You don't need to set this when you just want to -## produce one package. -## -## When you set this variable to include more than one package, you also need to -## set PKGFILES_CSWpkgname for each package (except for the first one in your -## $(PACKAGES) list) to define which files go into each package. The first -## package from $(PACKAGES) one will hold all files that are not matched by -## PKGFILES_ for other packages. -## PACKAGES = -## -## If specified, GAR feeds the almost-final package prototype file to -## $(PROTOTYPE_FILTER) and reads the final package prototype file from it. -## $(PROTOTYPE_FILTER) is usually a sed/awk/perl one-liner, which was mostly used -## to prepare the prototype file for use with cswclassutils (see -## $(SPKG_CLASSES)). Now that there are convenience variables for cswclassutils, -## you will rarely have to use this. A still valid use case would be to change -## the file permissions of a file to be set-UID. -## See http://wiki.opencsw.org/cswclassutils-package for common usage information -## PROTOTYPE_FILTER = -## -## cswclassutils settings -## -## A list of action classes. Possible values are: -## none cswpreserveconf cswcpsampleconf cswpycompile cswusergroup cswinitsmf -## cswinetd cswetcservices -## The class 'cswinitsmf' must be the last class listed. When you use cswclassutils, -## you need to add CSWcswclassutils to RUNTIME_DEP_PKGS. -## SPKG_CLASSES = none -## Simplified settings for classes: -## PRESERVECONF = -## SAMPLECONF = -## INITSMF = -## USERGROUP = -## ETCSERVICES = -## INETDCONF = -## A list of runtime package dependencies in the form of CSWfoo. -## RUNTIME_DEP_PKGS = -## -## A list of packages necessary to build this package -## BUILD_DEP_PKGS = $(RUNTIME_DEP_PKGS) -## -## When using non-empty $(PACKAGES): -## RUNTIME_DEP_PKGS_CSWpkgname = -## SPKG_DESC_CSWpkgname = -## PKGFILES_CSWpkgname = -## CATALOGNAME_CSWpkgname = -## -## A list of space separated directories where objects should be stripped in -## addition to the bin/ and sbin/ directories. -## STRIP_DIRS = -## -## Define a custom target for the configure phase. When you set this, the target -## that will be used instead of configure: target, is named -## configure-$(CONFIGURE_SCRIPTS) and you will need to define it in your Makefile -## after including gar/gar.include.mk. If you want to skip the configure phase -## completely (for example when your software doesn't need to be compiled) assign -## this variable an empty value. The procedure works for configure, build, -## install and test steps. -## CONFIGURE_SCRIPTS = -## BUILD_SCRIPTS = -## INSTALL_SCRIPTS = -## TEST_SCRIPTS = -## -## Compilation settings -## -## The build directory. -## WORKSRC = $(WORKDIR)/$(NAME)-$(VERSION) -## -## BUILD_ARGS is passed as an argument to gmake during the build phase. Use this -## for example, if you need to override Makefile variables. -## BUILD_ARGS = -## -## Arguments passed to the ./configure script. -CONFIGURE_ARGS = $(DIRPATHS) -## -## BUILD64 = -## CONFIGURE_ENV = -## EXTRA_CFLAGS = -## EXTRA_LDFLAGS = -## EXTRA_INC = -## EXTRA_LIB = -## GARFLAVOR = -## INSTALL_ARGS = -## OPT_FLAGS_SOS = -xO3 -## OPT_FLAGS_GCC = -O2 -pipe -## -## The compiler to use. Defaults to SOS11, can be also: SOS12, GCC3, GCC4. -## GARCOMPILER = SOS11 -## -# Remove the following rules and uncomment the -# include before building. -all: .DEFAULT -.DEFAULT: - @true - -#include gar/category.mk +SPKG_SOURCEURL = http://www.zope.org +MASTER_SITES = http://www.zope.org/Products/Zope3/$(VERSION)/ +DISTFILES = $(NAME)-$(VERSION).tgz +CONFIGURE_ARGS = --prefix=$(prefix) +include gar/category.mk Modified: csw/mgar/pkg/lang-python/zope/trunk/checksums =================================================================== --- csw/mgar/pkg/template/trunk/checksums 2011-02-09 19:49:21 UTC (rev 13242) +++ csw/mgar/pkg/lang-python/zope/trunk/checksums 2011-02-11 08:08:58 UTC (rev 13251) @@ -0,0 +1 @@ +9ca087949f571bdef9387708e7b360c6 Zope-3.4.1.tgz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From idogan23 at users.sourceforge.net Fri Feb 11 14:10:31 2011 From: idogan23 at users.sourceforge.net (idogan23 at users.sourceforge.net) Date: Fri, 11 Feb 2011 13:10:31 +0000 Subject: [csw-devel] SF.net SVN: gar:[13252] csw/mgar/pkg/unbound/trunk/Makefile Message-ID: Revision: 13252 http://gar.svn.sourceforge.net/gar/?rev=13252&view=rev Author: idogan23 Date: 2011-02-11 13:10:31 +0000 (Fri, 11 Feb 2011) Log Message: ----------- unbound: fixed dependency on libevent Modified Paths: -------------- csw/mgar/pkg/unbound/trunk/Makefile Modified: csw/mgar/pkg/unbound/trunk/Makefile =================================================================== --- csw/mgar/pkg/unbound/trunk/Makefile 2011-02-11 08:08:58 UTC (rev 13251) +++ csw/mgar/pkg/unbound/trunk/Makefile 2011-02-11 13:10:31 UTC (rev 13252) @@ -86,16 +86,16 @@ SPKG_DESC_CSWunbound = $(DESCRIPTION) RUNTIME_DEP_PKGS_CSWunbound += CSWlibunbound2 RUNTIME_DEP_PKGS_CSWunbound += CSWexpat -RUNTIME_DEP_PKGS_CSWunbound += CSWlibevent RUNTIME_DEP_PKGS_CSWunbound += CSWlibldns1 RUNTIME_DEP_PKGS_CSWunbound += CSWosslrt +RUNTIME_DEP_PKGS_CSWunbound += CSWlibevent2-0-5 CATALOGNAME_CSWlibunbound2 = libunbound2 SPKG_DESC_CSWlibunbound2 = Library implementing DNS resolution and validation PKGFILES_CSWlibunbound2 += $(PKGFILES_RT) RUNTIME_DEP_PKGS_CSWlibunbound2 += CSWlibldns1 RUNTIME_DEP_PKGS_CSWlibunbound2 += CSWosslrt -RUNTIME_DEP_PKGS_CSWlibunbound2 += CSWlibevent +RUNTIME_DEP_PKGS_CSWlibunbound2 += CSWlibevent2-0-5 CATALOGNAME_CSWunbound-devel = unbound_devel SPKG_DESC_CSWunbound-devel = $(DESCRIPTION) development package @@ -109,7 +109,7 @@ RUNTIME_DEP_PKGS_CSWunbound-host += CSWlibldns1 RUNTIME_DEP_PKGS_CSWunbound-host += CSWosslrt RUNTIME_DEP_PKGS_CSWunbound-host += CSWlibunbound2 -RUNTIME_DEP_PKGS_CSWunbound-host += CSWlibevent +RUNTIME_DEP_PKGS_CSWunbound-host += CSWlibevent2-0-5 include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Fri Feb 11 14:32:15 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Fri, 11 Feb 2011 13:32:15 +0000 Subject: [csw-devel] SF.net SVN: gar:[13253] csw/mgar/pkg/dialog/trunk/Makefile Message-ID: Revision: 13253 http://gar.svn.sourceforge.net/gar/?rev=13253&view=rev Author: bdwalton Date: 2011-02-11 13:32:14 +0000 (Fri, 11 Feb 2011) Log Message: ----------- dialog/trunk: add explicit catalogname values for the two package Modified Paths: -------------- csw/mgar/pkg/dialog/trunk/Makefile Modified: csw/mgar/pkg/dialog/trunk/Makefile =================================================================== --- csw/mgar/pkg/dialog/trunk/Makefile 2011-02-11 13:10:31 UTC (rev 13252) +++ csw/mgar/pkg/dialog/trunk/Makefile 2011-02-11 13:32:14 UTC (rev 13253) @@ -25,6 +25,8 @@ PACKAGES = CSWdialog CSWdialog-minimal SPKG_DESC_CSWdialog = A script-interpreter which provides a set of curses widgets SPKG_DESC_CSWdialog-minimal = A script-interpreter which provides a set of curses widgets (traditional curses version) +CATALOGNAME_CSWdialog = dialog +CATALOGNAME_CSWdialog-minimal = dialog_minimal RUNTIME_DEP_PKGS_CSWdialog += CSWncurses This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Sat Feb 12 03:22:01 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sat, 12 Feb 2011 02:22:01 +0000 Subject: [csw-devel] SF.net SVN: gar:[13254] csw/mgar/pkg/git/trunk/Makefile Message-ID: Revision: 13254 http://gar.svn.sourceforge.net/gar/?rev=13254&view=rev Author: bdwalton Date: 2011-02-12 02:22:01 +0000 (Sat, 12 Feb 2011) Log Message: ----------- git/trunk: version bump to 1.7.4.1 Modified Paths: -------------- csw/mgar/pkg/git/trunk/Makefile Modified: csw/mgar/pkg/git/trunk/Makefile =================================================================== --- csw/mgar/pkg/git/trunk/Makefile 2011-02-11 13:32:14 UTC (rev 13253) +++ csw/mgar/pkg/git/trunk/Makefile 2011-02-12 02:22:01 UTC (rev 13254) @@ -1,5 +1,5 @@ NAME = git -VERSION = 1.7.4 +VERSION = 1.7.4.1 #PATCHLEVEL = rc1 CATEGORIES = devel This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From gmarler at users.sourceforge.net Sat Feb 12 04:08:13 2011 From: gmarler at users.sourceforge.net (gmarler at users.sourceforge.net) Date: Sat, 12 Feb 2011 03:08:13 +0000 Subject: [csw-devel] SF.net SVN: gar:[13255] csw/mgar/pkg/findutils/trunk/Makefile Message-ID: Revision: 13255 http://gar.svn.sourceforge.net/gar/?rev=13255&view=rev Author: gmarler Date: 2011-02-12 03:08:13 +0000 (Sat, 12 Feb 2011) Log Message: ----------- Eliminate dependency on CSWiconv, as it appears to no longer be needed Modified Paths: -------------- csw/mgar/pkg/findutils/trunk/Makefile Modified: csw/mgar/pkg/findutils/trunk/Makefile =================================================================== --- csw/mgar/pkg/findutils/trunk/Makefile 2011-02-12 02:22:01 UTC (rev 13254) +++ csw/mgar/pkg/findutils/trunk/Makefile 2011-02-12 03:08:13 UTC (rev 13255) @@ -17,7 +17,7 @@ DISTFILES = $(NAME)-$(VERSION).tar.gz DISTFILES += CSWfindutils.postinstall -RUNTIME_DEP_PKGS = CSWggettextrt CSWiconv +RUNTIME_DEP_PKGS = CSWggettextrt # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz @@ -35,7 +35,6 @@ # because that's what -fast does if it's last in the list. OPT_FLAGS_SOS = -fast -xnolibmopt -CHECKPKG_OVERRIDES_CSWfindutils += surplus-dependency|CSWiconv # Test target requires GNU diff TEST_TARGET = check This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Sat Feb 12 05:17:26 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sat, 12 Feb 2011 04:17:26 +0000 Subject: [csw-devel] SF.net SVN: gar:[13256] csw/mgar/pkg/gettext/trunk/Makefile Message-ID: Revision: 13256 http://gar.svn.sourceforge.net/gar/?rev=13256&view=rev Author: bdwalton Date: 2011-02-12 04:17:26 +0000 (Sat, 12 Feb 2011) Log Message: ----------- gettext/trunk: correct catalog name declaration for the doc package Modified Paths: -------------- csw/mgar/pkg/gettext/trunk/Makefile Modified: csw/mgar/pkg/gettext/trunk/Makefile =================================================================== --- csw/mgar/pkg/gettext/trunk/Makefile 2011-02-12 03:08:13 UTC (rev 13255) +++ csw/mgar/pkg/gettext/trunk/Makefile 2011-02-12 04:17:26 UTC (rev 13256) @@ -26,7 +26,7 @@ CATALOGNAME_CSWlibasprintf0 = libasprintf0 CATALOGNAME_CSWggettext = ggettext -CATALOGNAME_CSWggettext = ggettextdoc +CATALOGNAME_CSWggettextdoc = ggettextdoc CATALOGNAME_CSWlibgettextlib0-14-1 = libgettextlib0_14_1 CATALOGNAME_CSWlibgettextlib0-17 = libgettextlib0_17 CATALOGNAME_CSWlibgettextlib0-18-1 = libgettextlib0_18_1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Sat Feb 12 05:18:19 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sat, 12 Feb 2011 04:18:19 +0000 Subject: [csw-devel] SF.net SVN: gar:[13257] csw/mgar/pkg/gettext/trunk/Makefile Message-ID: Revision: 13257 http://gar.svn.sourceforge.net/gar/?rev=13257&view=rev Author: bdwalton Date: 2011-02-12 04:18:18 +0000 (Sat, 12 Feb 2011) Log Message: ----------- gettext/trunk: add experimental support for placing ,p, in the version string Modified Paths: -------------- csw/mgar/pkg/gettext/trunk/Makefile Modified: csw/mgar/pkg/gettext/trunk/Makefile =================================================================== --- csw/mgar/pkg/gettext/trunk/Makefile 2011-02-12 04:17:26 UTC (rev 13256) +++ csw/mgar/pkg/gettext/trunk/Makefile 2011-02-12 04:18:18 UTC (rev 13257) @@ -172,7 +172,11 @@ PATCHFILES += 0001-Use-the-auto-detected-SHELL-to-run-convert-archive.patch PATCHFILES += 0002-Update-ltmain.sh-to-prevent-libtool-stripping-runpat.patch + +#This patch is not a simple 'make it compile' so we flag the feature +#patch below PATCHFILES += 0003-Patch-around-thread-handling-differences-between-9-a.patch +FLAG_PATCH = 1 CONFIGURE_ARGS = $(DIRPATHS) CONFIGURE_ARGS += --program-prefix=g This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Sat Feb 12 05:36:26 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sat, 12 Feb 2011 04:36:26 +0000 Subject: [csw-devel] SF.net SVN: gar:[13258] csw/mgar/pkg/gettext/trunk/Makefile Message-ID: Revision: 13258 http://gar.svn.sourceforge.net/gar/?rev=13258&view=rev Author: bdwalton Date: 2011-02-12 04:36:25 +0000 (Sat, 12 Feb 2011) Log Message: ----------- make the transitional runtime package depend on the data package Modified Paths: -------------- csw/mgar/pkg/gettext/trunk/Makefile Modified: csw/mgar/pkg/gettext/trunk/Makefile =================================================================== --- csw/mgar/pkg/gettext/trunk/Makefile 2011-02-12 04:18:18 UTC (rev 13257) +++ csw/mgar/pkg/gettext/trunk/Makefile 2011-02-12 04:36:25 UTC (rev 13258) @@ -75,6 +75,7 @@ RUNTIME_DEP_PKGS_CSWggettextrt += CSWlibintl2 RUNTIME_DEP_PKGS_CSWggettextrt += CSWlibintl3 RUNTIME_DEP_PKGS_CSWggettextrt += CSWlibintl8 +RUNTIME_DEP_PKGS_CSWggettextrt += CSWggettext-data RUNTIME_DEP_PKGS_CSWlibasprintf0 += CSWggettext-data RUNTIME_DEP_PKGS_CSWlibgettextlib0-14-1 += CSWiconv RUNTIME_DEP_PKGS_CSWlibgettextlib0-14-1 += CSWlibintl3 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From chninkel at users.sourceforge.net Sat Feb 12 14:28:27 2011 From: chninkel at users.sourceforge.net (chninkel at users.sourceforge.net) Date: Sat, 12 Feb 2011 13:28:27 +0000 Subject: [csw-devel] SF.net SVN: gar:[13259] csw/mgar/pkg/openssl/trunk/Makefile Message-ID: Revision: 13259 http://gar.svn.sourceforge.net/gar/?rev=13259&view=rev Author: chninkel Date: 2011-02-12 13:28:27 +0000 (Sat, 12 Feb 2011) Log Message: ----------- openssl: added overrides for old libraries Modified Paths: -------------- csw/mgar/pkg/openssl/trunk/Makefile Modified: csw/mgar/pkg/openssl/trunk/Makefile =================================================================== --- csw/mgar/pkg/openssl/trunk/Makefile 2011-02-12 04:36:25 UTC (rev 13258) +++ csw/mgar/pkg/openssl/trunk/Makefile 2011-02-12 13:28:27 UTC (rev 13259) @@ -95,7 +95,14 @@ CHECKPKG_OVERRIDES_CSWossldevel += file-with-bad-content|/usr/local|root/opt/csw/share/doc/openssl_devel/INSTALL CHECKPKG_OVERRIDES_CSWossldevel += file-with-bad-content|/usr/local|root/opt/csw/share/doc/openssl_devel/FAQ +# Sorry, I will not rebuild the old libraries +CHECKPKG_OVERRIDES_CSWosslrt += file-with-bad-content|/export/home|root/opt/csw/lib/libssl.so.0.9.7 +CHECKPKG_OVERRIDES_CSWosslrt += file-with-bad-content|/export/home|root/opt/csw/lib/libcrypto.so.0.9.7 +CHECKPKG_OVERRIDES_CSWosslrt += file-with-bad-content|/export/home|root/opt/csw/lib/pentium_pro/libssl.so.0.9.7 +CHECKPKG_OVERRIDES_CSWosslrt += file-with-bad-content|/export/home|root/opt/csw/lib/pentium_pro/libcrypto.so.0.9.7 + + ###### Upstream and opencsw files information ####### MASTER_SITES = http://www.openssl.org/source/ http://openssl.org/news/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From maciej at opencsw.org Sat Feb 12 14:46:42 2011 From: maciej at opencsw.org (=?UTF-8?Q?Maciej_Blizi=C5=84ski?=) Date: Sat, 12 Feb 2011 13:46:42 +0000 Subject: [csw-devel] SF.net SVN: gar:[13259] csw/mgar/pkg/openssl/trunk/Makefile In-Reply-To: References: Message-ID: Hi Yann, 2011/2/12 : > +# Sorry, I will not rebuild the old libraries > +CHECKPKG_OVERRIDES_CSWosslrt += file-with-bad-content|/export/home|root/opt/csw/lib/libssl.so.0.9.7 > +CHECKPKG_OVERRIDES_CSWosslrt += file-with-bad-content|/export/home|root/opt/csw/lib/libcrypto.so.0.9.7 > +CHECKPKG_OVERRIDES_CSWosslrt += file-with-bad-content|/export/home|root/opt/csw/lib/pentium_pro/libssl.so.0.9.7 > +CHECKPKG_OVERRIDES_CSWosslrt += file-with-bad-content|/export/home|root/opt/csw/lib/pentium_pro/libcrypto.so.0.9.7 Fair enough. Even better, you can split them off and never have to resubmit them again. From bwalton at opencsw.org Sat Feb 12 15:36:50 2011 From: bwalton at opencsw.org (Ben Walton) Date: Sat, 12 Feb 2011 09:36:50 -0500 Subject: [csw-devel] SF.net SVN: gar:[13259] csw/mgar/pkg/openssl/trunk/Makefile In-Reply-To: References: Message-ID: <1297521340-sup-3209@pinkfloyd.chass.utoronto.ca> Excerpts from Maciej Blizi?ski's message of Sat Feb 12 08:46:42 -0500 2011: Hi Yann, > 2011/2/12 : > > +# Sorry, I will not rebuild the old libraries > > +CHECKPKG_OVERRIDES_CSWosslrt += file-with-bad-content|/export/home|root/opt/csw/lib/libssl.so.0.9.7 > > +CHECKPKG_OVERRIDES_CSWosslrt += file-with-bad-content|/export/home|root/opt/csw/lib/libcrypto.so.0.9.7 > > +CHECKPKG_OVERRIDES_CSWosslrt += file-with-bad-content|/export/home|root/opt/csw/lib/pentium_pro/libssl.so.0.9.7 > > +CHECKPKG_OVERRIDES_CSWosslrt += file-with-bad-content|/export/home|root/opt/csw/lib/pentium_pro/libcrypto.so.0.9.7 > > Fair enough. Even better, you can split them off and never have to > resubmit them again. This would get my vote too. It's what I'm doing with the gettext libs as well. After the upcoming release, I'll never need to drag them forward again... Thanks -Ben -- Ben Walton Systems Programmer - CHASS University of Toronto C:416.407.5610 | W:416.978.4302 From bonivart at users.sourceforge.net Sat Feb 12 15:38:06 2011 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Sat, 12 Feb 2011 14:38:06 +0000 Subject: [csw-devel] SF.net SVN: gar:[13260] csw/mgar/pkg/pkgutil/trunk Message-ID: Revision: 13260 http://gar.svn.sourceforge.net/gar/?rev=13260&view=rev Author: bonivart Date: 2011-02-12 14:38:06 +0000 (Sat, 12 Feb 2011) Log Message: ----------- pkgutil: 2.3 Modified Paths: -------------- csw/mgar/pkg/pkgutil/trunk/Makefile csw/mgar/pkg/pkgutil/trunk/checksums csw/mgar/pkg/pkgutil/trunk/files/CSWpkgutil.preremove Modified: csw/mgar/pkg/pkgutil/trunk/Makefile =================================================================== --- csw/mgar/pkg/pkgutil/trunk/Makefile 2011-02-12 13:28:27 UTC (rev 13259) +++ csw/mgar/pkg/pkgutil/trunk/Makefile 2011-02-12 14:38:06 UTC (rev 13260) @@ -2,7 +2,7 @@ # svn co -r 9999 https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 gar NAME = pkgutil -VERSION = 2.3b2 +VERSION = 2.3 GARVERSION = $(VERSION) CATEGORIES = utils Modified: csw/mgar/pkg/pkgutil/trunk/checksums =================================================================== --- csw/mgar/pkg/pkgutil/trunk/checksums 2011-02-12 13:28:27 UTC (rev 13259) +++ csw/mgar/pkg/pkgutil/trunk/checksums 2011-02-12 14:38:06 UTC (rev 13260) @@ -1,8 +1,8 @@ a16c6f81bc537d6172fd65d8da1aeecc CSWpkgutil.gspec 2ce2761890775e7f658ed8233fda0148 CSWpkgutil.postinstall -832c616f6ca7a3030d21bb61d9c62e42 CSWpkgutil.preremove +9f8c677877f3c86c41dc3955c9c36ea0 CSWpkgutil.preremove ce3d565aaf32be17716a9869087dec5c CSWpkgutil.prototype b5fffa0be100ddbb7262ce3a0a4e3bb7 build_sun_catalog.py 7ad27336f90e73da3254a61d91025ee5 cswcatalog 3a6b789b3d5e05f41d2363dd26a92acf opencsw.py -84b84029f721981edb741e503d03e59d pkgutil-2.3b2.zip +9c643c7b65ce4a241b523f360324c8f2 pkgutil-2.3.zip Modified: csw/mgar/pkg/pkgutil/trunk/files/CSWpkgutil.preremove =================================================================== --- csw/mgar/pkg/pkgutil/trunk/files/CSWpkgutil.preremove 2011-02-12 13:28:27 UTC (rev 13259) +++ csw/mgar/pkg/pkgutil/trunk/files/CSWpkgutil.preremove 2011-02-12 14:38:06 UTC (rev 13260) @@ -2,7 +2,8 @@ ETC1=$PKG_INSTALL_ROOT/opt/csw/etc ETC2=$PKG_INSTALL_ROOT/etc/opt/csw -VAR=$PKG_INSTALL_ROOT/var/opt/csw/pkgutil +VAR1=$PKG_INSTALL_ROOT/opt/csw/var/pkgutil +VAR2=$PKG_INSTALL_ROOT/var/opt/csw/pkgutil echo @@ -20,11 +21,11 @@ /bin/rm $ETC2/pkgutil.conf fi -if [ "`cmp "$VAR/admin" "$VAR/admin.CSW"`" ]; then +if [ "`cmp "$VAR2/admin" "$VAR1/admin.CSW"`" ]; then echo "/var/opt/csw/pkgutil/admin modified, will not remove it." else - echo "Removing unmodified $VAR/admin." - /bin/rm $VAR/admin + echo "Removing unmodified /var/opt/csw/pkgutil/admin." + /bin/rm $VAR2/admin fi exit 0 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From chninkel at users.sourceforge.net Sat Feb 12 16:27:07 2011 From: chninkel at users.sourceforge.net (chninkel at users.sourceforge.net) Date: Sat, 12 Feb 2011 15:27:07 +0000 Subject: [csw-devel] SF.net SVN: gar:[13261] csw/mgar/pkg/cyrus_imapd/trunk/Makefile Message-ID: Revision: 13261 http://gar.svn.sourceforge.net/gar/?rev=13261&view=rev Author: chninkel Date: 2011-02-12 15:27:07 +0000 (Sat, 12 Feb 2011) Log Message: ----------- cyrus_imapd: fixed some paths Modified Paths: -------------- csw/mgar/pkg/cyrus_imapd/trunk/Makefile Modified: csw/mgar/pkg/cyrus_imapd/trunk/Makefile =================================================================== --- csw/mgar/pkg/cyrus_imapd/trunk/Makefile 2011-02-12 14:38:06 UTC (rev 13260) +++ csw/mgar/pkg/cyrus_imapd/trunk/Makefile 2011-02-12 15:27:07 UTC (rev 13261) @@ -84,7 +84,22 @@ # Don't how to properly solve this now CHECKPKG_OVERRIDES_CSWcyrusimapd += file-collision|/opt/csw/share/man/man8/imapd.8|CSWcourierimap|CSWcyrusimapd +# it's just the path to the dtd file +CHECKPKG_OVERRIDES_CSWcyrusimapd += file-with-bad-content|/usr/share|root/var/opt/csw/svc/manifest/network/cswcyrus.xml +# Just a reference to gdb path given in a example +CHECKPKG_OVERRIDES_CSWcyrusimapd += file-with-bad-content|/usr/local|root/opt/csw/share/doc/cyrus_imapd/man/imapd.conf.5.html +CHECKPKG_OVERRIDES_CSWcyrusimapd += file-with-bad-content|/usr/local|root/opt/csw/share/man/man5/imapd.conf.5 + +# just examples +CHECKPKG_OVERRIDES_CSWcyrusimapd += file-with-bad-content|/usr/local|root/opt/csw/share/doc/cyrus_imapd/install-configure.html +CHECKPKG_OVERRIDES_CSWcyrusimapd += file-with-bad-content|/usr/local|root/opt/csw/share/doc/cyrus_imapd/install-compile.html +CHECKPKG_OVERRIDES_CSWcyrusimapd += file-with-bad-content|/usr/local|root/opt/csw/share/doc/cyrus_imapd/install-testing.html +CHECKPKG_OVERRIDES_CSWcyrusimapd += file-with-bad-content|/usr/local|root/opt/csw/share/doc/cyrus_imapd/text/install-configure +CHECKPKG_OVERRIDES_CSWcyrusimapd += file-with-bad-content|/usr/local|root/opt/csw/share/doc/cyrus_imapd/text/install-testing +CHECKPKG_OVERRIDES_CSWcyrusimapd += file-with-bad-content|/usr/local|root/opt/csw/share/doc/cyrus_imapd/text/install-compile + + ###### Upstream and opencsw files information ####### MASTER_SITES = ftp://ftp.cyrusimap.org/cyrus-imapd/ http://email.uoa.gr/download/cyrus/cyrus-imapd-$(VERSION)/ http://www.vx.sk/download/patches/cyrus-imapd/ @@ -213,7 +228,7 @@ mkdir -p $(PKGROOT)/$(prefix)/share/doc/cyrus_imapd @$(MAKECOOKIE) -post-merge: fix2build install-tools cyrus-rename install-docs libexec-in-sbin install-cyrus-directory install-additional-files +post-merge: install-tools cyrus-rename install-docs libexec-in-sbin install-cyrus-directory install-additional-files fix2build # Let's install the files @@ -258,18 +273,20 @@ chmod -R u+w "$(PKGROOT)/" # let's remove pod files - gfind $(PKGROOT) -name "perllocal.pod" -exec rm '{}' ';' + gfind $(PKGROOT) -name "perllocal.pod" -delete # and CVS directories gfind $(PKGROOT) -depth -type d -name "CVS" -exec rm -rf '{}' ';' + # and orig files + gfind $(PKGROOT) -name "*.orig" -delete # We remove fetchnews man and doc page as we did not build nntp support # and as it clashes with leafnode rm -f $(PKGROOT)$(mandir)/man8/fetchnews.8 rm -f $(PKGROOT)$(docdir)/cyrus_imapd/man/fetchnews.8.html - - @$(MAKECOOKIE) + gfind /home/yann/mgar/cyrus_imapd/trunk -name "*.orig" -delete + # we rename some tools with too generic names cyrus-rename: mv $(PKGROOT)/$(sbindir)/mkimap $(PKGROOT)/$(sbindir)/mkdirs @@ -286,8 +303,11 @@ ginstall -D $(WORKDIR_FIRSTMOD)/$$PKG.changelog.CSW $(PKGROOT)/$(docdir)/$$PKG/changelog.CSW; \ ginstall -D $(WORKDIR_FIRSTMOD)/README.CSW $(PKGROOT)/$(docdir)/$$PKG/README.CSW; \ done ) + # Fix path + gsed -i -e 's,/usr/local/cyrus/bin,$(sbindir),' $(PKGROOT)$(docdir)/cyrus_imapd/internal/replication_examples.html @$(MAKECOOKIE) + # we install binary under tools as part of the package install-tools: cp -r $(WORKSRC_FIRSTMOD)/tools/* $(PKGROOT)$(sbindir) @@ -296,9 +316,10 @@ rm -f $(PKGROOT)$(sbindir)/$$F; \ done - # we want perl scripts to use opencsw perl + # we want perl scripts to use opencsw perl and paths perl -pi -e 's/exec\s+perl/exec \/opt\/csw\/bin\/perl/g' $(PKGROOT)$(sbindir)/* $(PKGROOT)$(bindir)/* ( for FILE in translatesieve undohash arbitronsort; do \ - perl -pi -e 's/^#!\/usr\/(local\/)?bin\/perl/#!\/usr\/bin\/perl/' $(PKGROOT)$(sbindir)/$$FILE; \ + perl -pi -e 's/^#!\/usr\/(local\/)?bin\/perl/#!\/opt\/csw\/bin\/perl/' $(PKGROOT)$(sbindir)/$$FILE; \ done ) + gsed -i -e 's,/usr/local/etc/,/etc/opt/csw/,' $(PKGROOT)$(libdir)/perl/csw/Cyrus/IMAP/Shell.pm @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From chninkel at users.sourceforge.net Sat Feb 12 17:58:13 2011 From: chninkel at users.sourceforge.net (chninkel at users.sourceforge.net) Date: Sat, 12 Feb 2011 16:58:13 +0000 Subject: [csw-devel] SF.net SVN: gar:[13262] csw/mgar/pkg/openssh/trunk Message-ID: Revision: 13262 http://gar.svn.sourceforge.net/gar/?rev=13262&view=rev Author: chninkel Date: 2011-02-12 16:58:13 +0000 (Sat, 12 Feb 2011) Log Message: ----------- openssh: updated to 5.8p1 Modified Paths: -------------- csw/mgar/pkg/openssh/trunk/Makefile csw/mgar/pkg/openssh/trunk/checksums csw/mgar/pkg/openssh/trunk/files/changelog.CSW Modified: csw/mgar/pkg/openssh/trunk/Makefile =================================================================== --- csw/mgar/pkg/openssh/trunk/Makefile 2011-02-12 15:27:07 UTC (rev 13261) +++ csw/mgar/pkg/openssh/trunk/Makefile 2011-02-12 16:58:13 UTC (rev 13262) @@ -13,9 +13,9 @@ ###### Package information ####### NAME = openssh -VERSION = 5.6p1 -GSSKEX_PATCH_VERSION = $(VERSION) -GSSKEX_PATCH_DATE = 20100902 +VERSION = 5.8p1 +GSSKEX_PATCH_VERSION = 5.7p1 +GSSKEX_PATCH_DATE = 20110125 CATEGORIES = server DESCRIPTION = OpenSSH Secure Shell Modified: csw/mgar/pkg/openssh/trunk/checksums =================================================================== --- csw/mgar/pkg/openssh/trunk/checksums 2011-02-12 15:27:07 UTC (rev 13261) +++ csw/mgar/pkg/openssh/trunk/checksums 2011-02-12 16:58:13 UTC (rev 13262) @@ -1 +1,2 @@ -e6ee52e47c768bf0ec42a232b5d18fb0 openssh-5.6p1.tar.gz +c87201bfa710e0529afd4ecc7b419e73 openssh-5.7p1-gsskex-all-20110125.patch +86f5e1c23b4c4845f23b9b7b493fb53d openssh-5.8p1.tar.gz Modified: csw/mgar/pkg/openssh/trunk/files/changelog.CSW =================================================================== --- csw/mgar/pkg/openssh/trunk/files/changelog.CSW 2011-02-12 15:27:07 UTC (rev 13261) +++ csw/mgar/pkg/openssh/trunk/files/changelog.CSW 2011-02-12 16:58:13 UTC (rev 13262) @@ -1,3 +1,9 @@ +openssh (5.8p1,REV=2011.02.12) unstable + + * New upstream release. + + -- Yann Rouillard Sat, 12 Feb 2011 17:53:23 +0100 + openssh (5.6p1,REV=2010.12.19) unstable * New upstream release. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From chninkel at users.sourceforge.net Sat Feb 12 18:13:06 2011 From: chninkel at users.sourceforge.net (chninkel at users.sourceforge.net) Date: Sat, 12 Feb 2011 17:13:06 +0000 Subject: [csw-devel] SF.net SVN: gar:[13263] csw/mgar/pkg/openssh/trunk Message-ID: Revision: 13263 http://gar.svn.sourceforge.net/gar/?rev=13263&view=rev Author: chninkel Date: 2011-02-12 17:13:05 +0000 (Sat, 12 Feb 2011) Log Message: ----------- openssh: updated gss patch Modified Paths: -------------- csw/mgar/pkg/openssh/trunk/Makefile csw/mgar/pkg/openssh/trunk/checksums Added Paths: ----------- csw/mgar/pkg/openssh/trunk/files/openssh-5.8p1-gsskex-all-20110125.patch Modified: csw/mgar/pkg/openssh/trunk/Makefile =================================================================== --- csw/mgar/pkg/openssh/trunk/Makefile 2011-02-12 16:58:13 UTC (rev 13262) +++ csw/mgar/pkg/openssh/trunk/Makefile 2011-02-12 17:13:05 UTC (rev 13263) @@ -14,7 +14,7 @@ NAME = openssh VERSION = 5.8p1 -GSSKEX_PATCH_VERSION = 5.7p1 +GSSKEX_PATCH_VERSION = 5.8p1 GSSKEX_PATCH_DATE = 20110125 CATEGORIES = server Modified: csw/mgar/pkg/openssh/trunk/checksums =================================================================== --- csw/mgar/pkg/openssh/trunk/checksums 2011-02-12 16:58:13 UTC (rev 13262) +++ csw/mgar/pkg/openssh/trunk/checksums 2011-02-12 17:13:05 UTC (rev 13263) @@ -1,2 +1 @@ -c87201bfa710e0529afd4ecc7b419e73 openssh-5.7p1-gsskex-all-20110125.patch 86f5e1c23b4c4845f23b9b7b493fb53d openssh-5.8p1.tar.gz Added: csw/mgar/pkg/openssh/trunk/files/openssh-5.8p1-gsskex-all-20110125.patch =================================================================== --- csw/mgar/pkg/openssh/trunk/files/openssh-5.8p1-gsskex-all-20110125.patch (rev 0) +++ csw/mgar/pkg/openssh/trunk/files/openssh-5.8p1-gsskex-all-20110125.patch 2011-02-12 17:13:05 UTC (rev 13263) @@ -0,0 +1,3469 @@ +diff --speed-large-files --minimal -Nru openssh-5.8p1/ChangeLog.gssapi openssh-5.8p1.new/ChangeLog.gssapi +--- openssh-5.8p1/ChangeLog.gssapi 1970-01-01 01:00:00.000000000 +0100 ++++ openssh-5.8p1.new/ChangeLog.gssapi 2011-02-12 18:07:10.948345760 +0100 +@@ -0,0 +1,113 @@ ++20110101 ++ - Finally update for OpenSSH 5.6p1 ++ - Add GSSAPIServerIdentity option from Jim Basney ++ ++20100308 ++ - [ Makefile.in, key.c, key.h ] ++ Updates for OpenSSH 5.4p1 ++ - [ servconf.c ] ++ Include GSSAPI options in the sshd -T configuration dump, and flag ++ some older configuration options as being unsupported. Thanks to Colin ++ Watson. ++ - ++ ++20100124 ++ - [ sshconnect2.c ] ++ Adapt to deal with additional element in Authmethod structure. Thanks to ++ Colin Watson ++ ++20090615 ++ - [ gss-genr.c gss-serv.c kexgssc.c kexgsss.c monitor.c sshconnect2.c ++ sshd.c ] ++ Fix issues identified by Greg Hudson following a code review ++ Check return value of gss_indicate_mechs ++ Protect GSSAPI calls in monitor, so they can only be used if enabled ++ Check return values of bignum functions in key exchange ++ Use BN_clear_free to clear other side's DH value ++ Make ssh_gssapi_id_kex more robust ++ Only configure kex table pointers if GSSAPI is enabled ++ Don't leak mechanism list, or gss mechanism list ++ Cast data.length before printing ++ If serverkey isn't provided, use an empty string, rather than NULL ++ ++20090201 ++ - [ gss-genr.c gss-serv.c kex.h kexgssc.c readconf.c readconf.h ssh-gss.h ++ ssh_config.5 sshconnet2.c ] ++ Add support for the GSSAPIClientIdentity option, which allows the user ++ to specify which GSSAPI identity to use to contact a given server ++ ++20080404 ++ - [ gss-serv.c ] ++ Add code to actually implement GSSAPIStrictAcceptCheck, which had somehow ++ been omitted from a previous version of this patch. Reported by Borislav ++ Stoichkov ++ ++20070317 ++ - [ gss-serv-krb5.c ] ++ Remove C99ism, where new_ccname was being declared in the middle of a ++ function ++ ++20061220 ++ - [ servconf.c ] ++ Make default for GSSAPIStrictAcceptorCheck be Yes, to match previous, and ++ documented, behaviour. Reported by Dan Watson. ++ ++20060910 ++ - [ gss-genr.c kexgssc.c kexgsss.c kex.h monitor.c sshconnect2.c sshd.c ++ ssh-gss.h ] ++ add support for gss-group14-sha1 key exchange mechanisms ++ - [ gss-serv.c servconf.c servconf.h sshd_config sshd_config.5 ] ++ Add GSSAPIStrictAcceptorCheck option to allow the disabling of ++ acceptor principal checking on multi-homed machines. ++ ++ - [ sshd_config ssh_config ] ++ Add settings for GSSAPIKeyExchange and GSSAPITrustDNS to the sample ++ configuration files ++ - [ kexgss.c kegsss.c sshconnect2.c sshd.c ] ++ Code cleanup. Replace strlen/xmalloc/snprintf sequences with xasprintf() ++ Limit length of error messages displayed by client ++ ++20060909 ++ - [ gss-genr.c gss-serv.c ] ++ move ssh_gssapi_acquire_cred() and ssh_gssapi_server_ctx to be server ++ only, where they belong ++ ++ ++20060829 ++ - [ gss-serv-krb5.c ] ++ Fix CCAPI credentials cache name when creating KRB5CCNAME environment ++ variable ++ ++20060828 ++ - [ gss-genr.c ] ++ Avoid Heimdal context freeing problem ++ ++ ++20060818 ++ - [ gss-genr.c ssh-gss.h sshconnect2.c ] ++ Make sure that SPENGO is disabled ++ ++ ++20060421 ++ - [ gssgenr.c, sshconnect2.c ] ++ a few type changes (signed versus unsigned, int versus size_t) to ++ fix compiler errors/warnings ++ (from jbasney AT ncsa.uiuc.edu) ++ - [ kexgssc.c, sshconnect2.c ] ++ fix uninitialized variable warnings ++ (from jbasney AT ncsa.uiuc.edu) ++ - [ gssgenr.c ] ++ pass oid to gss_display_status (helpful when using GSSAPI mechglue) ++ (from jbasney AT ncsa.uiuc.edu) ++ ++ - [ gss-serv-krb5.c ] ++ #ifdef HAVE_GSSAPI_KRB5 should be #ifdef HAVE_GSSAPI_KRB5_H ++ (from jbasney AT ncsa.uiuc.edu) ++ ++ - [ readconf.c, readconf.h, ssh_config.5, sshconnect2.c ++ add client-side GssapiKeyExchange option ++ (from jbasney AT ncsa.uiuc.edu) ++ - [ sshconnect2.c ] ++ add support for GssapiTrustDns option for gssapi-with-mic ++ (from jbasney AT ncsa.uiuc.edu) ++ +diff --speed-large-files --minimal -Nru openssh-5.8p1/Makefile.in openssh-5.8p1.new/Makefile.in +--- openssh-5.8p1/Makefile.in 2011-02-04 01:42:13.000000000 +0100 ++++ openssh-5.8p1.new/Makefile.in 2011-02-12 18:07:10.990611445 +0100 +@@ -75,6 +75,7 @@ + atomicio.o key.o dispatch.o kex.o mac.o uidswap.o uuencode.o misc.o \ + monitor_fdpass.o rijndael.o ssh-dss.o ssh-ecdsa.o ssh-rsa.o dh.o \ + kexdh.o kexgex.o kexdhc.o kexgexc.o bufec.o kexecdh.o kexecdhc.o \ ++ kexgssc.o \ + msg.o progressmeter.o dns.o entropy.o gss-genr.o umac.o jpake.o \ + schnorr.o ssh-pkcs11.o + +@@ -91,7 +92,7 @@ + auth2-none.o auth2-passwd.o auth2-pubkey.o auth2-jpake.o \ + monitor_mm.o monitor.o monitor_wrap.o kexdhs.o kexgexs.o kexecdhs.o \ + auth-krb5.o \ +- auth2-gss.o gss-serv.o gss-serv-krb5.o \ ++ auth2-gss.o gss-serv.o gss-serv-krb5.o kexgsss.o\ + loginrec.o auth-pam.o auth-shadow.o auth-sia.o md5crypt.o \ + sftp-server.o sftp-common.o \ + roaming_common.o roaming_serv.o +diff --speed-large-files --minimal -Nru openssh-5.8p1/Makefile.in.orig openssh-5.8p1.new/Makefile.in.orig +--- openssh-5.8p1/Makefile.in.orig 1970-01-01 01:00:00.000000000 +0100 ++++ openssh-5.8p1.new/Makefile.in.orig 2011-02-04 01:42:13.000000000 +0100 +@@ -0,0 +1,469 @@ ++# $Id: Makefile.in,v 1.320.4.1 2011/02/04 00:42:13 djm Exp $ ++ ++# uncomment if you run a non bourne compatable shell. Ie. csh ++#SHELL = @SH@ ++ ++AUTORECONF=autoreconf ++ ++prefix=@prefix@ ++exec_prefix=@exec_prefix@ ++bindir=@bindir@ ++sbindir=@sbindir@ ++libexecdir=@libexecdir@ ++datadir=@datadir@ ++datarootdir=@datarootdir@ ++mandir=@mandir@ ++mansubdir=@mansubdir@ ++sysconfdir=@sysconfdir@ ++piddir=@piddir@ ++srcdir=@srcdir@ ++top_srcdir=@top_srcdir@ ++ ++DESTDIR= ++VPATH=@srcdir@ ++SSH_PROGRAM=@bindir@/ssh ++ASKPASS_PROGRAM=$(libexecdir)/ssh-askpass ++SFTP_SERVER=$(libexecdir)/sftp-server ++SSH_KEYSIGN=$(libexecdir)/ssh-keysign ++SSH_PKCS11_HELPER=$(libexecdir)/ssh-pkcs11-helper ++RAND_HELPER=$(libexecdir)/ssh-rand-helper ++PRIVSEP_PATH=@PRIVSEP_PATH@ ++SSH_PRIVSEP_USER=@SSH_PRIVSEP_USER@ ++STRIP_OPT=@STRIP_OPT@ ++ ++PATHS= -DSSHDIR=\"$(sysconfdir)\" \ ++ -D_PATH_SSH_PROGRAM=\"$(SSH_PROGRAM)\" \ ++ -D_PATH_SSH_ASKPASS_DEFAULT=\"$(ASKPASS_PROGRAM)\" \ ++ -D_PATH_SFTP_SERVER=\"$(SFTP_SERVER)\" \ ++ -D_PATH_SSH_KEY_SIGN=\"$(SSH_KEYSIGN)\" \ ++ -D_PATH_SSH_PKCS11_HELPER=\"$(SSH_PKCS11_HELPER)\" \ ++ -D_PATH_SSH_PIDDIR=\"$(piddir)\" \ ++ -D_PATH_PRIVSEP_CHROOT_DIR=\"$(PRIVSEP_PATH)\" \ ++ -DSSH_RAND_HELPER=\"$(RAND_HELPER)\" ++ ++CC=@CC@ ++LD=@LD@ ++CFLAGS=@CFLAGS@ ++CPPFLAGS=-I. -I$(srcdir) @CPPFLAGS@ $(PATHS) @DEFS@ ++LIBS=@LIBS@ ++SSHLIBS=@SSHLIBS@ ++SSHDLIBS=@SSHDLIBS@ ++LIBEDIT=@LIBEDIT@ ++AR=@AR@ ++AWK=@AWK@ ++RANLIB=@RANLIB@ ++INSTALL=@INSTALL@ ++PERL=@PERL@ ++SED=@SED@ ++ENT=@ENT@ ++XAUTH_PATH=@XAUTH_PATH@ ++LDFLAGS=-L. -Lopenbsd-compat/ @LDFLAGS@ ++EXEEXT=@EXEEXT@ ++MANFMT=@MANFMT@ ++ ++INSTALL_SSH_PRNG_CMDS=@INSTALL_SSH_PRNG_CMDS@ ++INSTALL_SSH_RAND_HELPER=@INSTALL_SSH_RAND_HELPER@ ++ ++TARGETS=ssh$(EXEEXT) sshd$(EXEEXT) ssh-add$(EXEEXT) ssh-keygen$(EXEEXT) ssh-keyscan${EXEEXT} ssh-keysign${EXEEXT} ssh-pkcs11-helper$(EXEEXT) ssh-agent$(EXEEXT) scp$(EXEEXT) ssh-rand-helper${EXEEXT} sftp-server$(EXEEXT) sftp$(EXEEXT) ++ ++LIBSSH_OBJS=acss.o authfd.o authfile.o bufaux.o bufbn.o buffer.o \ ++ canohost.o channels.o cipher.o cipher-acss.o cipher-aes.o \ ++ cipher-bf1.o cipher-ctr.o cipher-3des1.o cleanup.o \ ++ compat.o compress.o crc32.o deattack.o fatal.o hostfile.o \ ++ log.o match.o md-sha256.o moduli.o nchan.o packet.o \ ++ readpass.o rsa.o ttymodes.o xmalloc.o addrmatch.o \ ++ atomicio.o key.o dispatch.o kex.o mac.o uidswap.o uuencode.o misc.o \ ++ monitor_fdpass.o rijndael.o ssh-dss.o ssh-ecdsa.o ssh-rsa.o dh.o \ ++ kexdh.o kexgex.o kexdhc.o kexgexc.o bufec.o kexecdh.o kexecdhc.o \ ++ msg.o progressmeter.o dns.o entropy.o gss-genr.o umac.o jpake.o \ ++ schnorr.o ssh-pkcs11.o ++ ++SSHOBJS= ssh.o readconf.o clientloop.o sshtty.o \ ++ sshconnect.o sshconnect1.o sshconnect2.o mux.o \ ++ roaming_common.o roaming_client.o ++ ++SSHDOBJS=sshd.o auth-rhosts.o auth-passwd.o auth-rsa.o auth-rh-rsa.o \ ++ audit.o audit-bsm.o audit-linux.o platform.o \ ++ sshpty.o sshlogin.o servconf.o serverloop.o \ ++ auth.o auth1.o auth2.o auth-options.o session.o \ ++ auth-chall.o auth2-chall.o groupaccess.o \ ++ auth-skey.o auth-bsdauth.o auth2-hostbased.o auth2-kbdint.o \ ++ auth2-none.o auth2-passwd.o auth2-pubkey.o auth2-jpake.o \ ++ monitor_mm.o monitor.o monitor_wrap.o kexdhs.o kexgexs.o kexecdhs.o \ ++ auth-krb5.o \ ++ auth2-gss.o gss-serv.o gss-serv-krb5.o \ ++ loginrec.o auth-pam.o auth-shadow.o auth-sia.o md5crypt.o \ ++ sftp-server.o sftp-common.o \ ++ roaming_common.o roaming_serv.o ++ ++MANPAGES = moduli.5.out scp.1.out ssh-add.1.out ssh-agent.1.out ssh-keygen.1.out ssh-keyscan.1.out ssh.1.out sshd.8.out sftp-server.8.out sftp.1.out ssh-rand-helper.8.out ssh-keysign.8.out ssh-pkcs11-helper.8.out sshd_config.5.out ssh_config.5.out ++MANPAGES_IN = moduli.5 scp.1 ssh-add.1 ssh-agent.1 ssh-keygen.1 ssh-keyscan.1 ssh.1 sshd.8 sftp-server.8 sftp.1 ssh-rand-helper.8 ssh-keysign.8 ssh-pkcs11-helper.8 sshd_config.5 ssh_config.5 ++MANTYPE = @MANTYPE@ ++ ++CONFIGFILES=sshd_config.out ssh_config.out moduli.out ++CONFIGFILES_IN=sshd_config ssh_config moduli ++ ++PATHSUBS = \ ++ -e 's|/etc/ssh/ssh_prng_cmds|$(sysconfdir)/ssh_prng_cmds|g' \ ++ -e 's|/etc/ssh/ssh_config|$(sysconfdir)/ssh_config|g' \ ++ -e 's|/etc/ssh/ssh_known_hosts|$(sysconfdir)/ssh_known_hosts|g' \ ++ -e 's|/etc/ssh/sshd_config|$(sysconfdir)/sshd_config|g' \ ++ -e 's|/usr/libexec|$(libexecdir)|g' \ ++ -e 's|/etc/shosts.equiv|$(sysconfdir)/shosts.equiv|g' \ ++ -e 's|/etc/ssh/ssh_host_key|$(sysconfdir)/ssh_host_key|g' \ ++ -e 's|/etc/ssh/ssh_host_ecdsa_key|$(sysconfdir)/ssh_host_ecdsa_key|g' \ ++ -e 's|/etc/ssh/ssh_host_dsa_key|$(sysconfdir)/ssh_host_dsa_key|g' \ ++ -e 's|/etc/ssh/ssh_host_rsa_key|$(sysconfdir)/ssh_host_rsa_key|g' \ ++ -e 's|/var/run/sshd.pid|$(piddir)/sshd.pid|g' \ ++ -e 's|/etc/moduli|$(sysconfdir)/moduli|g' \ ++ -e 's|/etc/ssh/moduli|$(sysconfdir)/moduli|g' \ ++ -e 's|/etc/ssh/sshrc|$(sysconfdir)/sshrc|g' \ ++ -e 's|/usr/X11R6/bin/xauth|$(XAUTH_PATH)|g' \ ++ -e 's|/var/empty|$(PRIVSEP_PATH)|g' \ ++ -e 's|/usr/bin:/bin:/usr/sbin:/sbin|@user_path@|g' ++ ++FIXPATHSCMD = $(SED) $(PATHSUBS) ++ ++all: $(CONFIGFILES) ssh_prng_cmds.out $(MANPAGES) $(TARGETS) ++ ++$(LIBSSH_OBJS): Makefile.in config.h ++$(SSHOBJS): Makefile.in config.h ++$(SSHDOBJS): Makefile.in config.h ++ ++.c.o: ++ $(CC) $(CFLAGS) $(CPPFLAGS) -c $< ++ ++LIBCOMPAT=openbsd-compat/libopenbsd-compat.a ++$(LIBCOMPAT): always ++ (cd openbsd-compat && $(MAKE)) ++always: ++ ++libssh.a: $(LIBSSH_OBJS) ++ $(AR) rv $@ $(LIBSSH_OBJS) ++ $(RANLIB) $@ ++ ++ssh$(EXEEXT): $(LIBCOMPAT) libssh.a $(SSHOBJS) ++ $(LD) -o $@ $(SSHOBJS) $(LDFLAGS) -lssh -lopenbsd-compat $(SSHLIBS) $(LIBS) ++ ++sshd$(EXEEXT): libssh.a $(LIBCOMPAT) $(SSHDOBJS) ++ $(LD) -o $@ $(SSHDOBJS) $(LDFLAGS) -lssh -lopenbsd-compat $(SSHDLIBS) $(LIBS) ++ ++scp$(EXEEXT): $(LIBCOMPAT) libssh.a scp.o progressmeter.o ++ $(LD) -o $@ scp.o progressmeter.o bufaux.o $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS) ++ ++ssh-add$(EXEEXT): $(LIBCOMPAT) libssh.a ssh-add.o ++ $(LD) -o $@ ssh-add.o $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS) ++ ++ssh-agent$(EXEEXT): $(LIBCOMPAT) libssh.a ssh-agent.o ssh-pkcs11-client.o ++ $(LD) -o $@ ssh-agent.o ssh-pkcs11-client.o $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS) ++ ++ssh-keygen$(EXEEXT): $(LIBCOMPAT) libssh.a ssh-keygen.o ++ $(LD) -o $@ ssh-keygen.o $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS) ++ ++ssh-keysign$(EXEEXT): $(LIBCOMPAT) libssh.a ssh-keysign.o roaming_dummy.o readconf.o ++ $(LD) -o $@ ssh-keysign.o readconf.o roaming_dummy.o $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS) ++ ++ssh-pkcs11-helper$(EXEEXT): $(LIBCOMPAT) libssh.a ssh-pkcs11-helper.o ssh-pkcs11.o ++ $(LD) -o $@ ssh-pkcs11-helper.o ssh-pkcs11.o $(LDFLAGS) -lssh -lopenbsd-compat -lssh -lopenbsd-compat $(LIBS) ++ ++ssh-keyscan$(EXEEXT): $(LIBCOMPAT) libssh.a ssh-keyscan.o roaming_dummy.o ++ $(LD) -o $@ ssh-keyscan.o roaming_dummy.o $(LDFLAGS) -lssh -lopenbsd-compat -lssh $(LIBS) ++ ++sftp-server$(EXEEXT): $(LIBCOMPAT) libssh.a sftp.o sftp-common.o sftp-server.o sftp-server-main.o ++ $(LD) -o $@ sftp-server.o sftp-common.o sftp-server-main.o $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS) ++ ++sftp$(EXEEXT): $(LIBCOMPAT) libssh.a sftp.o sftp-client.o sftp-common.o sftp-glob.o progressmeter.o ++ $(LD) -o $@ progressmeter.o sftp.o sftp-client.o sftp-common.o sftp-glob.o $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS) $(LIBEDIT) ++ ++ssh-rand-helper${EXEEXT}: $(LIBCOMPAT) libssh.a ssh-rand-helper.o ++ $(LD) -o $@ ssh-rand-helper.o $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS) ++ ++# test driver for the loginrec code - not built by default ++logintest: logintest.o $(LIBCOMPAT) libssh.a loginrec.o ++ $(LD) -o $@ logintest.o $(LDFLAGS) loginrec.o -lopenbsd-compat -lssh $(LIBS) ++ ++$(MANPAGES): $(MANPAGES_IN) ++ if test "$(MANTYPE)" = "cat"; then \ ++ manpage=$(srcdir)/`echo $@ | sed 's/\.[1-9]\.out$$/\.0/'`; \ ++ else \ ++ manpage=$(srcdir)/`echo $@ | sed 's/\.out$$//'`; \ ++ fi; \ ++ if test "$(MANTYPE)" = "man"; then \ ++ $(FIXPATHSCMD) $${manpage} | $(AWK) -f $(srcdir)/mdoc2man.awk > $@; \ ++ else \ ++ $(FIXPATHSCMD) $${manpage} > $@; \ ++ fi ++ ++$(CONFIGFILES): $(CONFIGFILES_IN) ++ conffile=`echo $@ | sed 's/.out$$//'`; \ ++ $(FIXPATHSCMD) $(srcdir)/$${conffile} > $@ ++ ++ssh_prng_cmds.out: ssh_prng_cmds ++ if test ! -z "$(INSTALL_SSH_PRNG_CMDS)"; then \ ++ $(PERL) $(srcdir)/fixprogs ssh_prng_cmds $(ENT); \ ++ fi ++ ++# fake rule to stop make trying to compile moduli.o into a binary "moduli.o" ++moduli: ++ echo ++ ++clean: regressclean ++ rm -f *.o *.a $(TARGETS) logintest config.cache config.log ++ rm -f *.out core survey ++ (cd openbsd-compat && $(MAKE) clean) ++ ++distclean: regressclean ++ rm -f *.o *.a $(TARGETS) logintest config.cache config.log ++ rm -f *.out core opensshd.init openssh.xml ++ rm -f Makefile buildpkg.sh config.h config.status ssh_prng_cmds ++ rm -f survey.sh openbsd-compat/regress/Makefile *~ ++ rm -rf autom4te.cache ++ (cd openbsd-compat && $(MAKE) distclean) ++ if test -d pkg ; then \ ++ rm -fr pkg ; \ ++ fi ++ ++veryclean: distclean ++ rm -f configure config.h.in *.0 ++ ++mrproper: veryclean ++ ++realclean: veryclean ++ ++catman-do: ++ @for f in $(MANPAGES_IN) ; do \ ++ base=`echo $$f | sed 's/\..*$$//'` ; \ ++ echo "$$f -> $$base.0" ; \ ++ $(MANFMT) $$f | cat -v | sed -e 's/.\^H//g' \ ++ >$$base.0 ; \ ++ done ++ ++distprep: catman-do ++ $(AUTORECONF) ++ -rm -rf autom4te.cache ++ ++install: $(CONFIGFILES) ssh_prng_cmds.out $(MANPAGES) $(TARGETS) install-files install-sysconf host-key check-config ++install-nokeys: $(CONFIGFILES) ssh_prng_cmds.out $(MANPAGES) $(TARGETS) install-files install-sysconf ++install-nosysconf: $(CONFIGFILES) ssh_prng_cmds.out $(MANPAGES) $(TARGETS) install-files ++ ++check-config: ++ -$(DESTDIR)$(sbindir)/sshd -t -f $(DESTDIR)$(sysconfdir)/sshd_config ++ ++install-files: ++ $(srcdir)/mkinstalldirs $(DESTDIR)$(bindir) ++ $(srcdir)/mkinstalldirs $(DESTDIR)$(sbindir) ++ $(srcdir)/mkinstalldirs $(DESTDIR)$(mandir) ++ $(srcdir)/mkinstalldirs $(DESTDIR)$(mandir)/$(mansubdir)1 ++ $(srcdir)/mkinstalldirs $(DESTDIR)$(mandir)/$(mansubdir)5 ++ $(srcdir)/mkinstalldirs $(DESTDIR)$(mandir)/$(mansubdir)8 ++ $(srcdir)/mkinstalldirs $(DESTDIR)$(libexecdir) ++ (umask 022 ; $(srcdir)/mkinstalldirs $(DESTDIR)$(PRIVSEP_PATH)) ++ $(INSTALL) -m 0755 $(STRIP_OPT) ssh$(EXEEXT) $(DESTDIR)$(bindir)/ssh$(EXEEXT) ++ $(INSTALL) -m 0755 $(STRIP_OPT) scp$(EXEEXT) $(DESTDIR)$(bindir)/scp$(EXEEXT) ++ $(INSTALL) -m 0755 $(STRIP_OPT) ssh-add$(EXEEXT) $(DESTDIR)$(bindir)/ssh-add$(EXEEXT) ++ $(INSTALL) -m 0755 $(STRIP_OPT) ssh-agent$(EXEEXT) $(DESTDIR)$(bindir)/ssh-agent$(EXEEXT) ++ $(INSTALL) -m 0755 $(STRIP_OPT) ssh-keygen$(EXEEXT) $(DESTDIR)$(bindir)/ssh-keygen$(EXEEXT) ++ $(INSTALL) -m 0755 $(STRIP_OPT) ssh-keyscan$(EXEEXT) $(DESTDIR)$(bindir)/ssh-keyscan$(EXEEXT) ++ $(INSTALL) -m 0755 $(STRIP_OPT) sshd$(EXEEXT) $(DESTDIR)$(sbindir)/sshd$(EXEEXT) ++ if test ! -z "$(INSTALL_SSH_RAND_HELPER)" ; then \ ++ $(INSTALL) -m 0755 $(STRIP_OPT) ssh-rand-helper$(EXEEXT) $(DESTDIR)$(libexecdir)/ssh-rand-helper$(EXEEXT) ; \ ++ fi ++ $(INSTALL) -m 4711 $(STRIP_OPT) ssh-keysign$(EXEEXT) $(DESTDIR)$(SSH_KEYSIGN)$(EXEEXT) ++ $(INSTALL) -m 0755 $(STRIP_OPT) ssh-pkcs11-helper$(EXEEXT) $(DESTDIR)$(SSH_PKCS11_HELPER)$(EXEEXT) ++ $(INSTALL) -m 0755 $(STRIP_OPT) sftp$(EXEEXT) $(DESTDIR)$(bindir)/sftp$(EXEEXT) ++ $(INSTALL) -m 0755 $(STRIP_OPT) sftp-server$(EXEEXT) $(DESTDIR)$(SFTP_SERVER)$(EXEEXT) ++ $(INSTALL) -m 644 ssh.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/ssh.1 ++ $(INSTALL) -m 644 scp.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/scp.1 ++ $(INSTALL) -m 644 ssh-add.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/ssh-add.1 ++ $(INSTALL) -m 644 ssh-agent.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/ssh-agent.1 ++ $(INSTALL) -m 644 ssh-keygen.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/ssh-keygen.1 ++ $(INSTALL) -m 644 ssh-keyscan.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/ssh-keyscan.1 ++ $(INSTALL) -m 644 moduli.5.out $(DESTDIR)$(mandir)/$(mansubdir)5/moduli.5 ++ $(INSTALL) -m 644 sshd_config.5.out $(DESTDIR)$(mandir)/$(mansubdir)5/sshd_config.5 ++ $(INSTALL) -m 644 ssh_config.5.out $(DESTDIR)$(mandir)/$(mansubdir)5/ssh_config.5 ++ $(INSTALL) -m 644 sshd.8.out $(DESTDIR)$(mandir)/$(mansubdir)8/sshd.8 ++ if [ ! -z "$(INSTALL_SSH_RAND_HELPER)" ]; then \ ++ $(INSTALL) -m 644 ssh-rand-helper.8.out $(DESTDIR)$(mandir)/$(mansubdir)8/ssh-rand-helper.8 ; \ ++ fi ++ $(INSTALL) -m 644 sftp.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/sftp.1 ++ $(INSTALL) -m 644 sftp-server.8.out $(DESTDIR)$(mandir)/$(mansubdir)8/sftp-server.8 ++ $(INSTALL) -m 644 ssh-keysign.8.out $(DESTDIR)$(mandir)/$(mansubdir)8/ssh-keysign.8 ++ $(INSTALL) -m 644 ssh-pkcs11-helper.8.out $(DESTDIR)$(mandir)/$(mansubdir)8/ssh-pkcs11-helper.8 ++ -rm -f $(DESTDIR)$(bindir)/slogin ++ ln -s ./ssh$(EXEEXT) $(DESTDIR)$(bindir)/slogin ++ -rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/slogin.1 ++ ln -s ./ssh.1 $(DESTDIR)$(mandir)/$(mansubdir)1/slogin.1 ++ ++install-sysconf: ++ if [ ! -d $(DESTDIR)$(sysconfdir) ]; then \ ++ $(srcdir)/mkinstalldirs $(DESTDIR)$(sysconfdir); \ ++ fi ++ @if [ ! -f $(DESTDIR)$(sysconfdir)/ssh_config ]; then \ ++ $(INSTALL) -m 644 ssh_config.out $(DESTDIR)$(sysconfdir)/ssh_config; \ ++ else \ ++ echo "$(DESTDIR)$(sysconfdir)/ssh_config already exists, install will not overwrite"; \ ++ fi ++ @if [ ! -f $(DESTDIR)$(sysconfdir)/sshd_config ]; then \ ++ $(INSTALL) -m 644 sshd_config.out $(DESTDIR)$(sysconfdir)/sshd_config; \ ++ else \ ++ echo "$(DESTDIR)$(sysconfdir)/sshd_config already exists, install will not overwrite"; \ ++ fi ++ @if [ -f ssh_prng_cmds ] && [ ! -z "$(INSTALL_SSH_PRNG_CMDS)" ]; then \ ++ if [ ! -f $(DESTDIR)$(sysconfdir)/ssh_prng_cmds ] ; then \ ++ $(INSTALL) -m 644 ssh_prng_cmds.out $(DESTDIR)$(sysconfdir)/ssh_prng_cmds; \ ++ else \ ++ echo "$(DESTDIR)$(sysconfdir)/ssh_prng_cmds already exists, install will not overwrite"; \ ++ fi ; \ ++ fi ++ @if [ ! -f $(DESTDIR)$(sysconfdir)/moduli ]; then \ ++ if [ -f $(DESTDIR)$(sysconfdir)/primes ]; then \ ++ echo "moving $(DESTDIR)$(sysconfdir)/primes to $(DESTDIR)$(sysconfdir)/moduli"; \ ++ mv "$(DESTDIR)$(sysconfdir)/primes" "$(DESTDIR)$(sysconfdir)/moduli"; \ ++ else \ ++ $(INSTALL) -m 644 moduli.out $(DESTDIR)$(sysconfdir)/moduli; \ ++ fi ; \ ++ else \ ++ echo "$(DESTDIR)$(sysconfdir)/moduli already exists, install will not overwrite"; \ ++ fi ++ ++host-key: ssh-keygen$(EXEEXT) ++ @if [ -z "$(DESTDIR)" ] ; then \ ++ if [ -f "$(sysconfdir)/ssh_host_key" ] ; then \ ++ echo "$(sysconfdir)/ssh_host_key already exists, skipping." ; \ ++ else \ ++ ./ssh-keygen -t rsa1 -f $(sysconfdir)/ssh_host_key -N "" ; \ ++ fi ; \ ++ if [ -f $(sysconfdir)/ssh_host_dsa_key ] ; then \ ++ echo "$(sysconfdir)/ssh_host_dsa_key already exists, skipping." ; \ ++ else \ ++ ./ssh-keygen -t dsa -f $(sysconfdir)/ssh_host_dsa_key -N "" ; \ ++ fi ; \ ++ if [ -f $(sysconfdir)/ssh_host_rsa_key ] ; then \ ++ echo "$(sysconfdir)/ssh_host_rsa_key already exists, skipping." ; \ ++ else \ ++ ./ssh-keygen -t rsa -f $(sysconfdir)/ssh_host_rsa_key -N "" ; \ ++ fi ; \ ++ if [ -z "@COMMENT_OUT_ECC@" ] ; then \ ++ if [ -f $(sysconfdir)/ssh_host_ecdsa_key ] ; then \ ++ echo "$(sysconfdir)/ssh_host_ecdsa_key already exists, skipping." ; \ ++ else \ ++ ./ssh-keygen -t ecdsa -f $(sysconfdir)/ssh_host_ecdsa_key -N "" ; \ ++ fi ; \ ++ fi ; \ ++ fi ; ++ ++host-key-force: ssh-keygen$(EXEEXT) ++ ./ssh-keygen -t rsa1 -f $(DESTDIR)$(sysconfdir)/ssh_host_key -N "" ++ ./ssh-keygen -t dsa -f $(DESTDIR)$(sysconfdir)/ssh_host_dsa_key -N "" ++ ./ssh-keygen -t rsa -f $(DESTDIR)$(sysconfdir)/ssh_host_rsa_key -N "" ++ test -z "@COMMENT_OUT_ECC@" && ./ssh-keygen -t ecdsa -f $(DESTDIR)$(sysconfdir)/ssh_host_ecdsa_key -N "" ++ ++uninstallall: uninstall ++ -rm -f $(DESTDIR)$(sysconfdir)/ssh_config ++ -rm -f $(DESTDIR)$(sysconfdir)/sshd_config ++ -rm -f $(DESTDIR)$(sysconfdir)/ssh_prng_cmds ++ -rmdir $(DESTDIR)$(sysconfdir) ++ -rmdir $(DESTDIR)$(bindir) ++ -rmdir $(DESTDIR)$(sbindir) ++ -rmdir $(DESTDIR)$(mandir)/$(mansubdir)1 ++ -rmdir $(DESTDIR)$(mandir)/$(mansubdir)8 ++ -rmdir $(DESTDIR)$(mandir) ++ -rmdir $(DESTDIR)$(libexecdir) ++ ++uninstall: ++ -rm -f $(DESTDIR)$(bindir)/slogin ++ -rm -f $(DESTDIR)$(bindir)/ssh$(EXEEXT) ++ -rm -f $(DESTDIR)$(bindir)/scp$(EXEEXT) ++ -rm -f $(DESTDIR)$(bindir)/ssh-add$(EXEEXT) ++ -rm -f $(DESTDIR)$(bindir)/ssh-agent$(EXEEXT) ++ -rm -f $(DESTDIR)$(bindir)/ssh-keygen$(EXEEXT) ++ -rm -f $(DESTDIR)$(bindir)/ssh-keyscan$(EXEEXT) ++ -rm -f $(DESTDIR)$(bindir)/sftp$(EXEEXT) ++ -rm -f $(DESTDIR)$(sbindir)/sshd$(EXEEXT) ++ -rm -r $(DESTDIR)$(SFTP_SERVER)$(EXEEXT) ++ -rm -f $(DESTDIR)$(SSH_KEYSIGN)$(EXEEXT) ++ -rm -f $(DESTDIR)$(SSH_PKCS11_HELPER)$(EXEEXT) ++ -rm -f $(DESTDIR)$(RAND_HELPER)$(EXEEXT) ++ -rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/ssh.1 ++ -rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/scp.1 ++ -rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/ssh-add.1 ++ -rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/ssh-agent.1 ++ -rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/ssh-keygen.1 ++ -rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/sftp.1 ++ -rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/ssh-keyscan.1 ++ -rm -f $(DESTDIR)$(mandir)/$(mansubdir)8/sshd.8 ++ -rm -f $(DESTDIR)$(mandir)/$(mansubdir)8/ssh-rand-helper.8 ++ -rm -f $(DESTDIR)$(mandir)/$(mansubdir)8/sftp-server.8 ++ -rm -f $(DESTDIR)$(mandir)/$(mansubdir)8/ssh-keysign.8 ++ -rm -f $(DESTDIR)$(mandir)/$(mansubdir)8/ssh-pkcs11-helper.8 ++ -rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/slogin.1 ++ ++tests interop-tests: $(TARGETS) ++ BUILDDIR=`pwd`; \ ++ [ -d `pwd`/regress ] || mkdir -p `pwd`/regress; \ ++ [ -f `pwd`/regress/Makefile ] || \ ++ ln -s `cd $(srcdir) && pwd`/regress/Makefile `pwd`/regress/Makefile ; \ ++ TEST_SHELL="@TEST_SHELL@"; \ ++ TEST_SSH_SSH="$${BUILDDIR}/ssh"; \ ++ TEST_SSH_SSHD="$${BUILDDIR}/sshd"; \ ++ TEST_SSH_SSHAGENT="$${BUILDDIR}/ssh-agent"; \ ++ TEST_SSH_SSHADD="$${BUILDDIR}/ssh-add"; \ ++ TEST_SSH_SSHKEYGEN="$${BUILDDIR}/ssh-keygen"; \ ++ TEST_SSH_SSHPKCS11HELPER="$${BUILDDIR}/ssh-pkcs11-helper"; \ ++ TEST_SSH_SSHKEYSCAN="$${BUILDDIR}/ssh-keyscan"; \ ++ TEST_SSH_SFTP="$${BUILDDIR}/sftp"; \ ++ TEST_SSH_SFTPSERVER="$${BUILDDIR}/sftp-server"; \ ++ TEST_SSH_PLINK="plink"; \ ++ TEST_SSH_PUTTYGEN="puttygen"; \ ++ TEST_SSH_CONCH="conch"; \ ++ TEST_SSH_IPV6="@TEST_SSH_IPV6@" ; \ ++ TEST_SSH_ECC="@TEST_SSH_ECC@" ; \ ++ TEST_SSH_SHA256="@TEST_SSH_SHA256@" ; \ ++ cd $(srcdir)/regress || exit $$?; \ ++ $(MAKE) \ ++ .OBJDIR="$${BUILDDIR}/regress" \ ++ .CURDIR="`pwd`" \ ++ BUILDDIR="$${BUILDDIR}" \ ++ OBJ="$${BUILDDIR}/regress/" \ ++ PATH="$${BUILDDIR}:$${PATH}" \ ++ TEST_SHELL="$${TEST_SHELL}" \ ++ TEST_SSH_SSH="$${TEST_SSH_SSH}" \ ++ TEST_SSH_SSHD="$${TEST_SSH_SSHD}" \ ++ TEST_SSH_SSHAGENT="$${TEST_SSH_SSHAGENT}" \ ++ TEST_SSH_SSHADD="$${TEST_SSH_SSHADD}" \ ++ TEST_SSH_SSHKEYGEN="$${TEST_SSH_SSHKEYGEN}" \ ++ TEST_SSH_SSHPKCS11HELPER="$${TEST_SSH_SSHPKCS11HELPER}" \ ++ TEST_SSH_SSHKEYSCAN="$${TEST_SSH_SSHKEYSCAN}" \ ++ TEST_SSH_SFTP="$${TEST_SSH_SFTP}" \ ++ TEST_SSH_SFTPSERVER="$${TEST_SSH_SFTPSERVER}" \ ++ TEST_SSH_PLINK="$${TEST_SSH_PLINK}" \ ++ TEST_SSH_PUTTYGEN="$${TEST_SSH_PUTTYGEN}" \ ++ TEST_SSH_CONCH="$${TEST_SSH_CONCH}" \ ++ TEST_SSH_IPV6="$${TEST_SSH_IPV6}" \ ++ TEST_SSH_ECC="$${TEST_SSH_ECC}" \ ++ TEST_SSH_SHA256="$${TEST_SSH_SHA256}" \ ++ EXEEXT="$(EXEEXT)" \ ++ $@ && echo all tests passed ++ ++compat-tests: $(LIBCOMPAT) ++ (cd openbsd-compat/regress && $(MAKE)) ++ ++regressclean: ++ if [ -f regress/Makefile ] && [ -r regress/Makefile ]; then \ ++ (cd regress && $(MAKE) clean) \ ++ fi ++ ++survey: survey.sh ssh ++ @$(SHELL) ./survey.sh > survey ++ @echo 'The survey results have been placed in the file "survey" in the' ++ @echo 'current directory. Please review the file then send with' ++ @echo '"make send-survey".' ++ ++send-survey: survey ++ mail portable-survey at mindrot.org krb5_ticket_file) + 6; + authctxt->krb5_ccname = xmalloc(len); ++#ifdef USE_CCAPI ++ snprintf(authctxt->krb5_ccname, len, "API:%s", ++ authctxt->krb5_ticket_file); ++#else + snprintf(authctxt->krb5_ccname, len, "FILE:%s", + authctxt->krb5_ticket_file); ++#endif + + #ifdef USE_PAM + if (options.use_pam) +@@ -226,15 +231,22 @@ + #ifndef HEIMDAL + krb5_error_code + ssh_krb5_cc_gen(krb5_context ctx, krb5_ccache *ccache) { +- int tmpfd, ret; ++ int ret; + char ccname[40]; + mode_t old_umask; ++#ifdef USE_CCAPI ++ char cctemplate[] = "API:krb5cc_%d"; ++#else ++ char cctemplate[] = "FILE:/tmp/krb5cc_%d_XXXXXXXXXX"; ++ int tmpfd; ++#endif + + ret = snprintf(ccname, sizeof(ccname), +- "FILE:/tmp/krb5cc_%d_XXXXXXXXXX", geteuid()); ++ cctemplate, geteuid()); + if (ret < 0 || (size_t)ret >= sizeof(ccname)) + return ENOMEM; + ++#ifndef USE_CCAPI + old_umask = umask(0177); + tmpfd = mkstemp(ccname + strlen("FILE:")); + umask(old_umask); +@@ -249,6 +261,7 @@ + return errno; + } + close(tmpfd); ++#endif + + return (krb5_cc_resolve(ctx, ccname, ccache)); + } +diff --speed-large-files --minimal -Nru openssh-5.8p1/auth.h openssh-5.8p1.new/auth.h +--- openssh-5.8p1/auth.h 2010-05-10 03:58:03.000000000 +0200 ++++ openssh-5.8p1.new/auth.h 2011-02-12 18:07:11.017509607 +0100 +@@ -53,6 +53,7 @@ + int valid; /* user exists and is allowed to login */ + int attempt; + int failures; ++ int server_caused_failure; + int force_pwchange; + char *user; /* username sent by the client */ + char *service; +diff --speed-large-files --minimal -Nru openssh-5.8p1/auth2-gss.c openssh-5.8p1.new/auth2-gss.c +--- openssh-5.8p1/auth2-gss.c 2007-12-02 12:59:45.000000000 +0100 ++++ openssh-5.8p1.new/auth2-gss.c 2011-02-12 18:07:11.030761708 +0100 +@@ -1,7 +1,7 @@ + /* $OpenBSD: auth2-gss.c,v 1.16 2007/10/29 00:52:45 dtucker Exp $ */ + + /* +- * Copyright (c) 2001-2003 Simon Wilkinson. All rights reserved. ++ * Copyright (c) 2001-2007 Simon Wilkinson. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions +@@ -52,6 +52,40 @@ + static void input_gssapi_exchange_complete(int type, u_int32_t plen, void *ctxt); + static void input_gssapi_errtok(int, u_int32_t, void *); + ++/* ++ * The 'gssapi_keyex' userauth mechanism. ++ */ ++static int ++userauth_gsskeyex(Authctxt *authctxt) ++{ ++ int authenticated = 0; ++ Buffer b; ++ gss_buffer_desc mic, gssbuf; ++ u_int len; ++ ++ mic.value = packet_get_string(&len); ++ mic.length = len; ++ ++ packet_check_eom(); ++ ++ ssh_gssapi_buildmic(&b, authctxt->user, authctxt->service, ++ "gssapi-keyex"); ++ ++ gssbuf.value = buffer_ptr(&b); ++ gssbuf.length = buffer_len(&b); ++ ++ /* gss_kex_context is NULL with privsep, so we can't check it here */ ++ if (!GSS_ERROR(PRIVSEP(ssh_gssapi_checkmic(gss_kex_context, ++ &gssbuf, &mic)))) ++ authenticated = PRIVSEP(ssh_gssapi_userok(authctxt->user, ++ authctxt->pw)); ++ ++ buffer_free(&b); ++ xfree(mic.value); ++ ++ return (authenticated); ++} ++ + /* + * We only support those mechanisms that we know about (ie ones that we know + * how to check local user kuserok and the like) +@@ -102,6 +136,7 @@ + + if (!present) { + xfree(doid); ++ authctxt->server_caused_failure = 1; + return (0); + } + +@@ -109,6 +144,7 @@ + if (ctxt != NULL) + ssh_gssapi_delete_ctx(&ctxt); + xfree(doid); ++ authctxt->server_caused_failure = 1; + return (0); + } + +@@ -242,7 +278,8 @@ + + packet_check_eom(); + +- authenticated = PRIVSEP(ssh_gssapi_userok(authctxt->user)); ++ authenticated = PRIVSEP(ssh_gssapi_userok(authctxt->user, ++ authctxt->pw)); + + authctxt->postponed = 0; + dispatch_set(SSH2_MSG_USERAUTH_GSSAPI_TOKEN, NULL); +@@ -277,7 +314,8 @@ + gssbuf.length = buffer_len(&b); + + if (!GSS_ERROR(PRIVSEP(ssh_gssapi_checkmic(gssctxt, &gssbuf, &mic)))) +- authenticated = PRIVSEP(ssh_gssapi_userok(authctxt->user)); ++ authenticated = ++ PRIVSEP(ssh_gssapi_userok(authctxt->user, authctxt->pw)); + else + logit("GSSAPI MIC check failed"); + +@@ -292,6 +330,12 @@ + userauth_finish(authctxt, authenticated, "gssapi-with-mic"); + } + ++Authmethod method_gsskeyex = { ++ "gssapi-keyex", ++ userauth_gsskeyex, ++ &options.gss_authentication ++}; ++ + Authmethod method_gssapi = { + "gssapi-with-mic", + userauth_gssapi, +diff --speed-large-files --minimal -Nru openssh-5.8p1/auth2.c openssh-5.8p1.new/auth2.c +--- openssh-5.8p1/auth2.c 2010-08-31 14:36:39.000000000 +0200 ++++ openssh-5.8p1.new/auth2.c 2011-02-12 18:07:11.043418162 +0100 +@@ -69,6 +69,7 @@ + extern Authmethod method_kbdint; + extern Authmethod method_hostbased; + #ifdef GSSAPI ++extern Authmethod method_gsskeyex; + extern Authmethod method_gssapi; + #endif + #ifdef JPAKE +@@ -79,6 +80,7 @@ + &method_none, + &method_pubkey, + #ifdef GSSAPI ++ &method_gsskeyex, + &method_gssapi, + #endif + #ifdef JPAKE +@@ -274,6 +276,7 @@ + #endif + + authctxt->postponed = 0; ++ authctxt->server_caused_failure = 0; + + /* try to authenticate user */ + m = authmethod_lookup(method); +@@ -346,7 +349,8 @@ + } else { + + /* Allow initial try of "none" auth without failure penalty */ +- if (authctxt->attempt > 1 || strcmp(method, "none") != 0) ++ if (!authctxt->server_caused_failure && ++ (authctxt->attempt > 1 || strcmp(method, "none") != 0)) + authctxt->failures++; + if (authctxt->failures >= options.max_authtries) { + #ifdef SSH_AUDIT_EVENTS +diff --speed-large-files --minimal -Nru openssh-5.8p1/clientloop.c openssh-5.8p1.new/clientloop.c +--- openssh-5.8p1/clientloop.c 2011-01-16 13:18:35.000000000 +0100 ++++ openssh-5.8p1.new/clientloop.c 2011-02-12 18:07:11.063578136 +0100 +@@ -111,6 +111,10 @@ + #include "msg.h" + #include "roaming.h" + ++#ifdef GSSAPI ++#include "ssh-gss.h" ++#endif ++ + /* import options */ + extern Options options; + +@@ -1483,6 +1487,15 @@ + /* Do channel operations unless rekeying in progress. */ + if (!rekeying) { + channel_after_select(readset, writeset); ++ ++#ifdef GSSAPI ++ if (options.gss_renewal_rekey && ++ ssh_gssapi_credentials_updated(GSS_C_NO_CONTEXT)) { ++ debug("credentials updated - forcing rekey"); ++ need_rekeying = 1; ++ } ++#endif ++ + if (need_rekeying || packet_need_rekeying()) { + debug("need rekeying"); + xxx_kex->done = 0; +diff --speed-large-files --minimal -Nru openssh-5.8p1/configure.ac openssh-5.8p1.new/configure.ac +--- openssh-5.8p1/configure.ac 2011-02-04 01:42:14.000000000 +0100 ++++ openssh-5.8p1.new/configure.ac 2011-02-12 18:07:11.092748915 +0100 +@@ -514,6 +514,30 @@ + [Use tunnel device compatibility to OpenBSD]) + AC_DEFINE(SSH_TUN_PREPEND_AF, 1, + [Prepend the address family to IP tunnel traffic]) ++ AC_MSG_CHECKING(if we have the Security Authorization Session API) ++ AC_TRY_COMPILE([#include ], ++ [SessionCreate(0, 0);], ++ [ac_cv_use_security_session_api="yes" ++ AC_DEFINE(USE_SECURITY_SESSION_API, 1, ++ [platform has the Security Authorization Session API]) ++ LIBS="$LIBS -framework Security" ++ AC_MSG_RESULT(yes)], ++ [ac_cv_use_security_session_api="no" ++ AC_MSG_RESULT(no)]) ++ AC_MSG_CHECKING(if we have an in-memory credentials cache) ++ AC_TRY_COMPILE( ++ [#include ], ++ [cc_context_t c; ++ (void) cc_initialize (&c, 0, NULL, NULL);], ++ [AC_DEFINE(USE_CCAPI, 1, ++ [platform uses an in-memory credentials cache]) ++ LIBS="$LIBS -framework Security" ++ AC_MSG_RESULT(yes) ++ if test "x$ac_cv_use_security_session_api" = "xno"; then ++ AC_MSG_ERROR(*** Need a security framework to use the credentials cache API ***) ++ fi], ++ [AC_MSG_RESULT(no)] ++ ) + m4_pattern_allow(AU_IPv) + AC_CHECK_DECL(AU_IPv4, [], + AC_DEFINE(AU_IPv4, 0, [System only supports IPv4 audit records]) +diff --speed-large-files --minimal -Nru openssh-5.8p1/gss-genr.c openssh-5.8p1.new/gss-genr.c +--- openssh-5.8p1/gss-genr.c 2009-06-22 08:11:07.000000000 +0200 ++++ openssh-5.8p1.new/gss-genr.c 2011-02-12 18:07:11.108432434 +0100 +@@ -1,7 +1,7 @@ + /* $OpenBSD: gss-genr.c,v 1.20 2009/06/22 05:39:28 dtucker Exp $ */ + + /* +- * Copyright (c) 2001-2007 Simon Wilkinson. All rights reserved. ++ * Copyright (c) 2001-2009 Simon Wilkinson. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions +@@ -39,12 +39,167 @@ + #include "buffer.h" + #include "log.h" + #include "ssh2.h" ++#include "cipher.h" ++#include "key.h" ++#include "kex.h" ++#include + + #include "ssh-gss.h" + + extern u_char *session_id2; + extern u_int session_id2_len; + ++typedef struct { ++ char *encoded; ++ gss_OID oid; ++} ssh_gss_kex_mapping; ++ ++/* ++ * XXX - It would be nice to find a more elegant way of handling the ++ * XXX passing of the key exchange context to the userauth routines ++ */ ++ ++Gssctxt *gss_kex_context = NULL; ++ ++static ssh_gss_kex_mapping *gss_enc2oid = NULL; ++ ++int ++ssh_gssapi_oid_table_ok() { ++ return (gss_enc2oid != NULL); ++} ++ ++/* ++ * Return a list of the gss-group1-sha1 mechanisms supported by this program ++ * ++ * We test mechanisms to ensure that we can use them, to avoid starting ++ * a key exchange with a bad mechanism ++ */ ++ ++char * ++ssh_gssapi_client_mechanisms(const char *host, const char *client) { ++ gss_OID_set gss_supported; ++ OM_uint32 min_status; ++ ++ if (GSS_ERROR(gss_indicate_mechs(&min_status, &gss_supported))) ++ return NULL; ++ ++ return(ssh_gssapi_kex_mechs(gss_supported, ssh_gssapi_check_mechanism, ++ host, client)); ++} ++ ++char * ++ssh_gssapi_kex_mechs(gss_OID_set gss_supported, ssh_gssapi_check_fn *check, ++ const char *host, const char *client) { ++ Buffer buf; ++ size_t i; ++ int oidpos, enclen; ++ char *mechs, *encoded; ++ u_char digest[EVP_MAX_MD_SIZE]; ++ char deroid[2]; ++ const EVP_MD *evp_md = EVP_md5(); ++ EVP_MD_CTX md; ++ ++ if (gss_enc2oid != NULL) { ++ for (i = 0; gss_enc2oid[i].encoded != NULL; i++) ++ xfree(gss_enc2oid[i].encoded); ++ xfree(gss_enc2oid); ++ } ++ ++ gss_enc2oid = xmalloc(sizeof(ssh_gss_kex_mapping) * ++ (gss_supported->count + 1)); ++ ++ buffer_init(&buf); ++ ++ oidpos = 0; ++ for (i = 0; i < gss_supported->count; i++) { ++ if (gss_supported->elements[i].length < 128 && ++ (*check)(NULL, &(gss_supported->elements[i]), host, client)) { ++ ++ deroid[0] = SSH_GSS_OIDTYPE; ++ deroid[1] = gss_supported->elements[i].length; ++ ++ EVP_DigestInit(&md, evp_md); ++ EVP_DigestUpdate(&md, deroid, 2); ++ EVP_DigestUpdate(&md, ++ gss_supported->elements[i].elements, ++ gss_supported->elements[i].length); ++ EVP_DigestFinal(&md, digest, NULL); ++ ++ encoded = xmalloc(EVP_MD_size(evp_md) * 2); ++ enclen = __b64_ntop(digest, EVP_MD_size(evp_md), ++ encoded, EVP_MD_size(evp_md) * 2); ++ ++ if (oidpos != 0) ++ buffer_put_char(&buf, ','); ++ ++ buffer_append(&buf, KEX_GSS_GEX_SHA1_ID, ++ sizeof(KEX_GSS_GEX_SHA1_ID) - 1); ++ buffer_append(&buf, encoded, enclen); ++ buffer_put_char(&buf, ','); ++ buffer_append(&buf, KEX_GSS_GRP1_SHA1_ID, ++ sizeof(KEX_GSS_GRP1_SHA1_ID) - 1); ++ buffer_append(&buf, encoded, enclen); ++ buffer_put_char(&buf, ','); ++ buffer_append(&buf, KEX_GSS_GRP14_SHA1_ID, ++ sizeof(KEX_GSS_GRP14_SHA1_ID) - 1); ++ buffer_append(&buf, encoded, enclen); ++ ++ gss_enc2oid[oidpos].oid = &(gss_supported->elements[i]); ++ gss_enc2oid[oidpos].encoded = encoded; ++ oidpos++; ++ } ++ } ++ gss_enc2oid[oidpos].oid = NULL; ++ gss_enc2oid[oidpos].encoded = NULL; ++ ++ buffer_put_char(&buf, '\0'); ++ ++ mechs = xmalloc(buffer_len(&buf)); ++ buffer_get(&buf, mechs, buffer_len(&buf)); ++ buffer_free(&buf); ++ ++ if (strlen(mechs) == 0) { ++ xfree(mechs); ++ mechs = NULL; ++ } ++ ++ return (mechs); ++} ++ ++gss_OID ++ssh_gssapi_id_kex(Gssctxt *ctx, char *name, int kex_type) { ++ int i = 0; ++ ++ switch (kex_type) { ++ case KEX_GSS_GRP1_SHA1: ++ if (strlen(name) < sizeof(KEX_GSS_GRP1_SHA1_ID)) ++ return GSS_C_NO_OID; ++ name += sizeof(KEX_GSS_GRP1_SHA1_ID) - 1; ++ break; ++ case KEX_GSS_GRP14_SHA1: ++ if (strlen(name) < sizeof(KEX_GSS_GRP14_SHA1_ID)) ++ return GSS_C_NO_OID; ++ name += sizeof(KEX_GSS_GRP14_SHA1_ID) - 1; ++ break; ++ case KEX_GSS_GEX_SHA1: ++ if (strlen(name) < sizeof(KEX_GSS_GEX_SHA1_ID)) ++ return GSS_C_NO_OID; ++ name += sizeof(KEX_GSS_GEX_SHA1_ID) - 1; ++ break; ++ default: ++ return GSS_C_NO_OID; ++ } ++ ++ while (gss_enc2oid[i].encoded != NULL && ++ strcmp(name, gss_enc2oid[i].encoded) != 0) ++ i++; ++ ++ if (gss_enc2oid[i].oid != NULL && ctx != NULL) ++ ssh_gssapi_set_oid(ctx, gss_enc2oid[i].oid); ++ ++ return gss_enc2oid[i].oid; ++} ++ + /* Check that the OID in a data stream matches that in the context */ + int + ssh_gssapi_check_oid(Gssctxt *ctx, void *data, size_t len) +@@ -197,7 +352,7 @@ + } + + ctx->major = gss_init_sec_context(&ctx->minor, +- GSS_C_NO_CREDENTIAL, &ctx->context, ctx->name, ctx->oid, ++ ctx->client_creds, &ctx->context, ctx->name, ctx->oid, + GSS_C_MUTUAL_FLAG | GSS_C_INTEG_FLAG | deleg_flag, + 0, NULL, recv_tok, NULL, send_tok, flags, NULL); + +@@ -227,8 +382,42 @@ + } + + OM_uint32 ++ssh_gssapi_client_identity(Gssctxt *ctx, const char *name) ++{ ++ gss_buffer_desc gssbuf; ++ gss_name_t gssname; ++ OM_uint32 status; ++ gss_OID_set oidset; ++ ++ gssbuf.value = (void *) name; ++ gssbuf.length = strlen(gssbuf.value); ++ ++ gss_create_empty_oid_set(&status, &oidset); ++ gss_add_oid_set_member(&status, ctx->oid, &oidset); ++ ++ ctx->major = gss_import_name(&ctx->minor, &gssbuf, ++ GSS_C_NT_USER_NAME, &gssname); ++ ++ if (!ctx->major) ++ ctx->major = gss_acquire_cred(&ctx->minor, ++ gssname, 0, oidset, GSS_C_INITIATE, ++ &ctx->client_creds, NULL, NULL); ++ ++ gss_release_name(&status, &gssname); ++ gss_release_oid_set(&status, &oidset); ++ ++ if (ctx->major) ++ ssh_gssapi_error(ctx); ++ ++ return(ctx->major); ++} ++ ++OM_uint32 + ssh_gssapi_sign(Gssctxt *ctx, gss_buffer_t buffer, gss_buffer_t hash) + { ++ if (ctx == NULL) ++ return -1; ++ + if ((ctx->major = gss_get_mic(&ctx->minor, ctx->context, + GSS_C_QOP_DEFAULT, buffer, hash))) + ssh_gssapi_error(ctx); +@@ -236,6 +425,19 @@ + return (ctx->major); + } + ++/* Priviledged when used by server */ ++OM_uint32 ++ssh_gssapi_checkmic(Gssctxt *ctx, gss_buffer_t gssbuf, gss_buffer_t gssmic) ++{ ++ if (ctx == NULL) ++ return -1; ++ ++ ctx->major = gss_verify_mic(&ctx->minor, ctx->context, ++ gssbuf, gssmic, NULL); ++ ++ return (ctx->major); ++} ++ + void + ssh_gssapi_buildmic(Buffer *b, const char *user, const char *service, + const char *context) +@@ -249,11 +451,16 @@ + } + + int +-ssh_gssapi_check_mechanism(Gssctxt **ctx, gss_OID oid, const char *host) ++ssh_gssapi_check_mechanism(Gssctxt **ctx, gss_OID oid, const char *host, ++ const char *client) + { + gss_buffer_desc token = GSS_C_EMPTY_BUFFER; + OM_uint32 major, minor; + gss_OID_desc spnego_oid = {6, (void *)"\x2B\x06\x01\x05\x05\x02"}; ++ Gssctxt *intctx = NULL; ++ ++ if (ctx == NULL) ++ ctx = &intctx; + + /* RFC 4462 says we MUST NOT do SPNEGO */ + if (oid->length == spnego_oid.length && +@@ -263,6 +470,10 @@ + ssh_gssapi_build_ctx(ctx); + ssh_gssapi_set_oid(*ctx, oid); + major = ssh_gssapi_import_name(*ctx, host); ++ ++ if (!GSS_ERROR(major) && client) ++ major = ssh_gssapi_client_identity(*ctx, client); ++ + if (!GSS_ERROR(major)) { + major = ssh_gssapi_init_ctx(*ctx, 0, GSS_C_NO_BUFFER, &token, + NULL); +@@ -272,10 +483,67 @@ + GSS_C_NO_BUFFER); + } + +- if (GSS_ERROR(major)) ++ if (GSS_ERROR(major) || intctx != NULL) + ssh_gssapi_delete_ctx(ctx); + + return (!GSS_ERROR(major)); + } + ++int ++ssh_gssapi_credentials_updated(Gssctxt *ctxt) { ++ static gss_name_t saved_name = GSS_C_NO_NAME; ++ static OM_uint32 saved_lifetime = 0; ++ static gss_OID saved_mech = GSS_C_NO_OID; ++ static gss_name_t name; ++ static OM_uint32 last_call = 0; ++ OM_uint32 lifetime, now, major, minor; ++ int equal; ++ gss_cred_usage_t usage = GSS_C_INITIATE; ++ ++ now = time(NULL); ++ ++ if (ctxt) { ++ debug("Rekey has happened - updating saved versions"); ++ ++ if (saved_name != GSS_C_NO_NAME) ++ gss_release_name(&minor, &saved_name); ++ ++ major = gss_inquire_cred(&minor, GSS_C_NO_CREDENTIAL, ++ &saved_name, &saved_lifetime, NULL, NULL); ++ ++ if (!GSS_ERROR(major)) { ++ saved_mech = ctxt->oid; ++ saved_lifetime+= now; ++ } else { ++ /* Handle the error */ ++ } ++ return 0; ++ } ++ ++ if (now - last_call < 10) ++ return 0; ++ ++ last_call = now; ++ ++ if (saved_mech == GSS_C_NO_OID) ++ return 0; ++ ++ major = gss_inquire_cred(&minor, GSS_C_NO_CREDENTIAL, ++ &name, &lifetime, NULL, NULL); ++ if (major == GSS_S_CREDENTIALS_EXPIRED) ++ return 0; ++ else if (GSS_ERROR(major)) ++ return 0; ++ ++ major = gss_compare_name(&minor, saved_name, name, &equal); ++ gss_release_name(&minor, &name); ++ if (GSS_ERROR(major)) ++ return 0; ++ ++ if (equal && (saved_lifetime < lifetime + now - 10)) ++ return 1; ++ ++ return 0; ++} ++ + #endif /* GSSAPI */ +diff --speed-large-files --minimal -Nru openssh-5.8p1/gss-serv-krb5.c openssh-5.8p1.new/gss-serv-krb5.c +--- openssh-5.8p1/gss-serv-krb5.c 2006-09-01 07:38:36.000000000 +0200 ++++ openssh-5.8p1.new/gss-serv-krb5.c 2011-02-12 18:07:11.123072516 +0100 +@@ -1,7 +1,7 @@ + /* $OpenBSD: gss-serv-krb5.c,v 1.7 2006/08/03 03:34:42 deraadt Exp $ */ + + /* +- * Copyright (c) 2001-2003 Simon Wilkinson. All rights reserved. ++ * Copyright (c) 2001-2007 Simon Wilkinson. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions +@@ -120,6 +120,7 @@ + krb5_principal princ; + OM_uint32 maj_status, min_status; + int len; ++ const char *new_ccname; + + if (client->creds == NULL) { + debug("No credentials stored"); +@@ -168,11 +169,16 @@ + return; + } + +- client->store.filename = xstrdup(krb5_cc_get_name(krb_context, ccache)); ++ new_ccname = krb5_cc_get_name(krb_context, ccache); ++ + client->store.envvar = "KRB5CCNAME"; +- len = strlen(client->store.filename) + 6; +- client->store.envval = xmalloc(len); +- snprintf(client->store.envval, len, "FILE:%s", client->store.filename); ++#ifdef USE_CCAPI ++ xasprintf(&client->store.envval, "API:%s", new_ccname); ++ client->store.filename = NULL; ++#else ++ xasprintf(&client->store.envval, "FILE:%s", new_ccname); ++ client->store.filename = xstrdup(new_ccname); ++#endif + + #ifdef USE_PAM + if (options.use_pam) +@@ -184,6 +190,71 @@ + return; + } + ++int ++ssh_gssapi_krb5_updatecreds(ssh_gssapi_ccache *store, ++ ssh_gssapi_client *client) ++{ ++ krb5_ccache ccache = NULL; ++ krb5_principal principal = NULL; ++ char *name = NULL; ++ krb5_error_code problem; ++ OM_uint32 maj_status, min_status; ++ ++ if ((problem = krb5_cc_resolve(krb_context, store->envval, &ccache))) { ++ logit("krb5_cc_resolve(): %.100s", ++ krb5_get_err_text(krb_context, problem)); ++ return 0; ++ } ++ ++ /* Find out who the principal in this cache is */ ++ if ((problem = krb5_cc_get_principal(krb_context, ccache, ++ &principal))) { ++ logit("krb5_cc_get_principal(): %.100s", ++ krb5_get_err_text(krb_context, problem)); ++ krb5_cc_close(krb_context, ccache); ++ return 0; ++ } ++ ++ if ((problem = krb5_unparse_name(krb_context, principal, &name))) { ++ logit("krb5_unparse_name(): %.100s", ++ krb5_get_err_text(krb_context, problem)); ++ krb5_free_principal(krb_context, principal); ++ krb5_cc_close(krb_context, ccache); ++ return 0; ++ } ++ ++ ++ if (strcmp(name,client->exportedname.value)!=0) { ++ debug("Name in local credentials cache differs. Not storing"); ++ krb5_free_principal(krb_context, principal); ++ krb5_cc_close(krb_context, ccache); ++ krb5_free_unparsed_name(krb_context, name); ++ return 0; ++ } ++ krb5_free_unparsed_name(krb_context, name); ++ ++ /* Name matches, so lets get on with it! */ ++ ++ if ((problem = krb5_cc_initialize(krb_context, ccache, principal))) { ++ logit("krb5_cc_initialize(): %.100s", ++ krb5_get_err_text(krb_context, problem)); ++ krb5_free_principal(krb_context, principal); ++ krb5_cc_close(krb_context, ccache); ++ return 0; ++ } ++ ++ krb5_free_principal(krb_context, principal); ++ ++ if ((maj_status = gss_krb5_copy_ccache(&min_status, client->creds, ++ ccache))) { ++ logit("gss_krb5_copy_ccache() failed. Sorry!"); ++ krb5_cc_close(krb_context, ccache); ++ return 0; ++ } ++ ++ return 1; ++} ++ + ssh_gssapi_mech gssapi_kerberos_mech = { + "toWM5Slw5Ew8Mqkay+al2g==", + "Kerberos", +@@ -191,7 +262,8 @@ + NULL, + &ssh_gssapi_krb5_userok, + NULL, +- &ssh_gssapi_krb5_storecreds ++ &ssh_gssapi_krb5_storecreds, ++ &ssh_gssapi_krb5_updatecreds + }; + + #endif /* KRB5 */ +diff --speed-large-files --minimal -Nru openssh-5.8p1/gss-serv.c openssh-5.8p1.new/gss-serv.c +--- openssh-5.8p1/gss-serv.c 2008-05-19 07:05:07.000000000 +0200 ++++ openssh-5.8p1.new/gss-serv.c 2011-02-12 18:07:11.135178913 +0100 +@@ -1,7 +1,7 @@ + /* $OpenBSD: gss-serv.c,v 1.22 2008/05/08 12:02:23 djm Exp $ */ + + /* +- * Copyright (c) 2001-2003 Simon Wilkinson. All rights reserved. ++ * Copyright (c) 2001-2009 Simon Wilkinson. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions +@@ -45,15 +45,20 @@ + #include "channels.h" + #include "session.h" + #include "misc.h" ++#include "servconf.h" ++#include "uidswap.h" + + #include "ssh-gss.h" ++#include "monitor_wrap.h" ++ ++extern ServerOptions options; + + static ssh_gssapi_client gssapi_client = + { GSS_C_EMPTY_BUFFER, GSS_C_EMPTY_BUFFER, +- GSS_C_NO_CREDENTIAL, NULL, {NULL, NULL, NULL}}; ++ GSS_C_NO_CREDENTIAL, GSS_C_NO_NAME, NULL, {NULL, NULL, NULL}, 0, 0}; + + ssh_gssapi_mech gssapi_null_mech = +- { NULL, NULL, {0, NULL}, NULL, NULL, NULL, NULL}; ++ { NULL, NULL, {0, NULL}, NULL, NULL, NULL, NULL, NULL}; + + #ifdef KRB5 + extern ssh_gssapi_mech gssapi_kerberos_mech; +@@ -81,25 +86,32 @@ + char lname[MAXHOSTNAMELEN]; + gss_OID_set oidset; + +- gss_create_empty_oid_set(&status, &oidset); +- gss_add_oid_set_member(&status, ctx->oid, &oidset); ++ if (options.gss_strict_acceptor) { ++ gss_create_empty_oid_set(&status, &oidset); ++ gss_add_oid_set_member(&status, ctx->oid, &oidset); + +- if (gethostname(lname, MAXHOSTNAMELEN)) { +- gss_release_oid_set(&status, &oidset); +- return (-1); +- } ++ if (gethostname(lname, MAXHOSTNAMELEN)) { ++ gss_release_oid_set(&status, &oidset); ++ return (-1); ++ } ++ ++ if (GSS_ERROR(ssh_gssapi_import_name(ctx, lname))) { ++ gss_release_oid_set(&status, &oidset); ++ return (ctx->major); ++ } ++ ++ if ((ctx->major = gss_acquire_cred(&ctx->minor, ++ ctx->name, 0, oidset, GSS_C_ACCEPT, &ctx->creds, ++ NULL, NULL))) ++ ssh_gssapi_error(ctx); + +- if (GSS_ERROR(ssh_gssapi_import_name(ctx, lname))) { + gss_release_oid_set(&status, &oidset); + return (ctx->major); ++ } else { ++ ctx->name = GSS_C_NO_NAME; ++ ctx->creds = GSS_C_NO_CREDENTIAL; + } +- +- if ((ctx->major = gss_acquire_cred(&ctx->minor, +- ctx->name, 0, oidset, GSS_C_ACCEPT, &ctx->creds, NULL, NULL))) +- ssh_gssapi_error(ctx); +- +- gss_release_oid_set(&status, &oidset); +- return (ctx->major); ++ return GSS_S_COMPLETE; + } + + /* Privileged */ +@@ -114,6 +126,29 @@ + } + + /* Unprivileged */ ++char * ++ssh_gssapi_server_mechanisms() { ++ gss_OID_set supported; ++ ++ ssh_gssapi_supported_oids(&supported); ++ return (ssh_gssapi_kex_mechs(supported, &ssh_gssapi_server_check_mech, ++ NULL, NULL)); ++} ++ ++/* Unprivileged */ ++int ++ssh_gssapi_server_check_mech(Gssctxt **dum, gss_OID oid, const char *data, ++ const char *dummy) { ++ Gssctxt *ctx = NULL; ++ int res; ++ ++ res = !GSS_ERROR(PRIVSEP(ssh_gssapi_server_ctx(&ctx, oid))); ++ ssh_gssapi_delete_ctx(&ctx); ++ ++ return (res); ++} ++ ++/* Unprivileged */ + void + ssh_gssapi_supported_oids(gss_OID_set *oidset) + { +@@ -123,7 +158,9 @@ + gss_OID_set supported; + + gss_create_empty_oid_set(&min_status, oidset); +- gss_indicate_mechs(&min_status, &supported); ++ ++ if (GSS_ERROR(gss_indicate_mechs(&min_status, &supported))) ++ return; + + while (supported_mechs[i]->name != NULL) { + if (GSS_ERROR(gss_test_oid_set_member(&min_status, +@@ -247,8 +284,48 @@ + ssh_gssapi_getclient(Gssctxt *ctx, ssh_gssapi_client *client) + { + int i = 0; ++ int equal = 0; ++ gss_name_t new_name = GSS_C_NO_NAME; ++ gss_buffer_desc ename = GSS_C_EMPTY_BUFFER; + +- gss_buffer_desc ename; ++ if (options.gss_store_rekey && client->used && ctx->client_creds) { ++ if (client->mech->oid.length != ctx->oid->length || ++ (memcmp(client->mech->oid.elements, ++ ctx->oid->elements, ctx->oid->length) !=0)) { ++ debug("Rekeyed credentials have different mechanism"); ++ return GSS_S_COMPLETE; ++ } ++ ++ if ((ctx->major = gss_inquire_cred_by_mech(&ctx->minor, ++ ctx->client_creds, ctx->oid, &new_name, ++ NULL, NULL, NULL))) { ++ ssh_gssapi_error(ctx); ++ return (ctx->major); ++ } ++ ++ ctx->major = gss_compare_name(&ctx->minor, client->name, ++ new_name, &equal); ++ ++ if (GSS_ERROR(ctx->major)) { ++ ssh_gssapi_error(ctx); ++ return (ctx->major); ++ } ++ ++ if (!equal) { ++ debug("Rekeyed credentials have different name"); ++ return GSS_S_COMPLETE; ++ } ++ ++ debug("Marking rekeyed credentials for export"); ++ ++ gss_release_name(&ctx->minor, &client->name); ++ gss_release_cred(&ctx->minor, &client->creds); ++ client->name = new_name; ++ client->creds = ctx->client_creds; ++ ctx->client_creds = GSS_C_NO_CREDENTIAL; ++ client->updated = 1; ++ return GSS_S_COMPLETE; ++ } + + client->mech = NULL; + +@@ -263,6 +340,13 @@ + if (client->mech == NULL) + return GSS_S_FAILURE; + ++ if (ctx->client_creds && ++ (ctx->major = gss_inquire_cred_by_mech(&ctx->minor, ++ ctx->client_creds, ctx->oid, &client->name, NULL, NULL, NULL))) { ++ ssh_gssapi_error(ctx); ++ return (ctx->major); ++ } ++ + if ((ctx->major = gss_display_name(&ctx->minor, ctx->client, + &client->displayname, NULL))) { + ssh_gssapi_error(ctx); +@@ -280,6 +364,8 @@ + return (ctx->major); + } + ++ gss_release_buffer(&ctx->minor, &ename); ++ + /* We can't copy this structure, so we just move the pointer to it */ + client->creds = ctx->client_creds; + ctx->client_creds = GSS_C_NO_CREDENTIAL; +@@ -327,7 +413,7 @@ + + /* Privileged */ + int +-ssh_gssapi_userok(char *user) ++ssh_gssapi_userok(char *user, struct passwd *pw) + { + OM_uint32 lmin; + +@@ -337,9 +423,11 @@ + return 0; + } + if (gssapi_client.mech && gssapi_client.mech->userok) +- if ((*gssapi_client.mech->userok)(&gssapi_client, user)) ++ if ((*gssapi_client.mech->userok)(&gssapi_client, user)) { ++ gssapi_client.used = 1; ++ gssapi_client.store.owner = pw; + return 1; +- else { ++ } else { + /* Destroy delegated credentials if userok fails */ + gss_release_buffer(&lmin, &gssapi_client.displayname); + gss_release_buffer(&lmin, &gssapi_client.exportedname); +@@ -352,14 +440,90 @@ + return (0); + } + +-/* Privileged */ +-OM_uint32 +-ssh_gssapi_checkmic(Gssctxt *ctx, gss_buffer_t gssbuf, gss_buffer_t gssmic) ++/* These bits are only used for rekeying. The unpriviledged child is running ++ * as the user, the monitor is root. ++ * ++ * In the child, we want to : ++ * *) Ask the monitor to store our credentials into the store we specify ++ * *) If it succeeds, maybe do a PAM update ++ */ ++ ++/* Stuff for PAM */ ++ ++#ifdef USE_PAM ++static int ssh_gssapi_simple_conv(int n, const struct pam_message **msg, ++ struct pam_response **resp, void *data) + { +- ctx->major = gss_verify_mic(&ctx->minor, ctx->context, +- gssbuf, gssmic, NULL); ++ return (PAM_CONV_ERR); ++} ++#endif + +- return (ctx->major); ++void ++ssh_gssapi_rekey_creds() { ++ int ok; ++ int ret; ++#ifdef USE_PAM ++ pam_handle_t *pamh = NULL; ++ struct pam_conv pamconv = {ssh_gssapi_simple_conv, NULL}; ++ char *envstr; ++#endif ++ ++ if (gssapi_client.store.filename == NULL && ++ gssapi_client.store.envval == NULL && ++ gssapi_client.store.envvar == NULL) ++ return; ++ ++ ok = PRIVSEP(ssh_gssapi_update_creds(&gssapi_client.store)); ++ ++ if (!ok) ++ return; ++ ++ debug("Rekeyed credentials stored successfully"); ++ ++ /* Actually managing to play with the ssh pam stack from here will ++ * be next to impossible. In any case, we may want different options ++ * for rekeying. So, use our own :) ++ */ ++#ifdef USE_PAM ++ if (!use_privsep) { ++ debug("Not even going to try and do PAM with privsep disabled"); ++ return; ++ } ++ ++ ret = pam_start("sshd-rekey", gssapi_client.store.owner->pw_name, ++ &pamconv, &pamh); ++ if (ret) ++ return; ++ ++ xasprintf(&envstr, "%s=%s", gssapi_client.store.envvar, ++ gssapi_client.store.envval); ++ ++ ret = pam_putenv(pamh, envstr); ++ if (!ret) ++ pam_setcred(pamh, PAM_REINITIALIZE_CRED); ++ pam_end(pamh, PAM_SUCCESS); ++#endif ++} ++ ++int ++ssh_gssapi_update_creds(ssh_gssapi_ccache *store) { ++ int ok = 0; ++ ++ /* Check we've got credentials to store */ ++ if (!gssapi_client.updated) ++ return 0; ++ ++ gssapi_client.updated = 0; ++ ++ temporarily_use_uid(gssapi_client.store.owner); ++ if (gssapi_client.mech && gssapi_client.mech->updatecreds) ++ ok = (*gssapi_client.mech->updatecreds)(store, &gssapi_client); ++ else ++ debug("No update function for this mechanism"); ++ ++ restore_uid(); ++ ++ return ok; + } + + #endif +diff --speed-large-files --minimal -Nru openssh-5.8p1/kex.c openssh-5.8p1.new/kex.c +--- openssh-5.8p1/kex.c 2010-09-24 14:11:14.000000000 +0200 ++++ openssh-5.8p1.new/kex.c 2011-02-12 18:07:11.149564726 +0100 +@@ -50,6 +50,10 @@ + #include "monitor.h" + #include "roaming.h" + ++#ifdef GSSAPI ++#include "ssh-gss.h" ++#endif ++ + #if OPENSSL_VERSION_NUMBER >= 0x00907000L + # if defined(HAVE_EVP_SHA256) + # define evp_ssh_sha256 EVP_sha256 +@@ -358,6 +362,20 @@ + k->kex_type = KEX_ECDH_SHA2; + k->evp_md = kex_ecdh_name_to_evpmd(k->name); + #endif ++#ifdef GSSAPI ++ } else if (strncmp(k->name, KEX_GSS_GEX_SHA1_ID, ++ sizeof(KEX_GSS_GEX_SHA1_ID) - 1) == 0) { ++ k->kex_type = KEX_GSS_GEX_SHA1; ++ k->evp_md = EVP_sha1(); ++ } else if (strncmp(k->name, KEX_GSS_GRP1_SHA1_ID, ++ sizeof(KEX_GSS_GRP1_SHA1_ID) - 1) == 0) { ++ k->kex_type = KEX_GSS_GRP1_SHA1; ++ k->evp_md = EVP_sha1(); ++ } else if (strncmp(k->name, KEX_GSS_GRP14_SHA1_ID, ++ sizeof(KEX_GSS_GRP14_SHA1_ID) - 1) == 0) { ++ k->kex_type = KEX_GSS_GRP14_SHA1; ++ k->evp_md = EVP_sha1(); ++#endif + } else + fatal("bad kex alg %s", k->name); + } +diff --speed-large-files --minimal -Nru openssh-5.8p1/kex.h openssh-5.8p1.new/kex.h +--- openssh-5.8p1/kex.h 2010-09-24 14:11:14.000000000 +0200 ++++ openssh-5.8p1.new/kex.h 2011-02-12 18:07:11.161650596 +0100 +@@ -73,6 +73,9 @@ + KEX_DH_GEX_SHA1, + KEX_DH_GEX_SHA256, + KEX_ECDH_SHA2, ++ KEX_GSS_GRP1_SHA1, ++ KEX_GSS_GRP14_SHA1, ++ KEX_GSS_GEX_SHA1, + KEX_MAX + }; + +@@ -129,6 +132,12 @@ + sig_atomic_t done; + int flags; + const EVP_MD *evp_md; ++#ifdef GSSAPI ++ int gss_deleg_creds; ++ int gss_trust_dns; ++ char *gss_host; ++ char *gss_client; ++#endif + char *client_version_string; + char *server_version_string; + int (*verify_host_key)(Key *); +@@ -156,6 +165,11 @@ + void kexecdh_client(Kex *); + void kexecdh_server(Kex *); + ++#ifdef GSSAPI ++void kexgss_client(Kex *); ++void kexgss_server(Kex *); ++#endif ++ + void + kex_dh_hash(char *, char *, char *, int, char *, int, u_char *, int, + BIGNUM *, BIGNUM *, BIGNUM *, u_char **, u_int *); +diff --speed-large-files --minimal -Nru openssh-5.8p1/kexgssc.c openssh-5.8p1.new/kexgssc.c +--- openssh-5.8p1/kexgssc.c 1970-01-01 01:00:00.000000000 +0100 ++++ openssh-5.8p1.new/kexgssc.c 2011-02-12 18:07:11.176741991 +0100 +@@ -0,0 +1,334 @@ ++/* ++ * Copyright (c) 2001-2009 Simon Wilkinson. All rights reserved. ++ * ++ * Redistribution and use in source and binary forms, with or without ++ * modification, are permitted provided that the following conditions ++ * are met: ++ * 1. Redistributions of source code must retain the above copyright ++ * notice, this list of conditions and the following disclaimer. ++ * 2. Redistributions in binary form must reproduce the above copyright ++ * notice, this list of conditions and the following disclaimer in the ++ * documentation and/or other materials provided with the distribution. ++ * ++ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR `AS IS'' AND ANY EXPRESS OR ++ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES ++ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. ++ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, ++ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT ++ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, ++ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY ++ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ++ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF ++ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ++ */ ++ ++#include "includes.h" ++ ++#ifdef GSSAPI ++ ++#include "includes.h" ++ ++#include ++#include ++ ++#include ++ ++#include "xmalloc.h" ++#include "buffer.h" ++#include "ssh2.h" ++#include "key.h" ++#include "cipher.h" ++#include "kex.h" ++#include "log.h" ++#include "packet.h" ++#include "dh.h" ++ ++#include "ssh-gss.h" ++ ++void ++kexgss_client(Kex *kex) { ++ gss_buffer_desc send_tok = GSS_C_EMPTY_BUFFER; ++ gss_buffer_desc recv_tok, gssbuf, msg_tok, *token_ptr; ++ Gssctxt *ctxt; ++ OM_uint32 maj_status, min_status, ret_flags; ++ u_int klen, kout, slen = 0, hashlen, strlen; ++ DH *dh; ++ BIGNUM *dh_server_pub = NULL; ++ BIGNUM *shared_secret = NULL; ++ BIGNUM *p = NULL; ++ BIGNUM *g = NULL; ++ u_char *kbuf, *hash; ++ u_char *serverhostkey = NULL; ++ u_char *empty = ""; ++ char *msg; ++ char *lang; ++ int type = 0; ++ int first = 1; ++ int nbits = 0, min = DH_GRP_MIN, max = DH_GRP_MAX; ++ ++ /* Initialise our GSSAPI world */ ++ ssh_gssapi_build_ctx(&ctxt); ++ if (ssh_gssapi_id_kex(ctxt, kex->name, kex->kex_type) ++ == GSS_C_NO_OID) ++ fatal("Couldn't identify host exchange"); ++ ++ if (ssh_gssapi_import_name(ctxt, kex->gss_host)) ++ fatal("Couldn't import hostname"); ++ ++ if (kex->gss_client && ++ ssh_gssapi_client_identity(ctxt, kex->gss_client)) ++ fatal("Couldn't acquire client credentials"); ++ ++ switch (kex->kex_type) { ++ case KEX_GSS_GRP1_SHA1: ++ dh = dh_new_group1(); ++ break; ++ case KEX_GSS_GRP14_SHA1: ++ dh = dh_new_group14(); ++ break; ++ case KEX_GSS_GEX_SHA1: ++ debug("Doing group exchange\n"); ++ nbits = dh_estimate(kex->we_need * 8); ++ packet_start(SSH2_MSG_KEXGSS_GROUPREQ); ++ packet_put_int(min); ++ packet_put_int(nbits); ++ packet_put_int(max); ++ ++ packet_send(); ++ ++ packet_read_expect(SSH2_MSG_KEXGSS_GROUP); ++ ++ if ((p = BN_new()) == NULL) ++ fatal("BN_new() failed"); ++ packet_get_bignum2(p); ++ if ((g = BN_new()) == NULL) ++ fatal("BN_new() failed"); ++ packet_get_bignum2(g); ++ packet_check_eom(); ++ ++ if (BN_num_bits(p) < min || BN_num_bits(p) > max) ++ fatal("GSSGRP_GEX group out of range: %d !< %d !< %d", ++ min, BN_num_bits(p), max); ++ ++ dh = dh_new_group(g, p); ++ break; ++ default: ++ fatal("%s: Unexpected KEX type %d", __func__, kex->kex_type); ++ } ++ ++ /* Step 1 - e is dh->pub_key */ ++ dh_gen_key(dh, kex->we_need * 8); ++ ++ /* This is f, we initialise it now to make life easier */ ++ dh_server_pub = BN_new(); ++ if (dh_server_pub == NULL) ++ fatal("dh_server_pub == NULL"); ++ ++ token_ptr = GSS_C_NO_BUFFER; ++ ++ do { ++ debug("Calling gss_init_sec_context"); ++ ++ maj_status = ssh_gssapi_init_ctx(ctxt, ++ kex->gss_deleg_creds, token_ptr, &send_tok, ++ &ret_flags); ++ ++ if (GSS_ERROR(maj_status)) { ++ if (send_tok.length != 0) { ++ packet_start(SSH2_MSG_KEXGSS_CONTINUE); ++ packet_put_string(send_tok.value, ++ send_tok.length); ++ } ++ fatal("gss_init_context failed"); ++ } ++ ++ /* If we've got an old receive buffer get rid of it */ ++ if (token_ptr != GSS_C_NO_BUFFER) ++ xfree(recv_tok.value); ++ ++ if (maj_status == GSS_S_COMPLETE) { ++ /* If mutual state flag is not true, kex fails */ ++ if (!(ret_flags & GSS_C_MUTUAL_FLAG)) ++ fatal("Mutual authentication failed"); ++ ++ /* If integ avail flag is not true kex fails */ ++ if (!(ret_flags & GSS_C_INTEG_FLAG)) ++ fatal("Integrity check failed"); ++ } ++ ++ /* ++ * If we have data to send, then the last message that we ++ * received cannot have been a 'complete'. ++ */ ++ if (send_tok.length != 0) { ++ if (first) { ++ packet_start(SSH2_MSG_KEXGSS_INIT); ++ packet_put_string(send_tok.value, ++ send_tok.length); ++ packet_put_bignum2(dh->pub_key); ++ first = 0; ++ } else { ++ packet_start(SSH2_MSG_KEXGSS_CONTINUE); ++ packet_put_string(send_tok.value, ++ send_tok.length); ++ } ++ packet_send(); ++ gss_release_buffer(&min_status, &send_tok); ++ ++ /* If we've sent them data, they should reply */ ++ do { ++ type = packet_read(); ++ if (type == SSH2_MSG_KEXGSS_HOSTKEY) { ++ debug("Received KEXGSS_HOSTKEY"); ++ if (serverhostkey) ++ fatal("Server host key received more than once"); ++ serverhostkey = ++ packet_get_string(&slen); ++ } ++ } while (type == SSH2_MSG_KEXGSS_HOSTKEY); ++ ++ switch (type) { ++ case SSH2_MSG_KEXGSS_CONTINUE: ++ debug("Received GSSAPI_CONTINUE"); ++ if (maj_status == GSS_S_COMPLETE) ++ fatal("GSSAPI Continue received from server when complete"); ++ recv_tok.value = packet_get_string(&strlen); ++ recv_tok.length = strlen; ++ break; ++ case SSH2_MSG_KEXGSS_COMPLETE: ++ debug("Received GSSAPI_COMPLETE"); ++ packet_get_bignum2(dh_server_pub); ++ msg_tok.value = packet_get_string(&strlen); ++ msg_tok.length = strlen; ++ ++ /* Is there a token included? */ ++ if (packet_get_char()) { ++ recv_tok.value= ++ packet_get_string(&strlen); ++ recv_tok.length = strlen; ++ /* If we're already complete - protocol error */ ++ if (maj_status == GSS_S_COMPLETE) ++ packet_disconnect("Protocol error: received token when complete"); ++ } else { ++ /* No token included */ ++ if (maj_status != GSS_S_COMPLETE) ++ packet_disconnect("Protocol error: did not receive final token"); ++ } ++ break; ++ case SSH2_MSG_KEXGSS_ERROR: ++ debug("Received Error"); ++ maj_status = packet_get_int(); ++ min_status = packet_get_int(); ++ msg = packet_get_string(NULL); ++ lang = packet_get_string(NULL); ++ fatal("GSSAPI Error: \n%.400s",msg); ++ default: ++ packet_disconnect("Protocol error: didn't expect packet type %d", ++ type); ++ } ++ token_ptr = &recv_tok; ++ } else { ++ /* No data, and not complete */ ++ if (maj_status != GSS_S_COMPLETE) ++ fatal("Not complete, and no token output"); ++ } ++ } while (maj_status & GSS_S_CONTINUE_NEEDED); ++ ++ /* ++ * We _must_ have received a COMPLETE message in reply from the ++ * server, which will have set dh_server_pub and msg_tok ++ */ ++ ++ if (type != SSH2_MSG_KEXGSS_COMPLETE) ++ fatal("Didn't receive a SSH2_MSG_KEXGSS_COMPLETE when I expected it"); ++ ++ /* Check f in range [1, p-1] */ ++ if (!dh_pub_is_valid(dh, dh_server_pub)) ++ packet_disconnect("bad server public DH value"); ++ ++ /* compute K=f^x mod p */ ++ klen = DH_size(dh); ++ kbuf = xmalloc(klen); ++ kout = DH_compute_key(kbuf, dh_server_pub, dh); ++ if (kout < 0) ++ fatal("DH_compute_key: failed"); ++ ++ shared_secret = BN_new(); ++ if (shared_secret == NULL) ++ fatal("kexgss_client: BN_new failed"); ++ ++ if (BN_bin2bn(kbuf, kout, shared_secret) == NULL) ++ fatal("kexdh_client: BN_bin2bn failed"); ++ ++ memset(kbuf, 0, klen); ++ xfree(kbuf); ++ ++ switch (kex->kex_type) { ++ case KEX_GSS_GRP1_SHA1: ++ case KEX_GSS_GRP14_SHA1: ++ kex_dh_hash( kex->client_version_string, ++ kex->server_version_string, ++ buffer_ptr(&kex->my), buffer_len(&kex->my), ++ buffer_ptr(&kex->peer), buffer_len(&kex->peer), ++ (serverhostkey ? serverhostkey : empty), slen, ++ dh->pub_key, /* e */ ++ dh_server_pub, /* f */ ++ shared_secret, /* K */ ++ &hash, &hashlen ++ ); ++ break; ++ case KEX_GSS_GEX_SHA1: ++ kexgex_hash( ++ kex->evp_md, ++ kex->client_version_string, ++ kex->server_version_string, ++ buffer_ptr(&kex->my), buffer_len(&kex->my), ++ buffer_ptr(&kex->peer), buffer_len(&kex->peer), ++ (serverhostkey ? serverhostkey : empty), slen, ++ min, nbits, max, ++ dh->p, dh->g, ++ dh->pub_key, ++ dh_server_pub, ++ shared_secret, ++ &hash, &hashlen ++ ); ++ break; ++ default: ++ fatal("%s: Unexpected KEX type %d", __func__, kex->kex_type); ++ } ++ ++ gssbuf.value = hash; ++ gssbuf.length = hashlen; ++ ++ /* Verify that the hash matches the MIC we just got. */ ++ if (GSS_ERROR(ssh_gssapi_checkmic(ctxt, &gssbuf, &msg_tok))) ++ packet_disconnect("Hash's MIC didn't verify"); ++ ++ xfree(msg_tok.value); ++ ++ DH_free(dh); ++ if (serverhostkey) ++ xfree(serverhostkey); ++ BN_clear_free(dh_server_pub); ++ ++ /* save session id */ ++ if (kex->session_id == NULL) { ++ kex->session_id_len = hashlen; ++ kex->session_id = xmalloc(kex->session_id_len); ++ memcpy(kex->session_id, hash, kex->session_id_len); ++ } ++ ++ if (kex->gss_deleg_creds) ++ ssh_gssapi_credentials_updated(ctxt); ++ ++ if (gss_kex_context == NULL) ++ gss_kex_context = ctxt; ++ else ++ ssh_gssapi_delete_ctx(&ctxt); ++ ++ kex_derive_keys(kex, hash, hashlen, shared_secret); ++ BN_clear_free(shared_secret); ++ kex_finish(kex); ++} ++ ++#endif /* GSSAPI */ +diff --speed-large-files --minimal -Nru openssh-5.8p1/kexgsss.c openssh-5.8p1.new/kexgsss.c +--- openssh-5.8p1/kexgsss.c 1970-01-01 01:00:00.000000000 +0100 ++++ openssh-5.8p1.new/kexgsss.c 2011-02-12 18:07:11.186584789 +0100 +@@ -0,0 +1,288 @@ ++/* ++ * Copyright (c) 2001-2009 Simon Wilkinson. All rights reserved. ++ * ++ * Redistribution and use in source and binary forms, with or without ++ * modification, are permitted provided that the following conditions ++ * are met: ++ * 1. Redistributions of source code must retain the above copyright ++ * notice, this list of conditions and the following disclaimer. ++ * 2. Redistributions in binary form must reproduce the above copyright ++ * notice, this list of conditions and the following disclaimer in the ++ * documentation and/or other materials provided with the distribution. ++ * ++ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR `AS IS'' AND ANY EXPRESS OR ++ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES ++ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. ++ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, ++ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT ++ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, ++ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY ++ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ++ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF ++ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ++ */ ++ ++#include "includes.h" ++ ++#ifdef GSSAPI ++ ++#include ++ ++#include ++#include ++ ++#include "xmalloc.h" ++#include "buffer.h" ++#include "ssh2.h" ++#include "key.h" ++#include "cipher.h" ++#include "kex.h" ++#include "log.h" ++#include "packet.h" ++#include "dh.h" ++#include "ssh-gss.h" ++#include "monitor_wrap.h" ++#include "servconf.h" ++ ++extern ServerOptions options; ++ ++void ++kexgss_server(Kex *kex) ++{ ++ OM_uint32 maj_status, min_status; ++ ++ /* ++ * Some GSSAPI implementations use the input value of ret_flags (an ++ * output variable) as a means of triggering mechanism specific ++ * features. Initializing it to zero avoids inadvertently ++ * activating this non-standard behaviour. ++ */ ++ ++ OM_uint32 ret_flags = 0; ++ gss_buffer_desc gssbuf, recv_tok, msg_tok; ++ gss_buffer_desc send_tok = GSS_C_EMPTY_BUFFER; ++ Gssctxt *ctxt = NULL; ++ u_int slen, klen, kout, hashlen; ++ u_char *kbuf, *hash; ++ DH *dh; ++ int min = -1, max = -1, nbits = -1; ++ BIGNUM *shared_secret = NULL; ++ BIGNUM *dh_client_pub = NULL; ++ int type = 0; ++ gss_OID oid; ++ char *mechs; ++ ++ /* Initialise GSSAPI */ ++ ++ /* If we're rekeying, privsep means that some of the private structures ++ * in the GSSAPI code are no longer available. This kludges them back ++ * into life ++ */ ++ if (!ssh_gssapi_oid_table_ok()) ++ if ((mechs = ssh_gssapi_server_mechanisms())) ++ xfree(mechs); ++ ++ debug2("%s: Identifying %s", __func__, kex->name); ++ oid = ssh_gssapi_id_kex(NULL, kex->name, kex->kex_type); ++ if (oid == GSS_C_NO_OID) ++ fatal("Unknown gssapi mechanism"); ++ ++ debug2("%s: Acquiring credentials", __func__); ++ ++ if (GSS_ERROR(PRIVSEP(ssh_gssapi_server_ctx(&ctxt, oid)))) ++ fatal("Unable to acquire credentials for the server"); ++ ++ switch (kex->kex_type) { ++ case KEX_GSS_GRP1_SHA1: ++ dh = dh_new_group1(); ++ break; ++ case KEX_GSS_GRP14_SHA1: ++ dh = dh_new_group14(); ++ break; ++ case KEX_GSS_GEX_SHA1: ++ debug("Doing group exchange"); ++ packet_read_expect(SSH2_MSG_KEXGSS_GROUPREQ); ++ min = packet_get_int(); ++ nbits = packet_get_int(); ++ max = packet_get_int(); ++ min = MAX(DH_GRP_MIN, min); ++ max = MIN(DH_GRP_MAX, max); ++ packet_check_eom(); ++ if (max < min || nbits < min || max < nbits) ++ fatal("GSS_GEX, bad parameters: %d !< %d !< %d", ++ min, nbits, max); ++ dh = PRIVSEP(choose_dh(min, nbits, max)); ++ if (dh == NULL) ++ packet_disconnect("Protocol error: no matching group found"); ++ ++ packet_start(SSH2_MSG_KEXGSS_GROUP); ++ packet_put_bignum2(dh->p); ++ packet_put_bignum2(dh->g); ++ packet_send(); ++ ++ packet_write_wait(); ++ break; ++ default: ++ fatal("%s: Unexpected KEX type %d", __func__, kex->kex_type); ++ } ++ ++ dh_gen_key(dh, kex->we_need * 8); ++ ++ do { ++ debug("Wait SSH2_MSG_GSSAPI_INIT"); ++ type = packet_read(); ++ switch(type) { ++ case SSH2_MSG_KEXGSS_INIT: ++ if (dh_client_pub != NULL) ++ fatal("Received KEXGSS_INIT after initialising"); ++ recv_tok.value = packet_get_string(&slen); ++ recv_tok.length = slen; ++ ++ if ((dh_client_pub = BN_new()) == NULL) ++ fatal("dh_client_pub == NULL"); ++ ++ packet_get_bignum2(dh_client_pub); ++ ++ /* Send SSH_MSG_KEXGSS_HOSTKEY here, if we want */ ++ break; ++ case SSH2_MSG_KEXGSS_CONTINUE: ++ recv_tok.value = packet_get_string(&slen); ++ recv_tok.length = slen; ++ break; ++ default: ++ packet_disconnect( ++ "Protocol error: didn't expect packet type %d", ++ type); ++ } ++ ++ maj_status = PRIVSEP(ssh_gssapi_accept_ctx(ctxt, &recv_tok, ++ &send_tok, &ret_flags)); ++ ++ xfree(recv_tok.value); ++ ++ if (maj_status != GSS_S_COMPLETE && send_tok.length == 0) ++ fatal("Zero length token output when incomplete"); ++ ++ if (dh_client_pub == NULL) ++ fatal("No client public key"); ++ ++ if (maj_status & GSS_S_CONTINUE_NEEDED) { ++ debug("Sending GSSAPI_CONTINUE"); ++ packet_start(SSH2_MSG_KEXGSS_CONTINUE); ++ packet_put_string(send_tok.value, send_tok.length); ++ packet_send(); ++ gss_release_buffer(&min_status, &send_tok); ++ } ++ } while (maj_status & GSS_S_CONTINUE_NEEDED); ++ ++ if (GSS_ERROR(maj_status)) { ++ if (send_tok.length > 0) { ++ packet_start(SSH2_MSG_KEXGSS_CONTINUE); ++ packet_put_string(send_tok.value, send_tok.length); ++ packet_send(); ++ } ++ fatal("accept_ctx died"); ++ } ++ ++ if (!(ret_flags & GSS_C_MUTUAL_FLAG)) ++ fatal("Mutual Authentication flag wasn't set"); ++ ++ if (!(ret_flags & GSS_C_INTEG_FLAG)) ++ fatal("Integrity flag wasn't set"); ++ ++ if (!dh_pub_is_valid(dh, dh_client_pub)) ++ packet_disconnect("bad client public DH value"); ++ ++ klen = DH_size(dh); ++ kbuf = xmalloc(klen); ++ kout = DH_compute_key(kbuf, dh_client_pub, dh); ++ if (kout < 0) ++ fatal("DH_compute_key: failed"); ++ ++ shared_secret = BN_new(); ++ if (shared_secret == NULL) ++ fatal("kexgss_server: BN_new failed"); ++ ++ if (BN_bin2bn(kbuf, kout, shared_secret) == NULL) ++ fatal("kexgss_server: BN_bin2bn failed"); ++ ++ memset(kbuf, 0, klen); ++ xfree(kbuf); ++ ++ switch (kex->kex_type) { ++ case KEX_GSS_GRP1_SHA1: ++ case KEX_GSS_GRP14_SHA1: ++ kex_dh_hash( ++ kex->client_version_string, kex->server_version_string, ++ buffer_ptr(&kex->peer), buffer_len(&kex->peer), ++ buffer_ptr(&kex->my), buffer_len(&kex->my), ++ NULL, 0, /* Change this if we start sending host keys */ ++ dh_client_pub, dh->pub_key, shared_secret, ++ &hash, &hashlen ++ ); ++ break; ++ case KEX_GSS_GEX_SHA1: ++ kexgex_hash( ++ kex->evp_md, ++ kex->client_version_string, kex->server_version_string, ++ buffer_ptr(&kex->peer), buffer_len(&kex->peer), ++ buffer_ptr(&kex->my), buffer_len(&kex->my), ++ NULL, 0, ++ min, nbits, max, ++ dh->p, dh->g, ++ dh_client_pub, ++ dh->pub_key, ++ shared_secret, ++ &hash, &hashlen ++ ); ++ break; ++ default: ++ fatal("%s: Unexpected KEX type %d", __func__, kex->kex_type); ++ } ++ ++ BN_clear_free(dh_client_pub); ++ ++ if (kex->session_id == NULL) { ++ kex->session_id_len = hashlen; ++ kex->session_id = xmalloc(kex->session_id_len); ++ memcpy(kex->session_id, hash, kex->session_id_len); ++ } ++ ++ gssbuf.value = hash; ++ gssbuf.length = hashlen; ++ ++ if (GSS_ERROR(PRIVSEP(ssh_gssapi_sign(ctxt,&gssbuf,&msg_tok)))) ++ fatal("Couldn't get MIC"); ++ ++ packet_start(SSH2_MSG_KEXGSS_COMPLETE); ++ packet_put_bignum2(dh->pub_key); ++ packet_put_string(msg_tok.value,msg_tok.length); ++ ++ if (send_tok.length != 0) { ++ packet_put_char(1); /* true */ ++ packet_put_string(send_tok.value, send_tok.length); ++ } else { ++ packet_put_char(0); /* false */ ++ } ++ packet_send(); ++ ++ gss_release_buffer(&min_status, &send_tok); ++ gss_release_buffer(&min_status, &msg_tok); ++ ++ if (gss_kex_context == NULL) ++ gss_kex_context = ctxt; ++ else ++ ssh_gssapi_delete_ctx(&ctxt); ++ ++ DH_free(dh); ++ ++ kex_derive_keys(kex, hash, hashlen, shared_secret); ++ BN_clear_free(shared_secret); ++ kex_finish(kex); ++ ++ /* If this was a rekey, then save out any delegated credentials we ++ * just exchanged. */ ++ if (options.gss_store_rekey) ++ ssh_gssapi_rekey_creds(); ++} ++#endif /* GSSAPI */ +diff --speed-large-files --minimal -Nru openssh-5.8p1/key.c openssh-5.8p1.new/key.c +--- openssh-5.8p1/key.c 2011-02-04 01:48:34.000000000 +0100 ++++ openssh-5.8p1.new/key.c 2011-02-12 18:07:11.202089386 +0100 +@@ -971,6 +971,8 @@ + } + break; + #endif /* OPENSSL_HAS_ECC */ ++ case KEY_NULL: ++ return "null"; + } + return "ssh-unknown"; + } +@@ -1276,6 +1278,8 @@ + strcmp(name, "ecdsa-sha2-nistp521-cert-v01 at openssh.com") == 0) { + return KEY_ECDSA_CERT; + #endif ++ } else if (strcmp(name, "null") == 0) { ++ return KEY_NULL; + } + + debug2("key_type_from_name: unknown key type '%s'", name); +diff --speed-large-files --minimal -Nru openssh-5.8p1/key.h openssh-5.8p1.new/key.h +--- openssh-5.8p1/key.h 2010-11-05 00:19:49.000000000 +0100 ++++ openssh-5.8p1.new/key.h 2011-02-12 18:07:11.216270794 +0100 +@@ -44,6 +44,7 @@ + KEY_ECDSA_CERT, + KEY_RSA_CERT_V00, + KEY_DSA_CERT_V00, ++ KEY_NULL, + KEY_UNSPEC + }; + enum fp_type { +diff --speed-large-files --minimal -Nru openssh-5.8p1/monitor.c openssh-5.8p1.new/monitor.c +--- openssh-5.8p1/monitor.c 2010-09-10 03:23:34.000000000 +0200 ++++ openssh-5.8p1.new/monitor.c 2011-02-12 18:07:11.241713537 +0100 +@@ -172,6 +172,8 @@ + int mm_answer_gss_accept_ctx(int, Buffer *); + int mm_answer_gss_userok(int, Buffer *); + int mm_answer_gss_checkmic(int, Buffer *); ++int mm_answer_gss_sign(int, Buffer *); ++int mm_answer_gss_updatecreds(int, Buffer *); + #endif + + #ifdef SSH_AUDIT_EVENTS +@@ -241,6 +243,7 @@ + {MONITOR_REQ_GSSSTEP, MON_ISAUTH, mm_answer_gss_accept_ctx}, + {MONITOR_REQ_GSSUSEROK, MON_AUTH, mm_answer_gss_userok}, + {MONITOR_REQ_GSSCHECKMIC, MON_ISAUTH, mm_answer_gss_checkmic}, ++ {MONITOR_REQ_GSSSIGN, MON_ONCE, mm_answer_gss_sign}, + #endif + #ifdef JPAKE + {MONITOR_REQ_JPAKE_GET_PWDATA, MON_ONCE, mm_answer_jpake_get_pwdata}, +@@ -253,6 +256,12 @@ + }; + + struct mon_table mon_dispatch_postauth20[] = { ++#ifdef GSSAPI ++ {MONITOR_REQ_GSSSETUP, 0, mm_answer_gss_setup_ctx}, ++ {MONITOR_REQ_GSSSTEP, 0, mm_answer_gss_accept_ctx}, ++ {MONITOR_REQ_GSSSIGN, 0, mm_answer_gss_sign}, ++ {MONITOR_REQ_GSSUPCREDS, 0, mm_answer_gss_updatecreds}, ++#endif + {MONITOR_REQ_MODULI, 0, mm_answer_moduli}, + {MONITOR_REQ_SIGN, 0, mm_answer_sign}, + {MONITOR_REQ_PTY, 0, mm_answer_pty}, +@@ -357,6 +366,10 @@ + /* Permit requests for moduli and signatures */ + monitor_permit(mon_dispatch, MONITOR_REQ_MODULI, 1); + monitor_permit(mon_dispatch, MONITOR_REQ_SIGN, 1); ++#ifdef GSSAPI ++ /* and for the GSSAPI key exchange */ ++ monitor_permit(mon_dispatch, MONITOR_REQ_GSSSETUP, 1); ++#endif + } else { + mon_dispatch = mon_dispatch_proto15; + +@@ -443,6 +456,10 @@ + monitor_permit(mon_dispatch, MONITOR_REQ_MODULI, 1); + monitor_permit(mon_dispatch, MONITOR_REQ_SIGN, 1); + monitor_permit(mon_dispatch, MONITOR_REQ_TERM, 1); ++#ifdef GSSAPI ++ /* and for the GSSAPI key exchange */ ++ monitor_permit(mon_dispatch, MONITOR_REQ_GSSSETUP, 1); ++#endif + } else { + mon_dispatch = mon_dispatch_postauth15; + monitor_permit(mon_dispatch, MONITOR_REQ_TERM, 1); +@@ -1692,6 +1709,13 @@ + kex->kex[KEX_DH_GEX_SHA1] = kexgex_server; + kex->kex[KEX_DH_GEX_SHA256] = kexgex_server; + kex->kex[KEX_ECDH_SHA2] = kexecdh_server; ++#ifdef GSSAPI ++ if (options.gss_keyex) { ++ kex->kex[KEX_GSS_GRP1_SHA1] = kexgss_server; ++ kex->kex[KEX_GSS_GRP14_SHA1] = kexgss_server; ++ kex->kex[KEX_GSS_GEX_SHA1] = kexgss_server; ++ } ++#endif + kex->server = 1; + kex->hostkey_type = buffer_get_int(m); + kex->kex_type = buffer_get_int(m); +@@ -1898,6 +1922,9 @@ + OM_uint32 major; + u_int len; + ++ if (!options.gss_authentication && !options.gss_keyex) ++ fatal("In GSSAPI monitor when GSSAPI is disabled"); ++ + goid.elements = buffer_get_string(m, &len); + goid.length = len; + +@@ -1925,6 +1952,9 @@ + OM_uint32 flags = 0; /* GSI needs this */ + u_int len; + ++ if (!options.gss_authentication && !options.gss_keyex) ++ fatal("In GSSAPI monitor when GSSAPI is disabled"); ++ + in.value = buffer_get_string(m, &len); + in.length = len; + major = ssh_gssapi_accept_ctx(gsscontext, &in, &out, &flags); +@@ -1942,6 +1972,7 @@ + monitor_permit(mon_dispatch, MONITOR_REQ_GSSSTEP, 0); + monitor_permit(mon_dispatch, MONITOR_REQ_GSSUSEROK, 1); + monitor_permit(mon_dispatch, MONITOR_REQ_GSSCHECKMIC, 1); ++ monitor_permit(mon_dispatch, MONITOR_REQ_GSSSIGN, 1); + } + return (0); + } +@@ -1953,6 +1984,9 @@ + OM_uint32 ret; + u_int len; + ++ if (!options.gss_authentication && !options.gss_keyex) ++ fatal("In GSSAPI monitor when GSSAPI is disabled"); ++ + gssbuf.value = buffer_get_string(m, &len); + gssbuf.length = len; + mic.value = buffer_get_string(m, &len); +@@ -1979,7 +2013,11 @@ + { + int authenticated; + +- authenticated = authctxt->valid && ssh_gssapi_userok(authctxt->user); ++ if (!options.gss_authentication && !options.gss_keyex) ++ fatal("In GSSAPI monitor when GSSAPI is disabled"); ++ ++ authenticated = authctxt->valid && ++ ssh_gssapi_userok(authctxt->user, authctxt->pw); + + buffer_clear(m); + buffer_put_int(m, authenticated); +@@ -1992,6 +2030,74 @@ + /* Monitor loop will terminate if authenticated */ + return (authenticated); + } ++ ++int ++mm_answer_gss_sign(int socket, Buffer *m) ++{ ++ gss_buffer_desc data; ++ gss_buffer_desc hash = GSS_C_EMPTY_BUFFER; ++ OM_uint32 major, minor; ++ u_int len; ++ ++ if (!options.gss_authentication && !options.gss_keyex) ++ fatal("In GSSAPI monitor when GSSAPI is disabled"); ++ ++ data.value = buffer_get_string(m, &len); ++ data.length = len; ++ if (data.length != 20) ++ fatal("%s: data length incorrect: %d", __func__, ++ (int) data.length); ++ ++ /* Save the session ID on the first time around */ ++ if (session_id2_len == 0) { ++ session_id2_len = data.length; ++ session_id2 = xmalloc(session_id2_len); ++ memcpy(session_id2, data.value, session_id2_len); ++ } ++ major = ssh_gssapi_sign(gsscontext, &data, &hash); ++ ++ xfree(data.value); ++ ++ buffer_clear(m); ++ buffer_put_int(m, major); ++ buffer_put_string(m, hash.value, hash.length); ++ ++ mm_request_send(socket, MONITOR_ANS_GSSSIGN, m); ++ ++ gss_release_buffer(&minor, &hash); ++ ++ /* Turn on getpwnam permissions */ ++ monitor_permit(mon_dispatch, MONITOR_REQ_PWNAM, 1); ++ ++ /* And credential updating, for when rekeying */ ++ monitor_permit(mon_dispatch, MONITOR_REQ_GSSUPCREDS, 1); ++ ++ return (0); ++} ++ ++int ++mm_answer_gss_updatecreds(int socket, Buffer *m) { ++ ssh_gssapi_ccache store; ++ int ok; ++ ++ store.filename = buffer_get_string(m, NULL); ++ store.envvar = buffer_get_string(m, NULL); ++ store.envval = buffer_get_string(m, NULL); ++ ++ ok = ssh_gssapi_update_creds(&store); ++ ++ xfree(store.filename); ++ xfree(store.envvar); ++ xfree(store.envval); ++ ++ buffer_clear(m); ++ buffer_put_int(m, ok); ++ ++ mm_request_send(socket, MONITOR_ANS_GSSUPCREDS, m); ++ ++ return(0); ++} ++ + #endif /* GSSAPI */ + + #ifdef JPAKE +diff --speed-large-files --minimal -Nru openssh-5.8p1/monitor.h openssh-5.8p1.new/monitor.h +--- openssh-5.8p1/monitor.h 2008-11-05 06:20:46.000000000 +0100 ++++ openssh-5.8p1.new/monitor.h 2011-02-12 18:07:11.311728071 +0100 +@@ -53,6 +53,8 @@ + MONITOR_REQ_GSSSTEP, MONITOR_ANS_GSSSTEP, + MONITOR_REQ_GSSUSEROK, MONITOR_ANS_GSSUSEROK, + MONITOR_REQ_GSSCHECKMIC, MONITOR_ANS_GSSCHECKMIC, ++ MONITOR_REQ_GSSSIGN, MONITOR_ANS_GSSSIGN, ++ MONITOR_REQ_GSSUPCREDS, MONITOR_ANS_GSSUPCREDS, + MONITOR_REQ_PAM_START, + MONITOR_REQ_PAM_ACCOUNT, MONITOR_ANS_PAM_ACCOUNT, + MONITOR_REQ_PAM_INIT_CTX, MONITOR_ANS_PAM_INIT_CTX, +diff --speed-large-files --minimal -Nru openssh-5.8p1/monitor_wrap.c openssh-5.8p1.new/monitor_wrap.c +--- openssh-5.8p1/monitor_wrap.c 2010-08-31 14:41:14.000000000 +0200 ++++ openssh-5.8p1.new/monitor_wrap.c 2011-02-12 18:07:11.359631731 +0100 +@@ -1232,7 +1232,7 @@ + } + + int +-mm_ssh_gssapi_userok(char *user) ++mm_ssh_gssapi_userok(char *user, struct passwd *pw) + { + Buffer m; + int authenticated = 0; +@@ -1249,6 +1249,51 @@ + debug3("%s: user %sauthenticated",__func__, authenticated ? "" : "not "); + return (authenticated); + } ++ ++OM_uint32 ++mm_ssh_gssapi_sign(Gssctxt *ctx, gss_buffer_desc *data, gss_buffer_desc *hash) ++{ ++ Buffer m; ++ OM_uint32 major; ++ u_int len; ++ ++ buffer_init(&m); ++ buffer_put_string(&m, data->value, data->length); ++ ++ mm_request_send(pmonitor->m_recvfd, MONITOR_REQ_GSSSIGN, &m); ++ mm_request_receive_expect(pmonitor->m_recvfd, MONITOR_ANS_GSSSIGN, &m); ++ ++ major = buffer_get_int(&m); ++ hash->value = buffer_get_string(&m, &len); ++ hash->length = len; ++ ++ buffer_free(&m); ++ ++ return(major); ++} ++ ++int ++mm_ssh_gssapi_update_creds(ssh_gssapi_ccache *store) ++{ ++ Buffer m; ++ int ok; ++ ++ buffer_init(&m); ++ ++ buffer_put_cstring(&m, store->filename ? store->filename : ""); ++ buffer_put_cstring(&m, store->envvar ? store->envvar : ""); ++ buffer_put_cstring(&m, store->envval ? store->envval : ""); ++ ++ mm_request_send(pmonitor->m_recvfd, MONITOR_REQ_GSSUPCREDS, &m); ++ mm_request_receive_expect(pmonitor->m_recvfd, MONITOR_ANS_GSSUPCREDS, &m); ++ ++ ok = buffer_get_int(&m); ++ ++ buffer_free(&m); ++ ++ return (ok); ++} ++ + #endif /* GSSAPI */ + + #ifdef JPAKE +diff --speed-large-files --minimal -Nru openssh-5.8p1/monitor_wrap.h openssh-5.8p1.new/monitor_wrap.h +--- openssh-5.8p1/monitor_wrap.h 2009-03-05 14:58:22.000000000 +0100 ++++ openssh-5.8p1.new/monitor_wrap.h 2011-02-12 18:07:11.407619296 +0100 +@@ -57,8 +57,10 @@ + OM_uint32 mm_ssh_gssapi_server_ctx(Gssctxt **, gss_OID); + OM_uint32 mm_ssh_gssapi_accept_ctx(Gssctxt *, + gss_buffer_desc *, gss_buffer_desc *, OM_uint32 *); +-int mm_ssh_gssapi_userok(char *user); ++int mm_ssh_gssapi_userok(char *user, struct passwd *); + OM_uint32 mm_ssh_gssapi_checkmic(Gssctxt *, gss_buffer_t, gss_buffer_t); ++OM_uint32 mm_ssh_gssapi_sign(Gssctxt *, gss_buffer_t, gss_buffer_t); ++int mm_ssh_gssapi_update_creds(ssh_gssapi_ccache *); + #endif + + #ifdef USE_PAM +diff --speed-large-files --minimal -Nru openssh-5.8p1/readconf.c openssh-5.8p1.new/readconf.c +--- openssh-5.8p1/readconf.c 2010-11-20 05:19:38.000000000 +0100 ++++ openssh-5.8p1.new/readconf.c 2011-02-12 18:07:11.460306621 +0100 +@@ -129,6 +129,8 @@ + oClearAllForwardings, oNoHostAuthenticationForLocalhost, + oEnableSSHKeysign, oRekeyLimit, oVerifyHostKeyDNS, oConnectTimeout, + oAddressFamily, oGssAuthentication, oGssDelegateCreds, ++ oGssTrustDns, oGssKeyEx, oGssClientIdentity, oGssRenewalRekey, ++ oGssServerIdentity, + oServerAliveInterval, oServerAliveCountMax, oIdentitiesOnly, + oSendEnv, oControlPath, oControlMaster, oControlPersist, + oHashKnownHosts, +@@ -169,10 +171,19 @@ + { "afstokenpassing", oUnsupported }, + #if defined(GSSAPI) + { "gssapiauthentication", oGssAuthentication }, ++ { "gssapikeyexchange", oGssKeyEx }, + { "gssapidelegatecredentials", oGssDelegateCreds }, ++ { "gssapitrustdns", oGssTrustDns }, ++ { "gssapiclientidentity", oGssClientIdentity }, ++ { "gssapiserveridentity", oGssServerIdentity }, ++ { "gssapirenewalforcesrekey", oGssRenewalRekey }, + #else + { "gssapiauthentication", oUnsupported }, ++ { "gssapikeyexchange", oUnsupported }, + { "gssapidelegatecredentials", oUnsupported }, ++ { "gssapitrustdns", oUnsupported }, ++ { "gssapiclientidentity", oUnsupported }, ++ { "gssapirenewalforcesrekey", oUnsupported }, + #endif + { "fallbacktorsh", oDeprecated }, + { "usersh", oDeprecated }, +@@ -479,10 +490,30 @@ + intptr = &options->gss_authentication; + goto parse_flag; + ++ case oGssKeyEx: ++ intptr = &options->gss_keyex; ++ goto parse_flag; ++ + case oGssDelegateCreds: + intptr = &options->gss_deleg_creds; + goto parse_flag; + ++ case oGssTrustDns: ++ intptr = &options->gss_trust_dns; ++ goto parse_flag; ++ ++ case oGssClientIdentity: ++ charptr = &options->gss_client_identity; ++ goto parse_string; ++ ++ case oGssServerIdentity: ++ charptr = &options->gss_server_identity; ++ goto parse_string; ++ ++ case oGssRenewalRekey: ++ intptr = &options->gss_renewal_rekey; ++ goto parse_flag; ++ + case oBatchMode: + intptr = &options->batch_mode; + goto parse_flag; +@@ -1092,7 +1123,12 @@ + options->pubkey_authentication = -1; + options->challenge_response_authentication = -1; + options->gss_authentication = -1; ++ options->gss_keyex = -1; + options->gss_deleg_creds = -1; ++ options->gss_trust_dns = -1; ++ options->gss_renewal_rekey = -1; ++ options->gss_client_identity = NULL; ++ options->gss_server_identity = NULL; + options->password_authentication = -1; + options->kbd_interactive_authentication = -1; + options->kbd_interactive_devices = NULL; +@@ -1193,8 +1229,14 @@ + options->challenge_response_authentication = 1; + if (options->gss_authentication == -1) + options->gss_authentication = 0; ++ if (options->gss_keyex == -1) ++ options->gss_keyex = 0; + if (options->gss_deleg_creds == -1) + options->gss_deleg_creds = 0; ++ if (options->gss_trust_dns == -1) ++ options->gss_trust_dns = 0; ++ if (options->gss_renewal_rekey == -1) ++ options->gss_renewal_rekey = 0; + if (options->password_authentication == -1) + options->password_authentication = 1; + if (options->kbd_interactive_authentication == -1) +diff --speed-large-files --minimal -Nru openssh-5.8p1/readconf.h openssh-5.8p1.new/readconf.h +--- openssh-5.8p1/readconf.h 2010-11-20 05:19:38.000000000 +0100 ++++ openssh-5.8p1.new/readconf.h 2011-02-12 18:07:11.507187275 +0100 +@@ -46,7 +46,12 @@ + int challenge_response_authentication; + /* Try S/Key or TIS, authentication. */ + int gss_authentication; /* Try GSS authentication */ ++ int gss_keyex; /* Try GSS key exchange */ + int gss_deleg_creds; /* Delegate GSS credentials */ ++ int gss_trust_dns; /* Trust DNS for GSS canonicalization */ ++ int gss_renewal_rekey; /* Credential renewal forces rekey */ ++ char *gss_client_identity; /* Principal to initiate GSSAPI with */ ++ char *gss_server_identity; /* GSSAPI target principal */ + int password_authentication; /* Try password + * authentication. */ + int kbd_interactive_authentication; /* Try keyboard-interactive auth. */ +diff --speed-large-files --minimal -Nru openssh-5.8p1/servconf.c openssh-5.8p1.new/servconf.c +--- openssh-5.8p1/servconf.c 2010-11-20 05:19:38.000000000 +0100 ++++ openssh-5.8p1.new/servconf.c 2011-02-12 18:07:11.533252334 +0100 +@@ -97,7 +97,10 @@ + options->kerberos_ticket_cleanup = -1; + options->kerberos_get_afs_token = -1; + options->gss_authentication=-1; ++ options->gss_keyex = -1; + options->gss_cleanup_creds = -1; ++ options->gss_strict_acceptor = -1; ++ options->gss_store_rekey = -1; + options->password_authentication = -1; + options->kbd_interactive_authentication = -1; + options->challenge_response_authentication = -1; +@@ -226,8 +229,14 @@ + options->kerberos_get_afs_token = 0; + if (options->gss_authentication == -1) + options->gss_authentication = 0; ++ if (options->gss_keyex == -1) ++ options->gss_keyex = 0; + if (options->gss_cleanup_creds == -1) + options->gss_cleanup_creds = 1; ++ if (options->gss_strict_acceptor == -1) ++ options->gss_strict_acceptor = 1; ++ if (options->gss_store_rekey == -1) ++ options->gss_store_rekey = 0; + if (options->password_authentication == -1) + options->password_authentication = 1; + if (options->kbd_interactive_authentication == -1) +@@ -322,7 +331,9 @@ + sBanner, sUseDNS, sHostbasedAuthentication, + sHostbasedUsesNameFromPacketOnly, sClientAliveInterval, + sClientAliveCountMax, sAuthorizedKeysFile, sAuthorizedKeysFile2, +- sGssAuthentication, sGssCleanupCreds, sAcceptEnv, sPermitTunnel, ++ sGssAuthentication, sGssCleanupCreds, sGssStrictAcceptor, ++ sGssKeyEx, sGssStoreRekey, ++ sAcceptEnv, sPermitTunnel, + sMatch, sPermitOpen, sForceCommand, sChrootDirectory, + sUsePrivilegeSeparation, sAllowAgentForwarding, + sZeroKnowledgePasswordAuthentication, sHostCertificate, +@@ -386,10 +397,20 @@ + #ifdef GSSAPI + { "gssapiauthentication", sGssAuthentication, SSHCFG_ALL }, + { "gssapicleanupcredentials", sGssCleanupCreds, SSHCFG_GLOBAL }, ++ { "gssapicleanupcreds", sGssCleanupCreds, SSHCFG_GLOBAL }, ++ { "gssapistrictacceptorcheck", sGssStrictAcceptor, SSHCFG_GLOBAL }, ++ { "gssapikeyexchange", sGssKeyEx, SSHCFG_GLOBAL }, ++ { "gssapistorecredentialsonrekey", sGssStoreRekey, SSHCFG_GLOBAL }, + #else + { "gssapiauthentication", sUnsupported, SSHCFG_ALL }, + { "gssapicleanupcredentials", sUnsupported, SSHCFG_GLOBAL }, ++ { "gssapicleanupcreds", sUnsupported, SSHCFG_GLOBAL }, ++ { "gssapistrictacceptorcheck", sUnsupported, SSHCFG_GLOBAL }, ++ { "gssapikeyexchange", sUnsupported, SSHCFG_GLOBAL }, ++ { "gssapistorecredentialsonrekey", sUnsupported, SSHCFG_GLOBAL }, + #endif ++ { "gssusesessionccache", sUnsupported, SSHCFG_GLOBAL }, ++ { "gssapiusesessioncredcache", sUnsupported, SSHCFG_GLOBAL }, + { "passwordauthentication", sPasswordAuthentication, SSHCFG_ALL }, + { "kbdinteractiveauthentication", sKbdInteractiveAuthentication, SSHCFG_ALL }, + { "challengeresponseauthentication", sChallengeResponseAuthentication, SSHCFG_GLOBAL }, +@@ -944,10 +965,22 @@ + intptr = &options->gss_authentication; + goto parse_flag; + ++ case sGssKeyEx: ++ intptr = &options->gss_keyex; ++ goto parse_flag; ++ + case sGssCleanupCreds: + intptr = &options->gss_cleanup_creds; + goto parse_flag; + ++ case sGssStrictAcceptor: ++ intptr = &options->gss_strict_acceptor; ++ goto parse_flag; ++ ++ case sGssStoreRekey: ++ intptr = &options->gss_store_rekey; ++ goto parse_flag; ++ + case sPasswordAuthentication: + intptr = &options->password_authentication; + goto parse_flag; +@@ -1704,7 +1737,10 @@ + #endif + #ifdef GSSAPI + dump_cfg_fmtint(sGssAuthentication, o->gss_authentication); ++ dump_cfg_fmtint(sGssKeyEx, o->gss_keyex); + dump_cfg_fmtint(sGssCleanupCreds, o->gss_cleanup_creds); ++ dump_cfg_fmtint(sGssStrictAcceptor, o->gss_strict_acceptor); ++ dump_cfg_fmtint(sGssStoreRekey, o->gss_store_rekey); + #endif + #ifdef JPAKE + dump_cfg_fmtint(sZeroKnowledgePasswordAuthentication, +diff --speed-large-files --minimal -Nru openssh-5.8p1/servconf.h openssh-5.8p1.new/servconf.h +--- openssh-5.8p1/servconf.h 2010-11-20 05:19:38.000000000 +0100 ++++ openssh-5.8p1.new/servconf.h 2011-02-12 18:07:11.548572408 +0100 +@@ -97,7 +97,10 @@ + int kerberos_get_afs_token; /* If true, try to get AFS token if + * authenticated with Kerberos. */ + int gss_authentication; /* If true, permit GSSAPI authentication */ ++ int gss_keyex; /* If true, permit GSSAPI key exchange */ + int gss_cleanup_creds; /* If true, destroy cred cache on logout */ ++ int gss_strict_acceptor; /* If true, restrict the GSSAPI acceptor name */ ++ int gss_store_rekey; + int password_authentication; /* If true, permit password + * authentication. */ + int kbd_interactive_authentication; /* If true, permit */ +diff --speed-large-files --minimal -Nru openssh-5.8p1/ssh-gss.h openssh-5.8p1.new/ssh-gss.h +--- openssh-5.8p1/ssh-gss.h 2007-06-12 15:40:39.000000000 +0200 ++++ openssh-5.8p1.new/ssh-gss.h 2011-02-12 18:07:11.567306608 +0100 +@@ -1,6 +1,6 @@ + /* $OpenBSD: ssh-gss.h,v 1.10 2007/06/12 08:20:00 djm Exp $ */ + /* +- * Copyright (c) 2001-2003 Simon Wilkinson. All rights reserved. ++ * Copyright (c) 2001-2009 Simon Wilkinson. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions +@@ -60,10 +60,22 @@ + + #define SSH_GSS_OIDTYPE 0x06 + ++#define SSH2_MSG_KEXGSS_INIT 30 ++#define SSH2_MSG_KEXGSS_CONTINUE 31 ++#define SSH2_MSG_KEXGSS_COMPLETE 32 ++#define SSH2_MSG_KEXGSS_HOSTKEY 33 ++#define SSH2_MSG_KEXGSS_ERROR 34 ++#define SSH2_MSG_KEXGSS_GROUPREQ 40 ++#define SSH2_MSG_KEXGSS_GROUP 41 ++#define KEX_GSS_GRP1_SHA1_ID "gss-group1-sha1-" ++#define KEX_GSS_GRP14_SHA1_ID "gss-group14-sha1-" ++#define KEX_GSS_GEX_SHA1_ID "gss-gex-sha1-" ++ + typedef struct { + char *filename; + char *envvar; + char *envval; ++ struct passwd *owner; + void *data; + } ssh_gssapi_ccache; + +@@ -71,8 +83,11 @@ + gss_buffer_desc displayname; + gss_buffer_desc exportedname; + gss_cred_id_t creds; ++ gss_name_t name; + struct ssh_gssapi_mech_struct *mech; + ssh_gssapi_ccache store; ++ int used; ++ int updated; + } ssh_gssapi_client; + + typedef struct ssh_gssapi_mech_struct { +@@ -83,6 +98,7 @@ + int (*userok) (ssh_gssapi_client *, char *); + int (*localname) (ssh_gssapi_client *, char **); + void (*storecreds) (ssh_gssapi_client *); ++ int (*updatecreds) (ssh_gssapi_ccache *, ssh_gssapi_client *); + } ssh_gssapi_mech; + + typedef struct { +@@ -93,10 +109,11 @@ + gss_OID oid; /* client */ + gss_cred_id_t creds; /* server */ + gss_name_t client; /* server */ +- gss_cred_id_t client_creds; /* server */ ++ gss_cred_id_t client_creds; /* both */ + } Gssctxt; + + extern ssh_gssapi_mech *supported_mechs[]; ++extern Gssctxt *gss_kex_context; + + int ssh_gssapi_check_oid(Gssctxt *, void *, size_t); + void ssh_gssapi_set_oid_data(Gssctxt *, void *, size_t); +@@ -116,16 +133,30 @@ + void ssh_gssapi_delete_ctx(Gssctxt **); + OM_uint32 ssh_gssapi_sign(Gssctxt *, gss_buffer_t, gss_buffer_t); + void ssh_gssapi_buildmic(Buffer *, const char *, const char *, const char *); +-int ssh_gssapi_check_mechanism(Gssctxt **, gss_OID, const char *); ++int ssh_gssapi_check_mechanism(Gssctxt **, gss_OID, const char *, const char *); ++OM_uint32 ssh_gssapi_client_identity(Gssctxt *, const char *); ++int ssh_gssapi_credentials_updated(Gssctxt *); + + /* In the server */ ++typedef int ssh_gssapi_check_fn(Gssctxt **, gss_OID, const char *, ++ const char *); ++char *ssh_gssapi_client_mechanisms(const char *, const char *); ++char *ssh_gssapi_kex_mechs(gss_OID_set, ssh_gssapi_check_fn *, const char *, ++ const char *); ++gss_OID ssh_gssapi_id_kex(Gssctxt *, char *, int); ++int ssh_gssapi_server_check_mech(Gssctxt **,gss_OID, const char *, ++ const char *); + OM_uint32 ssh_gssapi_server_ctx(Gssctxt **, gss_OID); +-int ssh_gssapi_userok(char *name); ++int ssh_gssapi_userok(char *name, struct passwd *); + OM_uint32 ssh_gssapi_checkmic(Gssctxt *, gss_buffer_t, gss_buffer_t); + void ssh_gssapi_do_child(char ***, u_int *); + void ssh_gssapi_cleanup_creds(void); + void ssh_gssapi_storecreds(void); + ++char *ssh_gssapi_server_mechanisms(void); ++int ssh_gssapi_oid_table_ok(); ++ ++int ssh_gssapi_update_creds(ssh_gssapi_ccache *store); + #endif /* GSSAPI */ + + #endif /* _SSH_GSS_H */ +diff --speed-large-files --minimal -Nru openssh-5.8p1/ssh_config openssh-5.8p1.new/ssh_config +--- openssh-5.8p1/ssh_config 2010-01-12 09:40:27.000000000 +0100 ++++ openssh-5.8p1.new/ssh_config 2011-02-12 18:07:11.580240516 +0100 +@@ -26,6 +26,8 @@ + # HostbasedAuthentication no + # GSSAPIAuthentication no + # GSSAPIDelegateCredentials no ++# GSSAPIKeyExchange no ++# GSSAPITrustDNS no + # BatchMode no + # CheckHostIP yes + # AddressFamily any +diff --speed-large-files --minimal -Nru openssh-5.8p1/ssh_config.5 openssh-5.8p1.new/ssh_config.5 +--- openssh-5.8p1/ssh_config.5 2010-12-26 04:26:48.000000000 +0100 ++++ openssh-5.8p1.new/ssh_config.5 2011-02-12 18:07:11.600266821 +0100 +@@ -508,11 +508,43 @@ + The default is + .Dq no . + Note that this option applies to protocol version 2 only. ++.It Cm GSSAPIKeyExchange ++Specifies whether key exchange based on GSSAPI may be used. When using ++GSSAPI key exchange the server need not have a host key. ++The default is ++.Dq no . ++Note that this option applies to protocol version 2 only. ++.It Cm GSSAPIClientIdentity ++If set, specifies the GSSAPI client identity that ssh should use when ++connecting to the server. The default is unset, which means that the default ++identity will be used. ++.It Cm GSSAPIServerIdentity ++If set, specifies the GSSAPI server identity that ssh should expect when ++connecting to the server. The default is unset, which means that the ++expected GSSAPI server identity will be determined from the target ++hostname. + .It Cm GSSAPIDelegateCredentials + Forward (delegate) credentials to the server. + The default is + .Dq no . +-Note that this option applies to protocol version 2 only. ++Note that this option applies to protocol version 2 connections using GSSAPI. ++.It Cm GSSAPIRenewalForcesRekey ++If set to ++.Dq yes @@ Diff output truncated at 100000 characters. @@ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From chninkel at users.sourceforge.net Sat Feb 12 18:32:33 2011 From: chninkel at users.sourceforge.net (chninkel at users.sourceforge.net) Date: Sat, 12 Feb 2011 17:32:33 +0000 Subject: [csw-devel] SF.net SVN: gar:[13264] csw/mgar/pkg/openssh/trunk/Makefile Message-ID: Revision: 13264 http://gar.svn.sourceforge.net/gar/?rev=13264&view=rev Author: chninkel Date: 2011-02-12 17:32:33 +0000 (Sat, 12 Feb 2011) Log Message: ----------- openssh: added some overrides Modified Paths: -------------- csw/mgar/pkg/openssh/trunk/Makefile Modified: csw/mgar/pkg/openssh/trunk/Makefile =================================================================== --- csw/mgar/pkg/openssh/trunk/Makefile 2011-02-12 17:13:05 UTC (rev 13263) +++ csw/mgar/pkg/openssh/trunk/Makefile 2011-02-12 17:32:33 UTC (rev 13264) @@ -88,6 +88,12 @@ # The openssh package installs the server and the client CHECKPKG_OVERRIDES_CSWossh = surplus-dependency|CSWosshclient + +CHECKPKG_OVERRIDES_CSWosshclient += file-with-bad-content|/usr/local|root/opt/csw/share/doc/openssh_client/INSTALL +CHECKPKG_OVERRIDES_CSWossh += file-with-bad-content|/usr/local|root/opt/csw/share/doc/openssh/INSTALL +CHECKPKG_OVERRIDES_CSWossh += file-with-bad-content|/usr/share|root/var/opt/csw/svc/manifest/network/cswopenssh.xml + + ###### Upstream and OpenCSW files information ####### MASTER_SITES = ftp://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/ http://www.sxw.org.uk/computing/patches/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From jonbcraig at users.sourceforge.net Sat Feb 12 23:59:17 2011 From: jonbcraig at users.sourceforge.net (jonbcraig at users.sourceforge.net) Date: Sat, 12 Feb 2011 22:59:17 +0000 Subject: [csw-devel] SF.net SVN: gar:[13265] csw/mgar/pkg/ntop/trunk/files Message-ID: Revision: 13265 http://gar.svn.sourceforge.net/gar/?rev=13265&view=rev Author: jonbcraig Date: 2011-02-12 22:59:17 +0000 (Sat, 12 Feb 2011) Log Message: ----------- ntop: fix install scripts Modified Paths: -------------- csw/mgar/pkg/ntop/trunk/files/CSWntop.postinstall csw/mgar/pkg/ntop/trunk/files/CSWntop.postremove csw/mgar/pkg/ntop/trunk/files/CSWntop.request Modified: csw/mgar/pkg/ntop/trunk/files/CSWntop.postinstall =================================================================== --- csw/mgar/pkg/ntop/trunk/files/CSWntop.postinstall 2011-02-12 17:32:33 UTC (rev 13264) +++ csw/mgar/pkg/ntop/trunk/files/CSWntop.postinstall 2011-02-12 22:59:17 UTC (rev 13265) @@ -1,30 +1,30 @@ #!/sbin/sh -CONFDIR="${BASEDIR}etc/opt/csw/ntop" -DATADIR="${BASEDIR}var/opt/csw/ntop" +CONFDIR="${BASEDIR}/etc/opt/csw/ntop" +DATADIR="${BASEDIR}/var/opt/csw/ntop" PATH=/bin:/usr/bin:/usr/sbin:"$PATH" export PATH -if [ ! -f "$CONFDIR/ntop.conf" ]; then +if [ ! -f "${CONFDIR}/ntop.conf" ]; then echo "Installing CSWntop default config" - cp -p $CONFDIR/ntop.conf.CSW $CONFDIR/ntop.conf + cp -p ${CONFDIR}/ntop.conf.CSW ${CONFDIR}/ntop.conf fi -if [ ! -d "$DATADIR" ]; then - echo "Making DATADIR $DATADIR" - mkdir -p $DATADIR +if [ ! -d "${DATADIR}" ]; then + echo "Making DATADIR ${DATADIR}" + mkdir -p ${DATADIR} fi # Make sure directory permissions allow user nobody -chown nobody:nobody $DATADIR -chmod 0711 $DATADIR +chown nobody:nobody ${DATADIR} +chmod 0711 ${DATADIR} -if [ ! -f "$DATADIR/ntop_pw.db" ]; then +if [ ! -f "${DATADIR}/ntop_pw.db" ]; then echo "Setting admin password" - $BASEDIR/opt/csw/bin/ntop -P $DATADIR -u nobody --set-admin-password=$ADMIN_PW + ${BASEDIR}/opt/csw/bin/ntop -P ${DATADIR} -u nobody --set-admin-password=$ADMIN_PW else - echo "Keeping the existing $DATADIR/ntop_pw.db password." + echo "Keeping the existing ${DATADIR}/ntop_pw.db password." fi echo "\nURL to access ntop is http://hostname:3000" Modified: csw/mgar/pkg/ntop/trunk/files/CSWntop.postremove =================================================================== --- csw/mgar/pkg/ntop/trunk/files/CSWntop.postremove 2011-02-12 17:32:33 UTC (rev 13264) +++ csw/mgar/pkg/ntop/trunk/files/CSWntop.postremove 2011-02-12 22:59:17 UTC (rev 13265) @@ -1,15 +1,15 @@ #!/sbin/sh -CONFDIR="${BASEDIR}etc/opt/csw/ntop" -DATADIR="${BASEDIR}var/opt/csw/ntop" +CONFDIR="${BASEDIR}/etc/opt/csw/ntop" +DATADIR="${BASEDIR}/var/opt/csw/ntop" -if [ -d "$CONFDIR" -o -d "$DATADIR" ]; then +if [ -d "${CONFDIR}" -o -d "${DATADIR}" ]; then echo "" echo "You might want to manually remove files in:" - if [ -d "$CONFDIR" ]; then - echo " $CONFDIR" + if [ -d "${CONFDIR}" ]; then + echo " ${CONFDIR}" fi - if [ -d "$DATADIR" ]; then - echo " $DATADIR" + if [ -d "${DATADIR}" ]; then + echo " ${DATADIR}" fi fi Modified: csw/mgar/pkg/ntop/trunk/files/CSWntop.request =================================================================== --- csw/mgar/pkg/ntop/trunk/files/CSWntop.request 2011-02-12 17:32:33 UTC (rev 13264) +++ csw/mgar/pkg/ntop/trunk/files/CSWntop.request 2011-02-12 22:59:17 UTC (rev 13265) @@ -1,9 +1,9 @@ #!/sbin/sh # -CONFDIR="${BASEDIR}etc/opt/csw/ntop" -DATADIR="${BASEDIR}var/opt/csw/ntop" +CONFDIR="${BASEDIR}/etc/opt/csw/ntop" +DATADIR="${BASEDIR}/var/opt/csw/ntop" -if [ ! -f $DATADIR/ntop_pw.db ]; then +if [ ! -f ${DATADIR}/ntop_pw.db ]; then stty -echo trap "stty echo ; echo 'Interrupted' ; exit 1" 1 2 3 15 while [ true ]; do This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sun Feb 13 02:38:02 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sun, 13 Feb 2011 01:38:02 +0000 Subject: [csw-devel] SF.net SVN: gar:[13266] csw/mgar/pkg/lang-python Message-ID: Revision: 13266 http://gar.svn.sourceforge.net/gar/?rev=13266&view=rev Author: wahwah Date: 2011-02-13 01:38:02 +0000 (Sun, 13 Feb 2011) Log Message: ----------- zope-interface: Initial commit A dependency of buildbot, instead of CSWzope. Modified Paths: -------------- csw/mgar/pkg/lang-python/zope-interface/trunk/Makefile csw/mgar/pkg/lang-python/zope-interface/trunk/checksums Added Paths: ----------- csw/mgar/pkg/lang-python/zope-interface/ Modified: csw/mgar/pkg/lang-python/zope-interface/trunk/Makefile =================================================================== --- csw/mgar/pkg/template/trunk/Makefile 2011-02-09 19:49:21 UTC (rev 13242) +++ csw/mgar/pkg/lang-python/zope-interface/trunk/Makefile 2011-02-13 01:38:02 UTC (rev 13266) @@ -2,185 +2,17 @@ # Distributed under the terms of the GNU General Public License v2 # $Id$ -## This file contains comments to guide you through various GAR settings. -## Please remove unnecessary comments before committing your code to the code -## repository. The comments to remove are marked with double hashes. -## If you want to remove them all in-place, use: -## gsed -i -e '/^##/d' Makefile -## -## For more information about GAR variables, please see: -## https://sourceforge.net/apps/trac/gar/wiki/GAR%20Variable%20Reference -## -NAME = mypkg -VERSION = 1.0 -## -## The category that your software fits in. This is not a descriptive field, but -## influences the build process. Depending on the CATEGORIES setting, different -## Makefiles are included from gar/categories/ in your trunk directory, which -## adjust the build settings for the respective category. -## -## Possible settings are: -## apps, cpan, devel, gnome, java, kde, lang, lib, meta, net, python, server, -## utils, x11, xfce, xorg, xtra -CATEGORIES = lib -## -## A one-line description of the package, which will appear in the pkginfo. -DESCRIPTION = -## -## A longer description of the package. This is only for descriptive purposes -## inside the Makefile and is not used elsewhere. +NAME = zope.interface +VERSION = 3.6.1 +CATEGORIES = python +RUNTIME_DEP_PKGS_CSWpy-zope-interface += CSWlibpython2-6-1-0 +LICENSE = LICENSE.txt +DESCRIPTION = Implementation of object interfaces in Python define BLURB - endef -## -## Upstream URL that should show up in the VENDOR field as well as on -## http://opencsw.org/packages/. -SPKG_SOURCEURL = -## -## Whitespace-separated list of URLs to download the source package from. -## There are presets: $(SF_MIRRORS), $(GNU_MIRRORS) and $(GOOGLE_MIRROR), -## $(PYPI_MIRROR) -MASTER_SITES = -## -## SF_PROJ is required if you set $(MASTER_SITES) to $(SF_MIRRORS) and the -## Sourceforge project name differs from $(NAME). Specifies the Sourceforge -## project name of the software you wish to download. -## SF_PROJ = -## -## A list of space separated patch filenames from files/ that are to be applied -## to the extracted software before the ./configure stage. Patches need to be -## included in the DISTFILES variable as well. -## PATCHFILES = -## -## Whitespace-separated list of files which comprise this build. mGAR will look -## for the files in the $(FILEDIR) (trunk/files) directory and on the -## $(MASTER_SITES). +SPKG_SOURCEURL = http://pypi.python.org/pypi/zope.interface +MASTER_SITES = $(PYPI_MIRROR) DISTFILES = $(NAME)-$(VERSION).tar.gz -## -## We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz -## -## Catalog name is the name to be used with pkg{-get,util} -i . -## It is different from the system package name, which by convention is CSWpkgname. -## CATALOGNAME = -## -## Set to 1 to mark the package as architecture-independent. -## ARCHALL = 0 -## -## A list of files / patterns that should be excluded from the package. Amends -## the default list of excluded filenames $(MERGE_EXCLUDE_DEFAULT), which -## contains things like libtool .la files and files with a leading ~. -## EXTRA_MERGE_EXCLUDE_FILES = -## -## A list of space separated package names that should be marked as -## incompatible with the current package. This will go into the depend file. -## When a user has one of the incompatible packages installed and installs -## your package, he will be prompted that the incompatible package must be -## removed. He will however not be prevented to install your package without -## removing the conflicting package first. -## INCOMPATIBLE_PKGS = -## -## The name of the license file that should be included in your package. Defaults -## to COPYING. See http://sourceforge.net/apps/trac/gar/wiki/CopyRightfor details -## on including and displaying licenses. -## LICENSE = -## -## A list of space separated package names that should be produced from your -## Makefile. This is used when a software has different components that can be -## packaged and used individually (think runtime libraries, client tools, server -## files, development headers). You don't need to set this when you just want to -## produce one package. -## -## When you set this variable to include more than one package, you also need to -## set PKGFILES_CSWpkgname for each package (except for the first one in your -## $(PACKAGES) list) to define which files go into each package. The first -## package from $(PACKAGES) one will hold all files that are not matched by -## PKGFILES_ for other packages. -## PACKAGES = -## -## If specified, GAR feeds the almost-final package prototype file to -## $(PROTOTYPE_FILTER) and reads the final package prototype file from it. -## $(PROTOTYPE_FILTER) is usually a sed/awk/perl one-liner, which was mostly used -## to prepare the prototype file for use with cswclassutils (see -## $(SPKG_CLASSES)). Now that there are convenience variables for cswclassutils, -## you will rarely have to use this. A still valid use case would be to change -## the file permissions of a file to be set-UID. -## See http://wiki.opencsw.org/cswclassutils-package for common usage information -## PROTOTYPE_FILTER = -## -## cswclassutils settings -## -## A list of action classes. Possible values are: -## none cswpreserveconf cswcpsampleconf cswpycompile cswusergroup cswinitsmf -## cswinetd cswetcservices -## The class 'cswinitsmf' must be the last class listed. When you use cswclassutils, -## you need to add CSWcswclassutils to RUNTIME_DEP_PKGS. -## SPKG_CLASSES = none -## Simplified settings for classes: -## PRESERVECONF = -## SAMPLECONF = -## INITSMF = -## USERGROUP = -## ETCSERVICES = -## INETDCONF = -## A list of runtime package dependencies in the form of CSWfoo. -## RUNTIME_DEP_PKGS = -## -## A list of packages necessary to build this package -## BUILD_DEP_PKGS = $(RUNTIME_DEP_PKGS) -## -## When using non-empty $(PACKAGES): -## RUNTIME_DEP_PKGS_CSWpkgname = -## SPKG_DESC_CSWpkgname = -## PKGFILES_CSWpkgname = -## CATALOGNAME_CSWpkgname = -## -## A list of space separated directories where objects should be stripped in -## addition to the bin/ and sbin/ directories. -## STRIP_DIRS = -## -## Define a custom target for the configure phase. When you set this, the target -## that will be used instead of configure: target, is named -## configure-$(CONFIGURE_SCRIPTS) and you will need to define it in your Makefile -## after including gar/gar.include.mk. If you want to skip the configure phase -## completely (for example when your software doesn't need to be compiled) assign -## this variable an empty value. The procedure works for configure, build, -## install and test steps. -## CONFIGURE_SCRIPTS = -## BUILD_SCRIPTS = -## INSTALL_SCRIPTS = -## TEST_SCRIPTS = -## -## Compilation settings -## -## The build directory. -## WORKSRC = $(WORKDIR)/$(NAME)-$(VERSION) -## -## BUILD_ARGS is passed as an argument to gmake during the build phase. Use this -## for example, if you need to override Makefile variables. -## BUILD_ARGS = -## -## Arguments passed to the ./configure script. +PACKAGES = CSWpy-zope-interface CONFIGURE_ARGS = $(DIRPATHS) -## -## BUILD64 = -## CONFIGURE_ENV = -## EXTRA_CFLAGS = -## EXTRA_LDFLAGS = -## EXTRA_INC = -## EXTRA_LIB = -## GARFLAVOR = -## INSTALL_ARGS = -## OPT_FLAGS_SOS = -xO3 -## OPT_FLAGS_GCC = -O2 -pipe -## -## The compiler to use. Defaults to SOS11, can be also: SOS12, GCC3, GCC4. -## GARCOMPILER = SOS11 -## -# Remove the following rules and uncomment the -# include before building. -all: .DEFAULT -.DEFAULT: - @true - -#include gar/category.mk +include gar/category.mk Modified: csw/mgar/pkg/lang-python/zope-interface/trunk/checksums =================================================================== --- csw/mgar/pkg/template/trunk/checksums 2011-02-09 19:49:21 UTC (rev 13242) +++ csw/mgar/pkg/lang-python/zope-interface/trunk/checksums 2011-02-13 01:38:02 UTC (rev 13266) @@ -0,0 +1 @@ +7a895181b8d10be4a7e9a3afa13cd3be zope.interface-3.6.1.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From jonbcraig at users.sourceforge.net Sun Feb 13 03:02:45 2011 From: jonbcraig at users.sourceforge.net (jonbcraig at users.sourceforge.net) Date: Sun, 13 Feb 2011 02:02:45 +0000 Subject: [csw-devel] SF.net SVN: gar:[13267] csw/mgar/pkg/ntop/trunk Message-ID: Revision: 13267 http://gar.svn.sourceforge.net/gar/?rev=13267&view=rev Author: jonbcraig Date: 2011-02-13 02:02:45 +0000 (Sun, 13 Feb 2011) Log Message: ----------- ntop: rename README.CSW to cswreleasemgr Modified Paths: -------------- csw/mgar/pkg/ntop/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/ntop/trunk/files/cswreleasemgr Removed Paths: ------------- csw/mgar/pkg/ntop/trunk/files/README.CSW Modified: csw/mgar/pkg/ntop/trunk/Makefile =================================================================== --- csw/mgar/pkg/ntop/trunk/Makefile 2011-02-13 01:38:02 UTC (rev 13266) +++ csw/mgar/pkg/ntop/trunk/Makefile 2011-02-13 02:02:45 UTC (rev 13267) @@ -20,7 +20,7 @@ DISTFILES += ntop.conf.CSW EXPANDVARS += ntop.conf.CSW DISTFILES += CSWntop.postinstall CSWntop.postremove CSWntop.request -DISTFILES += README.CSW +DISTFILES += cswreleasemgr INITSMF = /etc/opt/csw/init.d/cswntop Deleted: csw/mgar/pkg/ntop/trunk/files/README.CSW =================================================================== --- csw/mgar/pkg/ntop/trunk/files/README.CSW 2011-02-13 01:38:02 UTC (rev 13266) +++ csw/mgar/pkg/ntop/trunk/files/README.CSW 2011-02-13 02:02:45 UTC (rev 13267) @@ -1,87 +0,0 @@ -Package: ntop -Release: 4.0.3 -================================================================= - -The following are a collection of statments to detail -the particulars of this release. These serve as a -reminder to the maintainer and as potential notes for -future maintainers and/or end users. -=== - -* Default configuration - -This package automatically starts ntop via SMF/init during -the install. As this package is intended to run as a service -a few settings are forced. The interfaces default to all -interfaces on the box unless specified in the configuration -file /etc/opt/csw/ntop/ntop.conf. Likewise, logging is -sent to syslog-local3 unless changed. Settings in this -configuration file override any changes made through the -GUI. You can of course disable the SMF/init settings -and control ntop startup/shutdown manually. -=== - -* The etter.finger.os is a static version - -This file provides the information ntop uses to passively -identify host operating sytsems. During the build process -for this release of the package the sourceforge website was -hacked and a number of services were shutdown during the -rebuilding/securing of the website. CVS was one of these -services and that impacted the ability to build ntop. As -part of the build process the file etter.finger.os is -downloaded from the etters project CVS system and without -http acces to the repository the build would not proceed. -I extracted the last version of this file and short -circuited the build to use this frozen version of the file. -The package was last updated in 2004, so this shouldn't be -a problem. The next time ntop is refreshed I will revisit -this to see if it can be handled better, or at least the -way the package author intends it to be handled. -=== - -* Files with bad content - -A number of shared libraries and documentation files have -references to /usr/local. In the case of the shared -libaries these references were a static reference to -pre-processor, compiler and linker flags. As such they -may be ignored. The documentation has a number of -references as well but they are appropriate for the -tone of the document. I have chosen to leave these -references as the author choose to have them. -=== - -* Use of graphviz - -Addtional web display functionality is enabled when -this package is installed. I did not make it a -dependency because of the number of additional packages -that would be installed. I'll leave this choice to the -end user. -=== - -* Use of Mako - -Additional functionality could be enabled if the mako -package were installed. This package is not currently -available from OpenCSW but may be integrated in the -future if this package becomes available. -=== - -* Use of MySQL - -I have choosen to not add support for MySQL at this time. -I have not used ntop with MySQL and so my experience -with this type of configuration is non-existent. If -this feature is important to end users they may request -it and I will consider extending support. -=== - -* Use of FC - -This feature follows along with the MySQL statement and -is not enabled for this release. Please request if you -need this functionality and I will consider extending -support. -=== Added: csw/mgar/pkg/ntop/trunk/files/cswreleasemgr =================================================================== --- csw/mgar/pkg/ntop/trunk/files/cswreleasemgr (rev 0) +++ csw/mgar/pkg/ntop/trunk/files/cswreleasemgr 2011-02-13 02:02:45 UTC (rev 13267) @@ -0,0 +1,87 @@ +Package: ntop +Release: 4.0.3 +================================================================= + +The following are a collection of statments to detail +the particulars of this release. These serve as a +reminder to the maintainer and as potential notes for +future maintainers and/or end users. +=== + +* Files with bad content + +A number of shared libraries and documentation files have +references to /usr/local. In the case of the shared +libaries these references were a static reference to +pre-processor, compiler and linker flags. As such they +may be ignored. The documentation has a number of +references as well but they are appropriate for the +tone of the document. I have chosen to leave these +references as the author choose to have them. +=== + +* Default configuration + +This package automatically starts ntop via SMF/init during +the install. As this package is intended to run as a service +a few settings are forced. The interfaces default to all +interfaces on the box unless specified in the configuration +file /etc/opt/csw/ntop/ntop.conf. Likewise, logging is +sent to syslog-local3 unless changed. Settings in this +configuration file override any changes made through the +GUI. You can of course disable the SMF/init settings +and control ntop startup/shutdown manually. +=== + +* The etter.finger.os is a static version + +This file provides the information ntop uses to passively +identify host operating sytsems. During the build process +for this release of the package the sourceforge website was +hacked and a number of services were shutdown during the +rebuilding/securing of the website. CVS was one of these +services and that impacted the ability to build ntop. As +part of the build process the file etter.finger.os is +downloaded from the etters project CVS system and without +http acces to the repository the build would not proceed. +I extracted the last version of this file and short +circuited the build to use this frozen version of the file. +The package was last updated in 2004, so this shouldn't be +a problem. The next time ntop is refreshed I will revisit +this to see if it can be handled better, or at least the +way the package author intends it to be handled. +=== + +* Use of graphviz + +Addtional web display functionality is enabled when +this package is installed. I did not make it a +dependency because of the number of additional packages +that would be installed. I'll leave this choice to the +end user. +=== + +* Use of Mako + +Additional functionality could be enabled if the mako +package were installed. This package is not currently +available from OpenCSW but may be integrated in the +future if this package becomes available. +=== + +* Use of MySQL + +I have choosen to not add support for MySQL at this time. +I have not used ntop with MySQL and so my experience +with this type of configuration is non-existent. If +this feature is important to end users they may request +it and I will consider extending support. +=== + +* Use of FC + +This feature follows along with the MySQL statement and +is not enabled for this release. Please request if you +need this functionality and I will consider extending +support. +=== This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From jonbcraig at users.sourceforge.net Sun Feb 13 05:59:30 2011 From: jonbcraig at users.sourceforge.net (jonbcraig at users.sourceforge.net) Date: Sun, 13 Feb 2011 04:59:30 +0000 Subject: [csw-devel] SF.net SVN: gar:[13268] csw/mgar/pkg/ntop/tags/ntop-4.0.3, REV=2011.02.13/ Message-ID: Revision: 13268 http://gar.svn.sourceforge.net/gar/?rev=13268&view=rev Author: jonbcraig Date: 2011-02-13 04:59:30 +0000 (Sun, 13 Feb 2011) Log Message: ----------- ntop: Tag as release 4.0.3,REV=2011.02.13 Added Paths: ----------- csw/mgar/pkg/ntop/tags/ntop-4.0.3,REV=2011.02.13/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 13 13:51:06 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 13 Feb 2011 12:51:06 +0000 Subject: [csw-devel] SF.net SVN: gar:[13269] csw/mgar/gar/v2-uwatch2/bin/uwatch Message-ID: Revision: 13269 http://gar.svn.sourceforge.net/gar/?rev=13269&view=rev Author: wbonnet Date: 2011-02-13 12:51:06 +0000 (Sun, 13 Feb 2011) Log Message: ----------- Merging uwatch2 branch Modified Paths: -------------- csw/mgar/gar/v2-uwatch2/bin/uwatch Modified: csw/mgar/gar/v2-uwatch2/bin/uwatch =================================================================== --- csw/mgar/gar/v2-uwatch2/bin/uwatch 2011-02-13 04:59:30 UTC (rev 13268) +++ csw/mgar/gar/v2-uwatch2/bin/uwatch 2011-02-13 12:51:06 UTC (rev 13269) @@ -1,5 +1,4 @@ -#!/usr/bin/env python2.6 -#!/opt/csw/bin/python +#!/opt/csw/bin/python2.6 # TODO : check arguments for valid date # TODO : check arguments for emtpy strings This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 13 13:55:59 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 13 Feb 2011 12:55:59 +0000 Subject: [csw-devel] SF.net SVN: gar:[13270] csw/mgar/gar/v2-uwatch2 Message-ID: Revision: 13270 http://gar.svn.sourceforge.net/gar/?rev=13270&view=rev Author: wbonnet Date: 2011-02-13 12:55:58 +0000 (Sun, 13 Feb 2011) Log Message: ----------- Merging uwatch2 branch Modified Paths: -------------- csw/mgar/gar/v2-uwatch2/bin/ap2mod_build_scripts csw/mgar/gar/v2-uwatch2/bin/gem2pkg csw/mgar/gar/v2-uwatch2/categories/rbgems/category.mk csw/mgar/gar/v2-uwatch2/gar.conf.mk csw/mgar/gar/v2-uwatch2/gar.lib.mk csw/mgar/gar/v2-uwatch2/gar.mk csw/mgar/gar/v2-uwatch2/gar.pkg.mk csw/mgar/gar/v2-uwatch2/lib/python/README csw/mgar/gar/v2-uwatch2/lib/python/catalog.py csw/mgar/gar/v2-uwatch2/lib/python/catalog_test.py csw/mgar/gar/v2-uwatch2/lib/python/checkpkg.py csw/mgar/gar/v2-uwatch2/lib/python/checkpkg2.py csw/mgar/gar/v2-uwatch2/lib/python/checkpkg_lib.py csw/mgar/gar/v2-uwatch2/lib/python/checkpkg_lib_test.py csw/mgar/gar/v2-uwatch2/lib/python/common_constants.py csw/mgar/gar/v2-uwatch2/lib/python/configuration.py csw/mgar/gar/v2-uwatch2/lib/python/database.py csw/mgar/gar/v2-uwatch2/lib/python/dependency_checks.py csw/mgar/gar/v2-uwatch2/lib/python/models.py csw/mgar/gar/v2-uwatch2/lib/python/models_test.py csw/mgar/gar/v2-uwatch2/lib/python/opencsw.py csw/mgar/gar/v2-uwatch2/lib/python/opencsw_test.py csw/mgar/gar/v2-uwatch2/lib/python/package.py csw/mgar/gar/v2-uwatch2/lib/python/package_checks.py csw/mgar/gar/v2-uwatch2/lib/python/package_checks_test.py csw/mgar/gar/v2-uwatch2/lib/python/package_stats.py csw/mgar/gar/v2-uwatch2/lib/python/package_stats_test.py csw/mgar/gar/v2-uwatch2/lib/python/pkgdb.py csw/mgar/gar/v2-uwatch2/lib/python/sharedlib_utils.py csw/mgar/gar/v2-uwatch2/lib/python/sharedlib_utils_test.py csw/mgar/gar/v2-uwatch2/lib/python/shell.py csw/mgar/gar/v2-uwatch2/lib/python/struct_util.py csw/mgar/gar/v2-uwatch2/lib/python/testdata/neon_stats.py csw/mgar/gar/v2-uwatch2/lib/python/testdata/tree_stats.py csw/mgar/gar/v2-uwatch2/lib/sh/db_privileges.sh csw/mgar/gar/v2-uwatch2/lib/sh/libcheckpkg.sh csw/mgar/gar/v2-uwatch2/tests/run_tests.py Added Paths: ----------- csw/mgar/gar/v2-uwatch2/bin/csw-upload-pkg csw/mgar/gar/v2-uwatch2/lib/python/catalog_notifier.py csw/mgar/gar/v2-uwatch2/lib/python/catalog_notifier_test.py csw/mgar/gar/v2-uwatch2/lib/python/csw_upload_pkg.py csw/mgar/gar/v2-uwatch2/lib/python/rest.py csw/mgar/gar/v2-uwatch2/lib/web/ csw/mgar/gar/v2-uwatch2/lib/web/README csw/mgar/gar/v2-uwatch2/lib/web/pkgdb_web.py csw/mgar/gar/v2-uwatch2/lib/web/releases_web.py csw/mgar/gar/v2-uwatch2/lib/web/templates/ csw/mgar/gar/v2-uwatch2/lib/web/templates/CatalogDetail.html csw/mgar/gar/v2-uwatch2/lib/web/templates/CatalogList.html csw/mgar/gar/v2-uwatch2/lib/web/templates/Catalogname.html csw/mgar/gar/v2-uwatch2/lib/web/templates/CatalognameList.html csw/mgar/gar/v2-uwatch2/lib/web/templates/ErrorTagDetail.html csw/mgar/gar/v2-uwatch2/lib/web/templates/ErrorTagList.html csw/mgar/gar/v2-uwatch2/lib/web/templates/MaintainerCheckpkgReport.html csw/mgar/gar/v2-uwatch2/lib/web/templates/MaintainerDetail.html csw/mgar/gar/v2-uwatch2/lib/web/templates/MaintainerList.html csw/mgar/gar/v2-uwatch2/lib/web/templates/Srv4Detail.html csw/mgar/gar/v2-uwatch2/lib/web/templates/Srv4DetailFiles.html csw/mgar/gar/v2-uwatch2/lib/web/templates/Srv4List.html csw/mgar/gar/v2-uwatch2/lib/web/templates/index.html csw/mgar/gar/v2-uwatch2/upload-application/ csw/mgar/gar/v2-uwatch2/upload-application/opencsw-upload-process-application.html csw/mgar/gar/v2-uwatch2/upload-application/style.css csw/mgar/gar/v2-uwatch2/upload-application/upload-process.svg Removed Paths: ------------- csw/mgar/gar/v2-uwatch2/lib/sh/run_full_cat.sh csw/mgar/gar/v2-uwatch2/lib/web/README csw/mgar/gar/v2-uwatch2/lib/web/pkgdb_web.py csw/mgar/gar/v2-uwatch2/lib/web/releases_web.py csw/mgar/gar/v2-uwatch2/lib/web/templates/ csw/mgar/gar/v2-uwatch2/lib/web/templates/CatalogDetail.html csw/mgar/gar/v2-uwatch2/lib/web/templates/CatalogList.html csw/mgar/gar/v2-uwatch2/lib/web/templates/Catalogname.html csw/mgar/gar/v2-uwatch2/lib/web/templates/CatalognameList.html csw/mgar/gar/v2-uwatch2/lib/web/templates/ErrorTagDetail.html csw/mgar/gar/v2-uwatch2/lib/web/templates/ErrorTagList.html csw/mgar/gar/v2-uwatch2/lib/web/templates/MaintainerCheckpkgReport.html csw/mgar/gar/v2-uwatch2/lib/web/templates/MaintainerDetail.html csw/mgar/gar/v2-uwatch2/lib/web/templates/MaintainerList.html csw/mgar/gar/v2-uwatch2/lib/web/templates/Srv4Detail.html csw/mgar/gar/v2-uwatch2/lib/web/templates/Srv4DetailFiles.html csw/mgar/gar/v2-uwatch2/lib/web/templates/Srv4List.html csw/mgar/gar/v2-uwatch2/lib/web/templates/index.html csw/mgar/gar/v2-uwatch2/upload-application/opencsw-upload-process-application.html csw/mgar/gar/v2-uwatch2/upload-application/style.css csw/mgar/gar/v2-uwatch2/upload-application/upload-process.svg Property Changed: ---------------- csw/mgar/gar/v2-uwatch2/ csw/mgar/gar/v2-uwatch2/lib/python/catalog_test.py csw/mgar/gar/v2-uwatch2/lib/python/models_test.py csw/mgar/gar/v2-uwatch2/pkglib/csw/depend Property changes on: csw/mgar/gar/v2-uwatch2 ___________________________________________________________________ Modified: svn:mergeinfo - /csw/mgar/gar/v2:4936-6678 /csw/mgar/gar/v2-bwalton:9784-10011 /csw/mgar/gar/v2-checkpkg:7722-7855 /csw/mgar/gar/v2-checkpkg-override-relocation:10585-10737 /csw/mgar/gar/v2-checkpkg-stats:8454-8649 /csw/mgar/gar/v2-collapsed-modulations:6895 /csw/mgar/gar/v2-dirpackage:8125-8180 /csw/mgar/gar/v2-git/v2-relocate:7617 /csw/mgar/gar/v2-migrateconf:7082-7211 /csw/mgar/gar/v2-noexternals:11592-11745 /csw/mgar/gar/v2-relocate:5028-11738 /csw/mgar/gar/v2-skayser:6087-6132 /csw/mgar/gar/v2-sqlite:10434-10449 + /csw/mgar/gar/v2:4936-6678,12141-13268 /csw/mgar/gar/v2-bwalton:9784-10011 /csw/mgar/gar/v2-checkpkg:7722-7855 /csw/mgar/gar/v2-checkpkg-override-relocation:10585-10737 /csw/mgar/gar/v2-checkpkg-stats:8454-8649 /csw/mgar/gar/v2-collapsed-modulations:6895 /csw/mgar/gar/v2-dirpackage:8125-8180 /csw/mgar/gar/v2-fortran:10883-12516 /csw/mgar/gar/v2-git/v2-relocate:7617 /csw/mgar/gar/v2-migrateconf:7082-7211 /csw/mgar/gar/v2-noexternals:11592-11745 /csw/mgar/gar/v2-relocate:5028-11738 /csw/mgar/gar/v2-skayser:6087-6132 /csw/mgar/gar/v2-sqlite:10434-10449 Modified: csw/mgar/gar/v2-uwatch2/bin/ap2mod_build_scripts =================================================================== --- csw/mgar/gar/v2-uwatch2/bin/ap2mod_build_scripts 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/bin/ap2mod_build_scripts 2011-02-13 12:55:58 UTC (rev 13270) @@ -18,7 +18,7 @@ AP2_PREFIX=/opt/csw/apache2 AP2_BINDIR=\$AP2_PREFIX/sbin AP2_LIBEXEC=\$AP2_PREFIX/libexec -AP2_CONFDIR=/etc/opt/csw/apache2 +AP2_CONFDIR=\$AP2_PREFIX/etc AP2_CONFIG=\$AP2_CONFDIR/httpd.conf AP2_APXS=\$AP2_BINDIR/apxs Copied: csw/mgar/gar/v2-uwatch2/bin/csw-upload-pkg (from rev 13268, csw/mgar/gar/v2/bin/csw-upload-pkg) =================================================================== --- csw/mgar/gar/v2-uwatch2/bin/csw-upload-pkg (rev 0) +++ csw/mgar/gar/v2-uwatch2/bin/csw-upload-pkg 2011-02-13 12:55:58 UTC (rev 13270) @@ -0,0 +1 @@ +link ../lib/python/csw_upload_pkg.py \ No newline at end of file Modified: csw/mgar/gar/v2-uwatch2/bin/gem2pkg =================================================================== --- csw/mgar/gar/v2-uwatch2/bin/gem2pkg 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/bin/gem2pkg 2011-02-13 12:55:58 UTC (rev 13270) @@ -21,16 +21,19 @@ DESCRIPTION = #{spec.summary} define BLURB -#{blurb.gsub(/(.{1,70})( +|$\n?)|(.{1,70})/, "\\1\\3\n")} + #{blurb.gsub(/(.{1,70})( +|$\n?)|(.{1,70})/, "\\1\\3")} endef EOF - spec.dependencies.each do |d| - puts "RUNTIME_DEP_PKGS += CSWgem-#{d.name}" + unless spec.dependencies.empty? + spec.dependencies.each do |d| + puts "RUNTIME_DEP_PKGS += CSWgem-#{d.name}" + end + puts end - puts "\nARCHALL = 1" if spec.extensions.size.eql?(0) + puts "ARCHALL = 1\n\n" if spec.extensions.size.eql?(0) puts "include gar/category.mk" rescue Exception => e Modified: csw/mgar/gar/v2-uwatch2/categories/rbgems/category.mk =================================================================== --- csw/mgar/gar/v2-uwatch2/categories/rbgems/category.mk 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/categories/rbgems/category.mk 2011-02-13 12:55:58 UTC (rev 13270) @@ -10,7 +10,7 @@ DISTFILES += $(GEMFILE) GEMPKGNAME ?= $(GEMNAME) -GEMCATALOGNAME ?= $(GEMPKGNAME) +GEMCATALOGNAME ?= $(subst -,_,$(GEMPKGNAME)) # PACKAGES ?= CSWgem-$(GEMPKGNAME) CSWgem-$(GEMPKGNAME)-doc PACKAGES ?= CSWgem-$(GEMPKGNAME) Modified: csw/mgar/gar/v2-uwatch2/gar.conf.mk =================================================================== --- csw/mgar/gar/v2-uwatch2/gar.conf.mk 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/gar.conf.mk 2011-02-13 12:55:58 UTC (rev 13270) @@ -480,6 +480,16 @@ SOS11_CXX ?= $(SOS11_CC_HOME)/bin/CC SOS12_CXX ?= $(SOS12_CC_HOME)/bin/CC SOS12U1_CXX ?= $(SOS12U1_CC_HOME)/bin/CC + GCC3_F77 ?= $(GCC3_CC_HOME)/bin/g77 + GCC4_F77 ?= $(GCC4_CC_HOME)/bin/gfortran + SOS11_F77 ?= $(SOS11_CC_HOME)/bin/f77 + SOS12_F77 ?= $(SOS12_CC_HOME)/bin/f77 + SOS12U1_F77 ?= $(SOS12U1_CC_HOME)/bin/f77 + GCC3_FC ?= $(GCC3_CC_HOME)/bin/g77 + GCC4_FC ?= $(GCC4_CC_HOME)/bin/gfortran + SOS11_FC ?= $(SOS11_CC_HOME)/bin/f95 + SOS12_FC ?= $(SOS12_CC_HOME)/bin/f95 + SOS12U1_FC ?= $(SOS12U1_CC_HOME)/bin/f95 GCC3_CC_FLAGS ?= $(FLAVOR_FLAGS) $(ARCHFLAGS_$(GARCOMPILER)_$(ISA)) $(EXTRA_GCC3_CC_FLAGS) $(EXTRA_GCC_CC_FLAGS) $(EXTRA_CC_FLAGS) GCC4_CC_FLAGS ?= $(FLAVOR_FLAGS) $(ARCHFLAGS_$(GARCOMPILER)_$(ISA)) $(EXTRA_GCC4_CC_FLAGS) $(EXTRA_GCC_CC_FLAGS) $(EXTRA_CC_FLAGS) @@ -501,22 +511,43 @@ SOS11_LD_FLAGS ?= $(ARCHFLAGS_$(GARCOMPILER)_$(ISA)) $(EXTRA_SOS11_LD_FLAGS) $(EXTRA_SOS_LD_FLAGS) $(EXTRA_LD_FLAGS) -norunpath -xnorunpath SOS12_LD_FLAGS ?= $(ARCHFLAGS_$(GARCOMPILER)_$(ISA)) $(EXTRA_SOS12_LD_FLAGS) $(EXTRA_SOS_LD_FLAGS) $(EXTRA_LD_FLAGS) -norunpath SOS12U1_LD_FLAGS ?= $(ARCHFLAGS_$(GARCOMPILER)_$(ISA)) $(EXTRA_SOS12U1_LD_FLAGS) $(EXTRA_SOS_LD_FLAGS) $(EXTRA_LD_FLAGS) -norunpath + GCC3_FFLAGS ?= $(FLAVOR_FLAGS) $(ARCHFLAGS_$(GARCOMPILER)_$(ISA)) $(EXTRA_GCC3_FFLAGS) $(EXTRA_GCC_FFLAGS) $(EXTRA_FFLAGS) + GCC4_FFLAGS ?= $(FLAVOR_FLAGS) $(ARCHFLAGS_$(GARCOMPILER)_$(ISA)) $(EXTRA_GCC4_FFLAGS) $(EXTRA_GCC_FFLAGS) $(EXTRA_FFLAGS) + SOS11_FFLAGS ?= $(FLAVOR_FLAGS) $(ARCHFLAGS_$(GARCOMPILER)_$(ISA)) $(EXTRA_SOS11_FFLAGS) $(EXTRA_SOS_FFLAGS) $(EXTRA_FFLAGS) -norunpath + SOS12_FFLAGS ?= $(FLAVOR_FLAGS) $(ARCHFLAGS_$(GARCOMPILER)_$(ISA)) $(EXTRA_SOS12_FFLAGS) $(EXTRA_SOS_FFLAGS) $(EXTRA_FFLAGS) -norunpath + SOS12U1_FFLAGS ?= $(FLAVOR_FLAGS) $(ARCHFLAGS_$(GARCOMPILER)_$(ISA)) $(EXTRA_SOS12U1_FFLAGS) $(EXTRA_SOS_FFLAGS) $(EXTRA_FFLAGS) -norunpath + GCC3_FCFLAGS ?= $(FLAVOR_FLAGS) $(ARCHFLAGS_$(GARCOMPILER)_$(ISA)) $(EXTRA_GCC3_FCFLAGS) $(EXTRA_GCC_FCFLAGS) $(EXTRA_FCFLAGS) + GCC4_FCFLAGS ?= $(FLAVOR_FLAGS) $(ARCHFLAGS_$(GARCOMPILER)_$(ISA)) $(EXTRA_GCC4_FCFLAGS) $(EXTRA_GCC_FCFLAGS) $(EXTRA_FCFLAGS) + SOS11_FCFLAGS ?= $(FLAVOR_FLAGS) $(ARCHFLAGS_$(GARCOMPILER)_$(ISA)) $(EXTRA_SOS11_FCFLAGS) $(EXTRA_SOS_FCFLAGS) $(EXTRA_FCFLAGS) -norunpath + SOS12_FCFLAGS ?= $(FLAVOR_FLAGS) $(ARCHFLAGS_$(GARCOMPILER)_$(ISA)) $(EXTRA_SOS12_FCFLAGS) $(EXTRA_SOS_FCFLAGS) $(EXTRA_FCFLAGS) -norunpath + SOS12U1_FCFLAGS ?= $(FLAVOR_FLAGS) $(ARCHFLAGS_$(GARCOMPILER)_$(ISA)) $(EXTRA_SOS12U1_FCFLAGS) $(EXTRA_SOS_FCFLAGS) $(EXTRA_FCFLAGS) -norunpath # Compiler version GCC3_CC_VERSION = $(shell $(GCC3_CC) -v 2>&1| ggrep version) GCC3_CXX_VERSION = $(shell $(GCC3_CXX) -v 2>&1| ggrep version) + GCC3_F77_VERSION = $(shell $(GCC3_F77) -v 2>&1| ggrep version) GCC4_CC_VERSION = $(shell $(GCC4_CC) -v 2>&1| ggrep version) GCC4_CXX_VERSION = $(shell $(GCC4_CXX) -v 2>&1| ggrep version) + GCC4_F77_VERSION = $(shell $(GCC4_F77) -v 2>&1| ggrep version) + GCC4_FC_VERSION = $(shell $(GCC4_FC) -v 2>&1| ggrep version) SOS11_CC_VERSION = $(shell $(SOS11_CC) -V 2>&1| ggrep cc: | gsed -e 's/cc: //') SOS11_CXX_VERSION = $(shell $(SOS11_CXX) -V 2>&1| ggrep CC: | gsed -e 's/CC: //') + SOS11_F77_VERSION = $(shell $(SOS11_F77) -V 2>&1| ggrep f90: | gsed -e 's/f90: //') + SOS11_FC_VERSION = $(shell $(SOS11_FC) -V 2>&1| ggrep f90: | gsed -e 's/f90: //') SOS12_CC_VERSION = $(shell $(SOS12_CC) -V 2>&1| ggrep cc: | gsed -e 's/cc: //') + SOS12_F77_VERSION = $(shell $(SOS12_F77) -V 2>&1| ggrep -e 'f9[05]': | gsed -e 's/f9[05]: //') + SOS12_FC_VERSION = $(shell $(SOS12_FC) -V 2>&1| ggrep -e 'f9[05]:' | gsed -e 's/f9[05]: //') SOS12_CXX_VERSION = $(shell $(SOS12_CXX) -V 2>&1| ggrep CC: | gsed -e 's/CC: //') SOS12U1_CC_VERSION = $(shell $(SOS12U1_CC) -V 2>&1| ggrep cc: | gsed -e 's/cc: //') SOS12U1_CXX_VERSION = $(shell $(SOS12U1_CXX) -V 2>&1| ggrep CC: | gsed -e 's/CC: //') +SOS12U1_F77_VERSION = $(shell $(SOS12U1_F77) -V 2>&1| ggrep -e 'f9[05]': | gsed -e 's/f9[05]: //') + SOS12U1_FC_VERSION = $(shell $(SOS12U1_FC) -V 2>&1| ggrep -e 'f9[05]:' | gsed -e 's/f9[05]: //') CC_VERSION = $($(GARCOMPILER)_CC_VERSION) CXX_VERSION = $($(GARCOMPILER)_CXX_VERSION) +F77_VERSION = $($(GARCOMPILER)_F77_VERSION) + FC_VERSION = $($(GARCOMPILER)_FC_VERSION) # # Construct compiler options @@ -563,12 +594,17 @@ CC_HOME = $($(GARCOMPILER)_CC_HOME) CC = $($(GARCOMPILER)_CC) CXX = $($(GARCOMPILER)_CXX) +F77 = $($(GARCOMPILER)_F77) +FC = $($(GARCOMPILER)_FC) + CFLAGS ?= $(strip $($(GARCOMPILER)_CC_FLAGS) $(_CATEGORY_CFLAGS) $(EXTRA_CFLAGS)) CXXFLAGS ?= $(strip $($(GARCOMPILER)_CXX_FLAGS) $(_CATEGORY_CXXFLAGS) $(EXTRA_CXXFLAGS)) CPPFLAGS ?= $(strip $($(GARCOMPILER)_CPP_FLAGS) $(_CATEGORY_CPPFLAGS) $(EXTRA_CPPFLAGS) $(INCLUDE_FLAGS)) LDFLAGS ?= $(strip $($(GARCOMPILER)_LD_FLAGS) $(_CATEGORY_LDFLAGS) $(EXTRA_LDFLAGS) $(LINKER_FLAGS)) ASFLAGS ?= $(strip $($(GARCOMPILER)_AS_FLAGS) $(_CATEGORY_ASFLAGS) $(EXTRA_ASFLAGS)) OPTFLAGS ?= $(strip $($(GARCOMPILER)_CC_FLAGS) $(_CATEGORY_OPTFLAGS) $(EXTRA_OPTFLAGS)) +FFLAGS ?= $(strip $($(GARCOMPILER)_FFLAGS) $(_CATEGORY_FFLAGS) $(EXTRA_FFLAGS)) +FCFLAGS ?= $(strip $($(GARCOMPILER)_FCFLAGS) $(_CATEGORY_FCFLAGS) $(EXTRA_FCFLAGS)) GCC3_LD_OPTIONS = -R$(GCC3_CC_HOME)/lib $(EXTRA_GCC3_LD_OPTIONS) $(EXTRA_GCC_LD_OPTIONS) GCC4_LD_OPTIONS = -R$(abspath $(GCC4_CC_HOME)/lib/$(MM_LIBDIR)) $(EXTRA_GCC4_LD_OPTIONS) $(EXTRA_GCC_LD_OPTIONS) @@ -652,6 +688,7 @@ ifeq ($(origin COMPILER_EXPORTS), undefined) COMPILER_EXPORTS = CPPFLAGS CFLAGS CXXFLAGS LDFLAGS +COMPILER_EXPORTS += FFLAGS FCFLAGS COMPILER_EXPORTS += ASFLAGS OPTFLAGS CC CXX COMPILER_EXPORTS += CC_HOME CC_VERSION CXX_VERSION endif @@ -705,6 +742,8 @@ @echo @echo " C Compiler: $(CC)" @echo " C++ Compiler: $(CXX)" + @echo " F77 Compiler: $(F77)" + @echo " FC Compiler: $(FC)" @echo @echo "Compiler ISA generation matrix:" @echo @@ -753,6 +792,8 @@ echo " CFLAGS = $(CFLAGS)"; \ echo " CXXFLAGS = $(CXXFLAGS)"; \ echo " CPPFLAGS = $(CPPFLAGS)"; \ + echo " FFLAGS = $(FFLAGS)"; \ + echo " FCFLAGS = $(FCFLAGS)"; \ echo " LDFLAGS = $(LDFLAGS)"; \ echo " LD_OPTIONS = $(LD_OPTIONS)"; \ echo " ASFLAGS = $(ASFLAGS)"; \ Modified: csw/mgar/gar/v2-uwatch2/gar.lib.mk =================================================================== --- csw/mgar/gar/v2-uwatch2/gar.lib.mk 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/gar.lib.mk 2011-02-13 12:55:58 UTC (rev 13270) @@ -723,37 +723,51 @@ xz-patch-%: @echo " ==> Applying patch $(DOWNLOADDIR)/$*" @xz -dc $(DOWNLOADDIR)/$* | $(GARPATCH) - @( cd $(WORKSRC); git add -A; \ - git commit -am "old xz-style patch: $*"; ) + @( if [ -z "$(NOGITPATCH)" ]; then \ + cd $(WORKSRC); git add -A; \ + git commit -am "old xz-style patch: $*"; \ + fi ) @$(MAKECOOKIE) # apply bzipped patches bz-patch-%: @echo " ==> Applying patch $(DOWNLOADDIR)/$*" @bzip2 -dc $(DOWNLOADDIR)/$* | $(GARPATCH) - @( cd $(WORKSRC); git add -A; \ - git commit -am "old bz-style patch: $*"; ) + @( if [ -z "$(NOGITPATCH)" ]; then \ + cd $(WORKSRC); git add -A; \ + git commit -am "old bz-style patch: $*"; \ + fi ) @$(MAKECOOKIE) # apply gzipped patches gz-patch-%: @echo " ==> Applying patch $(DOWNLOADDIR)/$*" @gzip -dc $(DOWNLOADDIR)/$* | $(GARPATCH) - @( cd $(WORKSRC); git add -A; \ - git commit -am "old gz-style patch: $*"; ) + @( if [ -z "$(NOGITPATCH)" ]; then \ + cd $(WORKSRC); git add -A; \ + git commit -am "old gz-style patch: $*"; \ + fi ) @$(MAKECOOKIE) # apply normal patches (git format-patch output or old-style diff -r) normal-patch-%: @echo " ==> Applying patch $(DOWNLOADDIR)/$*" @( if ggrep -q 'diff --git' $(abspath $(DOWNLOADDIR)/$*); then \ - cd $(WORKSRC); git am --ignore-space-change --ignore-whitespace $(abspath $(DOWNLOADDIR)/$*); \ - else \ + if [ -z "$(NOGITPATCH)" ]; then \ + cd $(WORKSRC);\ + git am --ignore-space-change --ignore-whitespace $(abspath $(DOWNLOADDIR)/$*); \ + else \ + $(GARPATCH) < $(DOWNLOADDIR)/$*; \ + fi; \ + else \ echo Adding old-style patch...; \ $(GARPATCH) < $(DOWNLOADDIR)/$*; \ - cd $(WORKSRC); git add -A; \ - git commit -am "old style patch: $*"; \ - fi ) + if [ -z "$(NOGITPATCH)" ]; then \ + cd $(WORKSRC); \ + git add -A; \ + git commit -am "old style patch: $*"; \ + fi; \ + fi ) @$(MAKECOOKIE) ### PATCH FILE TYPE MAPPINGS ### Modified: csw/mgar/gar/v2-uwatch2/gar.mk =================================================================== --- csw/mgar/gar/v2-uwatch2/gar.mk 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/gar.mk 2011-02-13 12:55:58 UTC (rev 13270) @@ -129,7 +129,7 @@ merge-$(2): @echo "[===== Building modulation '$(2)' on host '$$(BUILDHOST)' =====]" $$(if $$(and $$(BUILDHOST),$$(filter-out $$(THISHOST),$$(BUILDHOST))),\ - $(SSH) $$(BUILDHOST) "PATH=$$(PATH) MAKEFLAGS=\"$(MAKEFLAGS)\" $(MAKE) -C $$(CURDIR) $(if $(GAR_PLATFORM),GAR_PLATFORM=$(GAR_PLATFORM)) MODULATION=$(2) $(3) merge-modulated",\ + $(SSH) $$(BUILDHOST) "PATH=$$(PATH) MAKEFLAGS=\"$$(MAKEFLAGS)\" $(MAKE) -C $$(CURDIR) $(if $(GAR_PLATFORM),GAR_PLATFORM=$(GAR_PLATFORM)) MODULATION=$(2) $(3) merge-modulated",\ $(MAKE) $(if $(GAR_PLATFORM),GAR_PLATFORM=$(GAR_PLATFORM)) MODULATION=$(2) $(3) merge-modulated\ ) @# The next line has intentionally been left blank to explicitly terminate this make rule @@ -444,7 +444,7 @@ _var_definitions = $(foreach VAR,$(shell perl -ne 'print "$$1 " if( /@([^@]+)@/ )' <$1),$(VAR)=$($(VAR))) expandvars-%: - $(call _var_definitions,$(WORKDIR)/$*) perl -i-unexpanded -npe 's/@([^@]+)@/$$ENV{$$1}/e' $(WORKDIR)/$* + $(call _var_definitions,$(WORKDIR)/$*) perl -i-unexpanded -npe 's/@([^@]+)@/$$ENV{$$1}/eg' $(WORKDIR)/$* @$(MAKECOOKIE) Modified: csw/mgar/gar/v2-uwatch2/gar.pkg.mk =================================================================== --- csw/mgar/gar/v2-uwatch2/gar.pkg.mk 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/gar.pkg.mk 2011-02-13 12:55:58 UTC (rev 13270) @@ -32,12 +32,12 @@ ifeq ($(origin PACKAGES), undefined) PACKAGES = $(if $(filter %.gspec,$(DISTFILES)),,CSW$(NAME)) -CATALOGNAME ?= $(if $(filter %.gspec,$(DISTFILES)),,$(NAME)) +CATALOGNAME ?= $(if $(filter %.gspec,$(DISTFILES)),,$(subst -,_,$(NAME))) SRCPACKAGE_BASE = $(firstword $(basename $(filter %.gspec,$(DISTFILES))) $(PACKAGES)) SRCPACKAGE ?= $(SRCPACKAGE_BASE)-src SPKG_SPECS ?= $(basename $(filter %.gspec,$(DISTFILES))) $(PACKAGES) $(if $(NOSOURCEPACKAGE),,$(SRCPACKAGE)) else -CATALOGNAME ?= $(if $(filter-out $(firstword $(PACKAGES)),$(PACKAGES)),,$(patsubst CSW%,%,$(PACKAGES))) +CATALOGNAME ?= $(if $(filter-out $(firstword $(PACKAGES)),$(PACKAGES)),,$(subst -,_,$(patsubst CSW%,%,$(PACKAGES)))) SRCPACKAGE_BASE = $(firstword $(PACKAGES)) SRCPACKAGE ?= $(SRCPACKAGE_BASE)-src SPKG_SPECS ?= $(sort $(basename $(filter %.gspec,$(DISTFILES))) $(PACKAGES) $(if $(NOSOURCEPACKAGE),,$(SRCPACKAGE))) @@ -112,7 +112,7 @@ $(if $(CATALOGNAME), $(CATALOGNAME), $(if $(filter $(1),$(PACKAGES)), - $(patsubst CSW%,%,$(1)), + $(subst -,_,$(patsubst CSW%,%,$(1))), $(if $(realpath files/$(1).gspec), $(shell perl -F'\s+' -ane 'print "$$F[2]" if( $$F[0] eq "%var" && $$F[1] eq "bitname")' files/$(1).gspec), $(error The catalog name for the package '$1' could not be determined, because it was neither in PACKAGES nor was there a gspec-file) @@ -195,6 +195,7 @@ # - set class for all config files _CSWCLASS_FILTER = | perl -ane '\ + $(foreach FILE,$(CPTEMPLATES),$$F[1] = "cswcptemplates" if( $$F[2] =~ m(^$(FILE)$$) );)\ $(foreach FILE,$(MIGRATECONF),$$F[1] = "cswmigrateconf" if( $$F[2] =~ m(^$(FILE)$$) );)\ $(foreach FILE,$(SAMPLECONF:%\.CSW=%),$$F[1] = "cswcpsampleconf" if ( $$F[2] =~ m(^$(FILE)\.CSW$$) );)\ $(foreach FILE,$(PRESERVECONF:%\.CSW=%),$$F[1] = "cswpreserveconf" if( $$F[2] =~ m(^$(FILE)\.CSW$$) );)\ @@ -296,7 +297,7 @@ PKGFILES_DEVEL += $(includedir)/.* PKGFILES_DEVEL += $(sharedstatedir)/aclocal/.* PKGFILES_DEVEL += $(mandir)/man1/.*-config\.1.* -PKGFILES_DEVEL += $(mandir)/man3/.* +PKGFILES_DEVEL += $(mandir)/man3/.*\.3 # PKGFILES_DOC selects files beloging to a documentation package PKGFILES_DOC = $(docdir)/.* @@ -718,6 +719,7 @@ reset-merge-checkpkgoverrides: @rm -f $(COOKIEDIR)/merge-checkpkgoverrides $(foreach SPEC,$(_PKG_SPECS),$(COOKIEDIR)/merge-checkpkgoverrides-$(SPEC)) + @rm -f $(foreach S,$(SPKG_SPECS),$(WORKDIR_GLOBAL)/checkpkg_override.$S) merge-alternatives-%: @echo "[ Generating alternatives for package $* ]" @@ -769,7 +771,7 @@ $(if $(strip $(foreach P,$(PACKAGING_PLATFORMS),$(PACKAGING_HOST_$P))),\ $(if $(filter $(THISHOST),$(foreach P,$(PACKAGING_PLATFORMS),$(PACKAGING_HOST_$P))),\ @$(MAKECOOKIE),\ - $(warning *** You are building this package on a non-requested platform host '$(THISHOST)'. The follow platforms were requested:)\ + $(warning *** You are building this package on a non-requested platform host '$(THISHOST)'. The following platforms were requested:)\ $(foreach P,$(PACKAGING_PLATFORMS),\ $(warning *** - $P $(if $(PACKAGING_HOST_$P),to be build on host '$(PACKAGING_HOST_$P)',with no suitable host available))\ )\ Modified: csw/mgar/gar/v2-uwatch2/lib/python/README =================================================================== --- csw/mgar/gar/v2-uwatch2/lib/python/README 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/lib/python/README 2011-02-13 12:55:58 UTC (rev 13270) @@ -4,20 +4,23 @@ Checks to implement: - foo_bar != CSWfoo-bar -> error - - *dev(el)? -> error, suggest *-devel + - *dev(el)? -> error, suggest *-dev - *-?rt -> error, suggest specific library packages - empty package without 'transitional' in the name --> error, suggest - 'transitional' + 'transitional' - CSWpmfoo --> error, suggest CSWpm-foo - Dependency on a transitional package --> error - ('transitional', 'stub', 'legacy') + ('transitional', 'stub', 'legacy') - Dependency on CSWcas-initsmf + rc* files --> error + - A package must not be incompatible with itself Development plan for checkpkg: -- Generalize dependency checking by adding NeedFile(file_list, reason) to - error_mgr. It's possible to need one of the listed files only, so files are - given as alternatives, but the reason is common. +- Notify maintainers when their package is available from mirrors +- Allow maintainers to opt-out from these notifications +- Add support for the 'overridden' field in the database +- When adding a package to a catalog, store the time and date of the + addition - Display stats from each run - Shorten the on-screen output, add commands to display override lines - Move the set check stats outside of checking functions, remove the special @@ -37,6 +40,9 @@ - Move the 'data' field of the srv4_file table to a separate table (should speed up checking if stats are already collected) - Store run history +- Generalize dependency checking by adding NeedFile(file_list, reason) to + error_mgr. It's possible to need one of the listed files only, so files are + given as alternatives, but the reason is common. Known problems: - libmagic fails sometimes when processing the whole catalog @@ -56,3 +62,13 @@ python-progressbar \ python-sqlobject \ python-yaml + +===Checkpkg database=== + +Additional database indexes: + +# TODO(maciej): Add them to the models.py + +CREATE INDEX srv4_mtime_idx ON srv4_file_stats(mtime); +CREATE INDEX srv4_md5_idx ON srv4_file_stats(md5_sum); +CREATE INDEX catalog_idx ON srv4_file_in_catalog (arch_id, osrel_id, catrel_id); Modified: csw/mgar/gar/v2-uwatch2/lib/python/catalog.py =================================================================== --- csw/mgar/gar/v2-uwatch2/lib/python/catalog.py 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/lib/python/catalog.py 2011-02-13 12:55:58 UTC (rev 13270) @@ -65,9 +65,10 @@ class OpencswCatalog(object): """Represents a catalog file.""" - def __init__(self, file_name): - self.file_name = file_name + def __init__(self, fd): + self.fd = fd self.by_basename = None + self.by_catalogname = None self.catalog_data = None def _ParseCatalogLine(self, line): @@ -96,12 +97,12 @@ r"(?P\S+)" r"\s+" # none - r"(?P\S+)" + r"(?P\S+)" # An optional empty field. r"(" r"\s+" # none\n' - r"(?P\S+)" + r"(?P\S+)" r")?" r"$" ), @@ -109,6 +110,14 @@ cline_re_list = [re.compile(x) for x in cline_re_str_list] matched = False d = None + def SplitPkgList(pkglist): + if not pkglist: + pkglist = () + elif pkglist == "none": + pkglist = () + else: + pkglist = tuple(pkglist.split("|")) + return pkglist for cline_re in cline_re_list: m = cline_re.match(line) if m: @@ -116,6 +125,8 @@ matched = True if not d: raise CatalogLineParseError("Parsed %s data is empty" % repr(line)) + d["deps"] = SplitPkgList(d["deps"]) + d["i_deps"] = SplitPkgList(d["i_deps"]) if not matched: raise CatalogLineParseError("No regexes matched %s" % repr(line)) return d @@ -133,8 +144,7 @@ def GetCatalogData(self): if not self.catalog_data: - fd = open(self.file_name, "r") - self.catalog_data = self._GetCatalogData(fd) + self.catalog_data = self._GetCatalogData(self.fd) return self.catalog_data def GetDataByBasename(self): @@ -146,3 +156,43 @@ logging.error("%s is missing the file_basename field", d) self.by_basename[d["file_basename"]] = d return self.by_basename + + def GetDataByCatalogname(self): + if not self.by_catalogname: + self.by_catalogname = {} + cd = self.GetCatalogData() + for d in cd: + if "catalogname" not in d: + logging.error("%s is missing the catalogname field", d) + if d["catalogname"] in self.by_catalogname: + logging.warning("Catalog name %s is duplicated!", d["catalogname"]) + self.by_catalogname[d["catalogname"]] = d + return self.by_catalogname + + +class CatalogComparator(object): + + def GetCatalogDiff(self, cat_a, cat_b): + """Returns a difference between two catalogs.""" + if type(cat_a) == dict: + bc_a = cat_a + else: + bc_a = cat_a.GetDataByCatalogname() + if type(cat_b) == dict: + bc_b = cat_b + else: + bc_b = cat_b.GetDataByCatalogname() + cn_a = set(bc_a) + cn_b = set(bc_b) + new_catalognames = cn_b.difference(cn_a) + removed_catalognames = cn_a.difference(cn_b) + same_catalognames = cn_b.intersection(cn_a) + # Looking for updated catalognames + updated_catalognames = set() + for catalogname in same_catalognames: + if bc_a[catalogname]["version"] != bc_b[catalogname]["version"]: + updated_catalognames.add(catalogname) + new_pkgs = [bc_b[x] for x in new_catalognames] + removed_pkgs = [bc_a[x] for x in removed_catalognames] + updated_pkgs = [{"from": bc_a[x], "to": bc_b[x]} for x in updated_catalognames] + return new_pkgs, removed_pkgs, updated_pkgs Copied: csw/mgar/gar/v2-uwatch2/lib/python/catalog_notifier.py (from rev 13268, csw/mgar/gar/v2/lib/python/catalog_notifier.py) =================================================================== --- csw/mgar/gar/v2-uwatch2/lib/python/catalog_notifier.py (rev 0) +++ csw/mgar/gar/v2-uwatch2/lib/python/catalog_notifier.py 2011-02-13 12:55:58 UTC (rev 13270) @@ -0,0 +1,282 @@ +#!/usr/bin/env python2.6 + +"""Polls a designated catalog tree, and sends notifications about +package updates.""" + +import optparse +import catalog +import common_constants +from Cheetah import Template +import urllib2 +import logging +import configuration +import pprint +import cPickle +import json +import os.path +import smtplib +from email.mime.text import MIMEText +import rest + +REPORT_TMPL = u"""Catalog update report for $email +Catalog URL: $url +#import re +#def CatalogList($catalogs) +#set $by_catrel = {} +#set $unused = [by_catrel.setdefault(x[0], []).append(x[1:]) for x in $catalogs] +#for catrel in $by_catrel: + - $catrel: # +#set $by_arch = {} +#set $unused = [by_arch.setdefault(x[0], []).append(x[1:]) for x in $by_catrel[$catrel]] +#set $first = True +#for arch in $by_arch: +#if not $first +, # +#else +#set $first = False +#end if +$arch (# +#echo ", ".join([re.sub(r'^.*OS', '', x[0]) for x in $by_arch[$arch]]) + ")" +#end for + +#end for +#end def +#if "new_pkgs" in $pkg_data + +New packages: +#for basename in $pkg_data["new_pkgs"] +* $basename + In catalogs: +#set $catalogs = $sorted($pkg_data["new_pkgs"][basename]["catalogs"]) +$CatalogList($catalogs) +#end for +#end if +#if "removed_pkgs" in $pkg_data + +Removed packages: +#for basename in $pkg_data["removed_pkgs"] +* $basename + From catalogs: +#set $catalogs = $sorted($pkg_data["removed_pkgs"][basename]["catalogs"]) +$CatalogList($catalogs) +#end for +#end if +#if "upgraded_pkg" in $pkg_data + +Version change (probably upgrade): +#for basename in $pkg_data["upgraded_pkg"] +#for from_basename in $pkg_data["upgraded_pkg"][basename]["from_pkg"] +- $pkg_data["upgraded_pkg"][basename]["from_pkg"][from_basename]["file_basename"] +#end for ++ $pkg_data["upgraded_pkg"][basename]["to_pkg"]["file_basename"] + In catalogs: +#set $catalogs = $sorted($pkg_data["upgraded_pkg"][basename]["catalogs"]) +$CatalogList($catalogs) +#end for +#end if +#if "lost_pkg" in $pkg_data + +You no longer maintain packages: +#for basename in $pkg_data["lost_pkg"] +#for from_basename in $pkg_data["lost_pkg"][basename]["from_pkg"] +- $pkg_data["lost_pkg"][basename]["from_pkg"][from_basename]["file_basename"] +#end for + In catalogs: +#set $catalogs = $sorted($pkg_data["lost_pkg"][basename]["catalogs"]) +$CatalogList($catalogs) +#end for +#end if +#if "got_pkg" in $pkg_data + +You took over packages: +#for basename in $pkg_data["got_pkg"] +* $basename + In catalogs: +#set $catalogs = $sorted($pkg_data["got_pkg"][basename]["catalogs"]) +$CatalogList($catalogs) +#end for +#end if +""" + +class NotificationFormatter(object): + + def _GetPkgsByMaintainer(self, catalogs, rest_client): + c = catalog.CatalogComparator() + pkgs_by_maintainer = {} + for catrel, arch, osrel, cat_a, cat_b in catalogs: + catalog_key = (catrel, arch, osrel) + new_pkgs, removed_pkgs, updated_pkgs = c.GetCatalogDiff(cat_a, cat_b) + labels_and_lists = ( + ("new_pkgs", new_pkgs), + ("removed_pkgs", removed_pkgs), + ) + for label, pkg_list in labels_and_lists: + for pkg in pkg_list: + maintainer = rest_client.GetMaintainerByMd5(pkg["md5sum"]) + maintainer_email = maintainer["maintainer_email"] + pkgs_by_maintainer.setdefault(maintainer_email, {}) + pkgs_by_maintainer[maintainer_email].setdefault(label, {}) + labeled = pkgs_by_maintainer[maintainer_email][label] + basename = pkg["file_basename"] + labeled.setdefault(basename, { + "pkg": pkg, + "catalogs": [], + }) + labeled[basename]["catalogs"].append(catalog_key) + for d in updated_pkgs: + from_pkg = d["from"] + to_pkg = d["to"] + maintainer_from = rest_client.GetMaintainerByMd5(from_pkg["md5sum"]) + maintainer_to = rest_client.GetMaintainerByMd5(to_pkg["md5sum"]) + from_email = maintainer_from["maintainer_email"] + to_email = maintainer_to["maintainer_email"] + if from_email == to_email: + # A normal upgrade, no takeover + label = "upgraded_pkg" + self._StorePkgUpdate(catalog_key, + label, pkgs_by_maintainer, from_email, from_pkg, to_pkg) + else: + # Package takeover + self._StorePkgUpdate(catalog_key, + "lost_pkg", pkgs_by_maintainer, from_email, from_pkg, to_pkg) + self._StorePkgUpdate(catalog_key, + "got_pkg", pkgs_by_maintainer, to_email, from_pkg, to_pkg) + return pkgs_by_maintainer + + def _StorePkgUpdate(self, + catalog_key, + label, pkgs_by_maintainer, email, from_pkg, to_pkg): + pkgs_by_maintainer.setdefault(email, {}) + pkgs_by_maintainer[email].setdefault(label, {}) + labeled = pkgs_by_maintainer[email][label] + basename = to_pkg["file_basename"] + labeled.setdefault(basename, { + "to_pkg": to_pkg, + "from_pkg": {}, + "catalogs": [], + }) + labeled[basename]["from_pkg"][from_pkg["file_basename"]] = from_pkg + labeled[basename]["catalogs"].append(catalog_key) + + def _RenderForMaintainer(self, pkg_data, email, url): + namespace = { + "pkg_data": pkg_data, + "email": email, + "url": url} + t = Template.Template(REPORT_TMPL, searchList=[namespace]) + return unicode(t) + + def FormatNotifications(self, url, catalogs, rest_client): + """Formats a notification from a series of catalogs. + + Args: + url: Base URL for catalogs + catalogs: A list of triplets (catrel, arch, osrel, cat_a, cat_b) + rest_client: An interface to the outside world + """ + pkgs_by_maintainer = self._GetPkgsByMaintainer(catalogs, rest_client) + rendered_notifications = {} + for email in pkgs_by_maintainer: + rendered_notifications[email] = self._RenderForMaintainer( + pkgs_by_maintainer[email], email, url) + return rendered_notifications + + +class CatalogIndexDownloader(object): + + def GetCatalogsByTriad(self, cat_tree_url): + catalogs_by_triad = {} + for catrel in common_constants.DEFAULT_CATALOG_RELEASES: + for arch in common_constants.PHYSICAL_ARCHITECTURES: + for osrel in common_constants.OS_RELS: + short_osrel = osrel.replace("SunOS", "") + catalog_file_url = ( + "%s%s/%s/%s/catalog" + % (cat_tree_url, catrel, arch, short_osrel)) + logging.info("Opening %s", repr(catalog_file_url)) + try: + f = urllib2.urlopen(catalog_file_url) + key = (catrel, arch, osrel) + catalog_instance = catalog.OpencswCatalog(f) + catalogs_by_triad[key] = catalog_instance.GetDataByCatalogname() + except urllib2.URLError, e: + logging.warning(e) + return catalogs_by_triad + + +def main(): + DEFAULT_URL = "http://mirror.opencsw.org/opencsw/" + DEFAULT_URL = "http://ivy.home.blizinski.pl/~maciej/opencsw/" + parser = optparse.OptionParser() + parser.add_option("-u", "--url", + dest="url", help="Base URL of OpenCSW catalog", + default=DEFAULT_URL) + parser.add_option("-d", "--debug", + dest="debug", action="store_true", + default=False) + parser.add_option("-s", "--send-notifications", + dest="send_notifications", action="store_true", + default=False) + parser.add_option("-p", "--pickle-file", + dest="pickle_file", help="Pickle file", + default="/tmp/opencsw-notifier-data/example.pickle") + parser.add_option("-w", "--whitelist", + dest="whitelist", + help="E-mail address whitelist, comma separated", + default=None) + options, args = parser.parse_args() + logging.basicConfig(level=logging.DEBUG) + # Getting catalogs + cat_tree_url = options.url + downloader = CatalogIndexDownloader() + catalogs_by_triad = downloader.GetCatalogsByTriad(cat_tree_url) + pickle_path = options.pickle_file + previous_catalogs_by_triad = None + try: + with open(pickle_path, "rb") as fd: + previous_catalogs_by_triad = cPickle.load(fd) + except (IOError, EOFError), e: + logging.warning(e) + previous_catalogs_by_triad = {} + # Merge the two data structures here + catalogs = [] + for key in catalogs_by_triad: + if key in previous_catalogs_by_triad: + catalogs.append( + # ("fossil", "amd65", "SolarOS5.12", cat_a, cat_b), + key + (previous_catalogs_by_triad[key], catalogs_by_triad[key]) + ) + else: + logging.debug("%s not found in previous_catalogs_by_triad", key) + formatter = NotificationFormatter() + rest_client = rest.RestClient() + notifications = formatter.FormatNotifications( + cat_tree_url, catalogs, rest_client) + whitelist = frozenset() + if options.whitelist: + whitelist = frozenset(options.whitelist.split(",")) + logging.debug("Email whitelist: %s", whitelist) + for email in notifications: + if options.send_notifications: + logging.debug("email: %s", repr(email)) + if whitelist and email not in whitelist: + continue + logging.debug("Sending.") + msg = MIMEText(notifications[email]) + msg["Subject"] = "OpenCSW catalog update report" + from_address = "Catalog update notifier " + msg['From'] = from_address + msg['To'] = email + s = smtplib.SMTP('localhost') + s.sendmail(from_address, [email], msg.as_string()) + s.quit() + logging.debug("E-mail sent.") + else: + print notifications[email] + print "* * *" + with open(pickle_path, "wb") as fd: + cPickle.dump(catalogs_by_triad, fd) + + +if __name__ == '__main__': + main() Copied: csw/mgar/gar/v2-uwatch2/lib/python/catalog_notifier_test.py (from rev 13268, csw/mgar/gar/v2/lib/python/catalog_notifier_test.py) =================================================================== --- csw/mgar/gar/v2-uwatch2/lib/python/catalog_notifier_test.py (rev 0) +++ csw/mgar/gar/v2-uwatch2/lib/python/catalog_notifier_test.py 2011-02-13 12:55:58 UTC (rev 13270) @@ -0,0 +1,220 @@ +#!/usr/bin/env python2.6 + +import unittest +import mox +import catalog_notifier +import catalog +import catalog_test +import copy +import pprint +import rest + + +class NotificationFormatterTest(mox.MoxTestBase): + + def disabled_testOne(self): + """This tested too much.""" + f = catalog_notifier.NotificationFormatter() + rest_client_mock = self.mox.CreateMock(rest.RestClient) + url = "http://www.example.com/opencsw/" + cat_a = self.mox.CreateMock(catalog.OpencswCatalog) + cat_b = self.mox.CreateMock(catalog.OpencswCatalog) + catalogs = [ + ("fossil", "amd65", "SolarOS5.12", cat_a, cat_b), + ] + maintainers = { + "cfe40c06e994f6e8d3b191396d0365cb": {"maintainer_email": "joe at example.com"}, + } + cat_a.GetDataByCatalogname().AndReturn({}) + cat_b.GetDataByCatalogname().AndReturn({"syslog_ng": catalog_test.PKG_STRUCT_1}) + self.mox.ReplayAll() + self.assertEqual( + "report here", + f.FormatNotification(url, catalogs, rest_client_mock)) + + def test_GetPkgsByMaintainerNew(self): + f = catalog_notifier.NotificationFormatter() + rest_client_mock = self.mox.CreateMock(rest.RestClient) + cat_a = self.mox.CreateMock(catalog.OpencswCatalog) + cat_b = self.mox.CreateMock(catalog.OpencswCatalog) + catalogs = [ + ("fossil", "amd65", "SolarOS5.12", cat_a, cat_b), + ("fossil", "amd65", "SolarOS5.13", cat_a, cat_b), + ("fossil", "amd67", "SolarOS5.12", cat_a, cat_b), + ("rock", "amd65", "SolarOS5.12", cat_a, cat_b), + ] + rest_client_mock.GetMaintainerByMd5('cfe40c06e994f6e8d3b191396d0365cb').AndReturn( + {"maintainer_email": "joe at example.com"} + ) + rest_client_mock.GetMaintainerByMd5('cfe40c06e994f6e8d3b191396d0365cb').AndReturn( + {"maintainer_email": "joe at example.com"} + ) + rest_client_mock.GetMaintainerByMd5('cfe40c06e994f6e8d3b191396d0365cb').AndReturn( + {"maintainer_email": "joe at example.com"} + ) + rest_client_mock.GetMaintainerByMd5('cfe40c06e994f6e8d3b191396d0365cb').AndReturn( + {"maintainer_email": "joe at example.com"} + ) + cat_a.GetDataByCatalogname().AndReturn({}) + cat_b.GetDataByCatalogname().AndReturn({ + "syslog_ng": catalog_test.PKG_STRUCT_1, + }) + cat_a.GetDataByCatalogname().AndReturn({}) + cat_b.GetDataByCatalogname().AndReturn({ + "syslog_ng": catalog_test.PKG_STRUCT_1, + }) + cat_a.GetDataByCatalogname().AndReturn({}) + cat_b.GetDataByCatalogname().AndReturn({ + "syslog_ng": catalog_test.PKG_STRUCT_1, + }) + cat_a.GetDataByCatalogname().AndReturn({}) + cat_b.GetDataByCatalogname().AndReturn({ + "syslog_ng": catalog_test.PKG_STRUCT_1, + }) + self.mox.ReplayAll() + expected = {'joe at example.com': { + 'new_pkgs': { + catalog_test.PKG_STRUCT_1["file_basename"]: { + "pkg": catalog_test.PKG_STRUCT_1, + "catalogs": [ + ("fossil", "amd65", "SolarOS5.12"), + ("fossil", "amd65", "SolarOS5.13"), + ("fossil", "amd67", "SolarOS5.12"), + ("rock", "amd65", "SolarOS5.12"), + ], + }, + }} + } + result = f._GetPkgsByMaintainer(catalogs, rest_client_mock) + self.assertEqual(expected, result) + # Uncomment to see rendered template + # print f._RenderForMaintainer( + # result["joe at example.com"], "joe at example.com", + # "http://mirror.example.com") + + def test_GetPkgsByMaintainerRemoved(self): + f = catalog_notifier.NotificationFormatter() + rest_client_mock = self.mox.CreateMock(rest.RestClient) + cat_a = self.mox.CreateMock(catalog.OpencswCatalog) + cat_b = self.mox.CreateMock(catalog.OpencswCatalog) + catalogs = [ + ("fossil", "amd65", "SolarOS5.12", cat_a, cat_b), + ] + rest_client_mock.GetMaintainerByMd5('cfe40c06e994f6e8d3b191396d0365cb').AndReturn( + {"maintainer_email": "joe at example.com"} + ) + cat_a.GetDataByCatalogname().AndReturn({ + "syslog_ng": catalog_test.PKG_STRUCT_1, + }) + cat_b.GetDataByCatalogname().AndReturn({}) + self.mox.ReplayAll() + expected = {'joe at example.com': { + 'removed_pkgs': { + catalog_test.PKG_STRUCT_1["file_basename"]: { + "pkg": catalog_test.PKG_STRUCT_1, + "catalogs": [ + ("fossil", "amd65", "SolarOS5.12"), + ], + }, + }} + } + self.assertEqual( + expected, + f._GetPkgsByMaintainer(catalogs, rest_client_mock)) + expected_text = u"""aa""" + # Uncomment to see rendered template + # print f._RenderForMaintainer( + # expected["joe at example.com"], + # "joe at example.com", + # "http://mirror.example.com") + + def test_GetPkgsByMaintainerTakeover(self): + f = catalog_notifier.NotificationFormatter() + rest_client_mock = self.mox.CreateMock(rest.RestClient) + cat_a = self.mox.CreateMock(catalog.OpencswCatalog) + cat_b = self.mox.CreateMock(catalog.OpencswCatalog) + catalogs = [ + ("fossil", "amd65", "SolarOS5.12", cat_a, cat_b), + ] + previous_pkg = copy.deepcopy(catalog_test.PKG_STRUCT_1) + previous_pkg["version"] = "previous_version" + previous_pkg["md5sum"] = "previous_md5" + cat_a.GetDataByCatalogname().AndReturn({ + "syslog_ng": previous_pkg, + }) + cat_b.GetDataByCatalogname().AndReturn({ + "syslog_ng": catalog_test.PKG_STRUCT_1, + }) + rest_client_mock.GetMaintainerByMd5('previous_md5').AndReturn( + {"maintainer_email": "jack at example.com"} + ) + rest_client_mock.GetMaintainerByMd5('cfe40c06e994f6e8d3b191396d0365cb').AndReturn( + {"maintainer_email": "joe at example.com"} + ) + self.mox.ReplayAll() + result = f._GetPkgsByMaintainer(catalogs, rest_client_mock) + self.assertTrue("jack at example.com" in result) + self.assertEqual({"lost_pkg": { + catalog_test.PKG_STRUCT_1["file_basename"]: { + "from_pkg": {previous_pkg["file_basename"]: previous_pkg}, + "to_pkg": catalog_test.PKG_STRUCT_1, + "catalogs": [("fossil", "amd65", "SolarOS5.12")], + }}}, + result["jack at example.com"]) + self.assertEqual({"got_pkg": { + catalog_test.PKG_STRUCT_1["file_basename"]: { + "from_pkg": {previous_pkg["file_basename"]: previous_pkg}, + "to_pkg": catalog_test.PKG_STRUCT_1, + "catalogs": [("fossil", "amd65", "SolarOS5.12")], + }}}, + result["joe at example.com"]) + # Uncomment to see rendered templates + # print f._RenderForMaintainer( + # result["jack at example.com"], "jack at example.com", + # "http://mirror.example.com") + # print f._RenderForMaintainer( + # result["joe at example.com"], "joe at example.com", + # "http://mirror.example.com") + + def test_GetPkgsByMaintainerUpgrade(self): + f = catalog_notifier.NotificationFormatter() + rest_client_mock = self.mox.CreateMock(rest.RestClient) + cat_a = self.mox.CreateMock(catalog.OpencswCatalog) + cat_b = self.mox.CreateMock(catalog.OpencswCatalog) + catalogs = [ + ("fossil", "amd65", "SolarOS5.12", cat_a, cat_b), + ] + previous_pkg = copy.deepcopy(catalog_test.PKG_STRUCT_1) + previous_pkg["version"] = "previous_version" + previous_pkg["md5sum"] = "previous_md5" + cat_a.GetDataByCatalogname().AndReturn({ + "syslog_ng": previous_pkg, + }) + cat_b.GetDataByCatalogname().AndReturn({ + "syslog_ng": catalog_test.PKG_STRUCT_1, + }) + rest_client_mock.GetMaintainerByMd5('previous_md5').AndReturn( + {"maintainer_email": "jack at example.com"} + ) + rest_client_mock.GetMaintainerByMd5('cfe40c06e994f6e8d3b191396d0365cb').AndReturn( + {"maintainer_email": "jack at example.com"} + ) + self.mox.ReplayAll() + result = f._GetPkgsByMaintainer(catalogs, rest_client_mock) + # pprint.pprint(result) + self.assertTrue("jack at example.com" in result) + # In this scenario, we group packages by the target package (after upgrade) + self.assertEqual({"upgraded_pkg": { + catalog_test.PKG_STRUCT_1["file_basename"]: { + "from_pkg": {previous_pkg["file_basename"]: previous_pkg}, + "to_pkg": catalog_test.PKG_STRUCT_1, + "catalogs": [("fossil", "amd65", "SolarOS5.12")], + }}}, + result["jack at example.com"]) + # print f._RenderForMaintainer( + # result["jack at example.com"], "jack at example.com", + # "http://mirror.example.com") + + +if __name__ == '__main__': + unittest.main() Modified: csw/mgar/gar/v2-uwatch2/lib/python/catalog_test.py =================================================================== --- csw/mgar/gar/v2-uwatch2/lib/python/catalog_test.py 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/lib/python/catalog_test.py 2011-02-13 12:55:58 UTC (rev 13270) @@ -2,28 +2,98 @@ import unittest import catalog +import os.path +from StringIO import StringIO -class OpencswCatalogUnitTest(unittest.TestCase): - - def test_ParseCatalogLine_1(self): - line = ( +CATALOG_LINE_1 = ( + "syslog_ng 3.0.4,REV=2009.08.30 " + "CSWsyslogng " + "syslog_ng-3.0.4,REV=2009.08.30-SunOS5.8-i386-CSW.pkg.gz " + "cfe40c06e994f6e8d3b191396d0365cb 137550 " + "CSWgcc4corert|CSWeventlog|CSWosslrt|CSWzlib|CSWpcrert|CSWggettextrt|" + "CSWglib2|CSWtcpwrap|CSWcswclassutils|CSWcommon none") +CATALOG_LINE_2 = ( + "syslog_ng 3.0.4,REV=2009.10.12 " + "CSWsyslogng " + "syslog_ng-3.0.4,REV=2009.10.12-SunOS5.8-i386-CSW.pkg.gz " + "a1e9747ac3aa04c0497d2a3a23885995 137367 " + "CSWcswclassutils|CSWgcc4corert|CSWeventlog|CSWosslrt|CSWzlib|CSWpcrert|" + "CSWggettextrt|CSWglib2|CSWtcpwrap|CSWcswclassutils|CSWcommon none") +CATALOG_LINE_3 = ( 'tmux 1.2,REV=2010.05.17 CSWtmux ' 'tmux-1.2,REV=2010.05.17-SunOS5.9-sparc-CSW.pkg.gz ' '145351cf6186fdcadcd169b66387f72f 214091 ' 'CSWcommon|CSWlibevent none none\n') + +PKG_STRUCT_1 = { + 'category': 'none', + 'i_deps': (), + 'pkgname': 'CSWsyslogng', + 'md5sum': 'cfe40c06e994f6e8d3b191396d0365cb', + 'version': '3.0.4,REV=2009.08.30', + 'deps': ('CSWgcc4corert', 'CSWeventlog', 'CSWosslrt', 'CSWzlib', + 'CSWpcrert', 'CSWggettextrt', 'CSWglib2', 'CSWtcpwrap', + 'CSWcswclassutils', 'CSWcommon'), + 'file_basename': 'syslog_ng-3.0.4,REV=2009.08.30-SunOS5.8-i386-CSW.pkg.gz', + 'size': '137550', + 'catalogname': 'syslog_ng'} + + + +class OpencswCatalogUnitTest(unittest.TestCase): + + def test_ParseCatalogLine_1(self): oc = catalog.OpencswCatalog(None) - parsed = oc._ParseCatalogLine(line) + parsed = oc._ParseCatalogLine(CATALOG_LINE_3) expected = {'catalogname': 'tmux', - 'deps': 'CSWcommon|CSWlibevent', + 'deps': ('CSWcommon', 'CSWlibevent'), 'file_basename': 'tmux-1.2,REV=2010.05.17-SunOS5.9-sparc-CSW.pkg.gz', 'md5sum': '145351cf6186fdcadcd169b66387f72f', - 'none_thing_1': 'none', - 'none_thing_2': 'none', + 'category': 'none', + 'i_deps': (), 'pkgname': 'CSWtmux', 'size': '214091', 'version': '1.2,REV=2010.05.17'} self.assertEquals(expected, parsed) + def testGetDataByCatalogname(self): + fd = StringIO(CATALOG_LINE_1) + oc = catalog.OpencswCatalog(fd) + expected = {"syslog_ng": PKG_STRUCT_1} + self.assertEqual(expected, oc.GetDataByCatalogname()) + +class CatalogComparatorUnitTest(unittest.TestCase): + + def testUpdateOnly(self): + oc1 = catalog.OpencswCatalog(StringIO(CATALOG_LINE_1)) + oc2 = catalog.OpencswCatalog(StringIO(CATALOG_LINE_2)) + c = catalog.CatalogComparator() + new_pkgs, removed_pkgs, updated_pkgs = c.GetCatalogDiff(oc1, oc2) + self.assertFalse(new_pkgs) + self.assertFalse(removed_pkgs) + self.assertTrue("from" in updated_pkgs[0]) + + def testAddition(self): + oc1 = catalog.OpencswCatalog(StringIO(CATALOG_LINE_1)) + oc2 = catalog.OpencswCatalog( + StringIO(CATALOG_LINE_1 + "\n" + CATALOG_LINE_3)) + c = catalog.CatalogComparator() + new_pkgs, removed_pkgs, updated_pkgs = c.GetCatalogDiff(oc1, oc2) + self.assertFalse(removed_pkgs) + self.assertFalse(updated_pkgs) + self.assertEqual(1, len(new_pkgs)) + + def testRemoval(self): + oc1 = catalog.OpencswCatalog( + StringIO(CATALOG_LINE_1 + "\n" + CATALOG_LINE_3)) + oc2 = catalog.OpencswCatalog(StringIO(CATALOG_LINE_1)) + c = catalog.CatalogComparator() + new_pkgs, removed_pkgs, updated_pkgs = c.GetCatalogDiff(oc1, oc2) + self.assertFalse(new_pkgs) + self.assertFalse(updated_pkgs) + self.assertEqual(1, len(removed_pkgs)) + + if __name__ == '__main__': unittest.main() Property changes on: csw/mgar/gar/v2-uwatch2/lib/python/catalog_test.py ___________________________________________________________________ Added: svn:executable + * Modified: csw/mgar/gar/v2-uwatch2/lib/python/checkpkg.py =================================================================== --- csw/mgar/gar/v2-uwatch2/lib/python/checkpkg.py 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/lib/python/checkpkg.py 2011-02-13 12:55:58 UTC (rev 13270) @@ -18,14 +18,10 @@ import models as m import common_constants import package_stats +import struct_util DESCRIPTION_RE = r"^([\S]+) - (.*)$" -BAD_CONTENT_REGEXES = ( - # Slightly obfuscating these by using concatenation of strings. - r'/export' r'/medusa', - r'/opt' r'/build', -) INSTALL_CONTENTS_AVG_LINE_LENGTH = 102.09710677919261 SYS_DEFAULT_RUNPATH = [ @@ -35,8 +31,6 @@ "/lib", ] -MD5_RE = re.compile(r"^[0123456789abcdef]{32}$") - class Error(Exception): pass @@ -57,22 +51,6 @@ pass -def GetOptions(): - parser = optparse.OptionParser() - parser.add_option("-d", "--debug", dest="debug", - default=False, action="store_true", - help="Turn on debugging messages") - parser.add_option("-p", "--profile", dest="profile", - default=False, action="store_true", - help=("Turn on profiling")) - parser.add_option("-q", "--quiet", dest="quiet", - default=False, action="store_true", - help=("Print less messages")) - (options, args) = parser.parse_args() - # Using set() to make the arguments unique. - return options, set(args) - - def ExtractDescription(pkginfo): desc_re = re.compile(DESCRIPTION_RE) m = re.match(desc_re, pkginfo["NAME"]) @@ -90,15 +68,11 @@ return m.group("username") if m else None -def IsMd5(s): - # For optimization, move the compilation elsewhere. - return MD5_RE.match(s) - def GetPackageStatsByFilenamesOrMd5s(args, debug=False): filenames = [] md5s = [] for arg in args: - if IsMd5(arg): + if struct_util.IsMd5(arg): md5s.append(arg) else: filenames.append(arg) Modified: csw/mgar/gar/v2-uwatch2/lib/python/checkpkg2.py =================================================================== --- csw/mgar/gar/v2-uwatch2/lib/python/checkpkg2.py 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/lib/python/checkpkg2.py 2011-02-13 12:55:58 UTC (rev 13270) @@ -14,6 +14,7 @@ import database import package_stats +import struct_util import checkpkg import checkpkg_lib import overrides @@ -59,8 +60,8 @@ help="Display less messages") parser.add_option("--catalog-release", dest="catrel", - default="unstable", - help="A catalog release: experimental, unstable, testing, stable.") + default="current", + help="A catalog release: current, unstable, testing, stable.") parser.add_option("-r", "--os-releases", dest="osrel_commas", help=("Comma separated list of ['SunOS5.9', 'SunOS5.10'], " @@ -102,7 +103,7 @@ # We need to separate files and md5 sums. md5_sums, file_list = [], [] for arg in args: - if checkpkg.MD5_RE.match(arg): + if struct_util.IsMd5(arg): md5_sums.append(arg) else: file_list.append(arg) @@ -162,7 +163,7 @@ if unapplied_overrides: print textwrap.fill(UNAPPLIED_OVERRIDES, 80) for override in unapplied_overrides: - print "* Unused %s" % override + print u"* Unused %s" % override exit_code = bool(tags_for_all_osrels) sys.exit(exit_code) Modified: csw/mgar/gar/v2-uwatch2/lib/python/checkpkg_lib.py =================================================================== --- csw/mgar/gar/v2-uwatch2/lib/python/checkpkg_lib.py 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/lib/python/checkpkg_lib.py 2011-02-13 12:55:58 UTC (rev 13270) @@ -136,15 +136,18 @@ self.debug = debug self.name = name self.sqo_pkgs_list = sqo_pkgs_list - self.errors = [] - self.individual_checks = [] - self.set_checks = [] - self.packages = [] self.osrel = osrel self.arch = arch self.catrel = catrel self.show_progress = show_progress + self._ResetState() + self.individual_checks = [] + self.set_checks = [] + def _ResetState(self): + self.errors = [] + self.packages = [] + def GetProgressBar(self): if self.show_progress and not self.debug: return progressbar.ProgressBar() @@ -155,10 +158,6 @@ return super(CheckpkgManagerBase, self).GetSqlobjectTriad( self.osrel, self.arch, self.catrel) - def GetPackageStatsList(self): - raise RuntimeError("Please don't use this function as it violates " - "the Law of Demeter.") - def FormatReports(self, errors, messages, gar_lines): namespace = { "name": self.name, @@ -203,7 +202,7 @@ # left is lists and dictionaries. i = counter.next() if stats_obj.data_obj: - raw_pkg_data = cPickle.loads(stats_obj.data_obj.pickle) + raw_pkg_data = stats_obj.GetStatsStruct() else: raise CatalogDatabaseError( "%s (%s) is missing the data object." @@ -219,20 +218,18 @@ Returns a tuple of an exit code and a report. """ - # packages_data = self.GetPackageStatsList() + self._ResetState() assert self.sqo_pkgs_list, "The list of packages must not be empty." db_stat_objs_by_pkgname = {} for pkg in self.sqo_pkgs_list: db_stat_objs_by_pkgname[pkg.pkginst.pkgname] = pkg logging.debug("Deleting old errors from the database.") + sqo_os_rel, sqo_arch, sqo_catrel = self.GetSqlobjectTriad() for pkgname, db_obj in db_stat_objs_by_pkgname.iteritems(): - sqo_os_rel, sqo_arch, sqo_catrel = self.GetSqlobjectTriad() - db_obj.RemoveCheckpkgResults( - sqo_os_rel, sqo_arch, sqo_catrel) + db_obj.RemoveCheckpkgResults(sqo_os_rel, sqo_arch, sqo_catrel) errors, messages, gar_lines = self.GetAllTags(self.sqo_pkgs_list) - no_errors = len(errors) + 1 pbar = self.GetProgressBar() - pbar.maxval = no_errors + pbar.maxval = len(errors) + 1 count = itertools.count(1) logging.info("Stuffing the candies under the pillow...") pbar.start() @@ -342,7 +339,6 @@ paths.append(pkg) return paths_and_pkgs - def GetPkgByPath(self, file_path): """Proxies calls to self.system_pkgmap.""" pkgs_in_catalog = self.catalog.GetPkgByPath( @@ -939,10 +935,26 @@ sqo_srv4, repr(pkg_arch), repr(filename_arch)) return ans + def GetConflictingSrv4ByCatalognameResult(self, + sqo_srv4, catalogname, + sqo_osrel, sqo_arch, sqo_catrel): + res = m.Srv4FileStats.select( + m.Srv4FileStats.q.catalogname==catalogname + ).throughTo.in_catalogs.filter( + sqlobject.AND( + m.Srv4FileInCatalog.q.osrel==sqo_osrel, + m.Srv4FileInCatalog.q.arch==sqo_arch, + m.Srv4FileInCatalog.q.catrel==sqo_catrel, + m.Srv4FileInCatalog.q.srv4file!=sqo_srv4)) + return res + def AddSrv4ToCatalog(self, sqo_srv4, osrel, arch, catrel): """Registers a srv4 file in a catalog.""" logging.debug("AddSrv4ToCatalog(%s, %s, %s, %s)", sqo_srv4, osrel, arch, catrel) + # There are only i386 and sparc catalogs. + if arch != 'i386' and arch != 'sparc': + raise CatalogDatabaseError("Wrong architecture: %s" % arch) sqo_osrel, sqo_arch, sqo_catrel = self.GetSqlobjectTriad( osrel, arch, catrel) if not self.Srv4MatchesCatalog(sqo_srv4, sqo_arch): @@ -965,9 +977,16 @@ m.Srv4FileInCatalog.q.arch==sqo_arch, m.Srv4FileInCatalog.q.catrel==sqo_catrel, m.Srv4FileInCatalog.q.srv4file!=sqo_srv4)) - if len(list(res)): + if res.count(): raise CatalogDatabaseError( - "There already is a package with that pkgname: %s" % pkginst) + "There already is a package with that pkgname: %s" % pkginst.pkgname) + res = self.GetConflictingSrv4ByCatalognameResult( + sqo_srv4, sqo_srv4.catalogname, + sqo_osrel, sqo_arch, sqo_catrel) + if res.count(): + raise CatalogDatabaseError( + "There already is a package with that catalogname: %s" + % sqo_srv4.catalogname) # Checking for presence of the same srv4 already in the catalog. res = m.Srv4FileInCatalog.select( sqlobject.AND( @@ -975,9 +994,9 @@ m.Srv4FileInCatalog.q.arch==sqo_arch, m.Srv4FileInCatalog.q.catrel==sqo_catrel, m.Srv4FileInCatalog.q.srv4file==sqo_srv4)) - if len(list(res)): - logging.debug("%s is already part of %s %s %s", - sqo_srv4, osrel, arch, catrel) + if res.count(): + logging.warning("%s is already part of %s %s %s", + sqo_srv4, osrel, arch, catrel) # Our srv4 is already part of that catalog. return obj = m.Srv4FileInCatalog( @@ -989,15 +1008,18 @@ def RemoveSrv4(self, sqo_srv4, osrel, arch, catrel): sqo_osrel, sqo_arch, sqo_catrel = self.GetSqlobjectTriad( osrel, arch, catrel) - sqo_srv4_in_cat = m.Srv4FileInCatalog.select( - sqlobject.AND( - m.Srv4FileInCatalog.q.arch==sqo_arch, - m.Srv4FileInCatalog.q.osrel==sqo_osrel, - m.Srv4FileInCatalog.q.catrel==sqo_catrel, - m.Srv4FileInCatalog.q.srv4file==sqo_srv4)).getOne() - # Files belonging to this package should not be removed from the catalog - # as the package might be still present in another catalog. - sqo_srv4_in_cat.destroySelf() + try: + sqo_srv4_in_cat = m.Srv4FileInCatalog.select( + sqlobject.AND( + m.Srv4FileInCatalog.q.arch==sqo_arch, + m.Srv4FileInCatalog.q.osrel==sqo_osrel, + m.Srv4FileInCatalog.q.catrel==sqo_catrel, + m.Srv4FileInCatalog.q.srv4file==sqo_srv4)).getOne() + # Files belonging to this package should not be removed from the catalog + # as the package might be still present in another catalog. + sqo_srv4_in_cat.destroySelf() + except sqlobject.main.SQLObjectNotFound, e: + logging.warning(e) class Catalog(CatalogMixin): Modified: csw/mgar/gar/v2-uwatch2/lib/python/checkpkg_lib_test.py =================================================================== --- csw/mgar/gar/v2-uwatch2/lib/python/checkpkg_lib_test.py 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/lib/python/checkpkg_lib_test.py 2011-02-13 12:55:58 UTC (rev 13270) @@ -1,18 +1,19 @@ #!/usr/bin/env python2.6 +import checkpkg_lib import copy -import unittest -import checkpkg_lib -import tag -import package_stats +import cPickle import database -import sqlobject +import inspective_package import models +import mox import package_stats -import inspective_package -import mox +import package_stats +import pprint +import sqlobject +import tag import test_base -import cPickle +import unittest from testdata import stubs from testdata.neon_stats import pkgstats as neon_stats @@ -350,7 +351,22 @@ # Verifying that there are some reported error tags. self.assertTrue(list(models.CheckpkgErrorTag.select())) + def testReRunCheckpkg(self): + """Error tags should not accumulate.""" + self.dbc.InitialDataImport() + sqo_pkg = package_stats.PackageStats.SaveStats(neon_stats[0], True) + cm = checkpkg_lib.CheckpkgManager2( + "testname", [sqo_pkg], "SunOS5.9", "sparc", "unstable", + show_progress=False) + before_count = models.CheckpkgErrorTag.selectBy(srv4_file=sqo_pkg).count() + cm.Run() + first_run_count = models.CheckpkgErrorTag.selectBy(srv4_file=sqo_pkg).count() + cm.Run() + second_run_count = models.CheckpkgErrorTag.selectBy(srv4_file=sqo_pkg).count() + self.assertEquals(0, before_count) + self.assertEquals(first_run_count, second_run_count) + class IndividualCheckInterfaceUnitTest(mox.MoxTestBase): def testNeededFile(self): Modified: csw/mgar/gar/v2-uwatch2/lib/python/common_constants.py =================================================================== --- csw/mgar/gar/v2-uwatch2/lib/python/common_constants.py 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/lib/python/common_constants.py 2011-02-13 12:55:58 UTC (rev 13270) @@ -3,17 +3,17 @@ ARCH_ALL = "all" PHYSICAL_ARCHITECTURES = [ARCH_SPARC, ARCH_i386] ARCHITECTURES = PHYSICAL_ARCHITECTURES + [ARCH_ALL] -OS_RELS = [ +OS_RELS = ( u"SunOS5.8", u"SunOS5.9", u"SunOS5.10", u"SunOS5.11", -] +) SYSTEM_SYMLINKS = ( - ("/opt/csw/bdb4", ["/opt/csw/bdb42"]), - ("/64", ["/amd64", "/sparcv9"]), - ("/opt/csw/lib/i386", ["/opt/csw/lib"]), + ("/opt/csw/bdb4", ("/opt/csw/bdb42",)), + ("/64", ("/amd64", "/sparcv9")), + ("/opt/csw/lib/i386", ("/opt/csw/lib",)), ) DEFAULT_INSTALL_CONTENTS_FILE = "/var/sadm/install/contents" Modified: csw/mgar/gar/v2-uwatch2/lib/python/configuration.py =================================================================== --- csw/mgar/gar/v2-uwatch2/lib/python/configuration.py 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/lib/python/configuration.py 2011-02-13 12:55:58 UTC (rev 13270) @@ -11,6 +11,7 @@ WS_RE = re.compile(r"\s+") CHECKPKG_CONFIG_FILENAME = "checkpkg.ini" +CHECKPKG_RELMGR_CONFIG_FILENAME = "checkpkg_relmgr.ini" CHECKPKG_AUTO_CONFIG_FILENAME = "checkpkg_auto.ini" CHECKPKG_DEFAULTS_FILENAME = "checkpkg_defaults.ini" CHECKPKG_DIR = "%(HOME)s/.checkpkg" @@ -21,6 +22,8 @@ CHECKPKG_AUTO_CONFIG_FILENAME) SITE_CONFIG_FILE = os.path.join(CHECKPKG_SITE_CONFIG_DIR, CHECKPKG_CONFIG_FILENAME) +SITE_CONFIG_RELMGR_FILE = os.path.join(CHECKPKG_SITE_CONFIG_DIR, + CHECKPKG_RELMGR_CONFIG_FILENAME) DEFAULTS_FILE = os.path.join(CHECKPKG_SRC_BASEDIR, CHECKPKG_DEFAULTS_FILENAME) CONFIGURATION_FILE_LOCATIONS = [ @@ -36,10 +39,11 @@ # file, it's expected that checkpkg will connect to the shared database. # To achieve this, the site-global config has to have priority over the # autogenerated file. - (DEFAULTS_FILE, True), - (AUTO_CONFIG_FILE_TMPL, False), - (SITE_CONFIG_FILE, False), - (USER_CONFIG_FILE_TMPL, False) + (DEFAULTS_FILE, True), + (AUTO_CONFIG_FILE_TMPL, False), + (SITE_CONFIG_FILE, False), + (SITE_CONFIG_RELMGR_FILE, False), + (USER_CONFIG_FILE_TMPL, False) ] @@ -59,36 +63,47 @@ else: raise +def HomeExists(): + if "HOME" not in os.environ: + return False + return True + + def GetConfig(): config = ConfigParser.SafeConfigParser() file_was_found = False for file_name_tmpl, default_file in CONFIGURATION_FILE_LOCATIONS: - filename = file_name_tmpl % os.environ - if os.path.exists(filename): - if not default_file: - file_was_found = True - config.read(file_name_tmpl % os.environ) + filename = None + try: + filename = file_name_tmpl % os.environ + if os.path.exists(filename): + if not default_file: + file_was_found = True + config.read(file_name_tmpl % os.environ) + except KeyError, e: + logging.warn(e) if not file_was_found: - db_file = "%(HOME)s/.checkpkg/checkpkg.db" % os.environ - checkpkg_dir = CHECKPKG_DIR % os.environ - MkdirP(checkpkg_dir) - config_file = AUTO_CONFIG_FILE_TMPL % os.environ - logging.warning( - "No configuration file found. Will attempt to create " - "an sane default configuration in %s." - % repr(config_file)) - if not config.has_section("database"): - config.add_section("database") - config.set("database", "type", "sqlite") - config.set("database", "name", db_file) - config.set("database", "host", "") - config.set("database", "user", "") - config.set("database", "password", "") - config.set("database", "auto_manage", "yes") - fd = open(config_file, "w") - config.write(fd) - fd.close() - logging.debug("Configuration has been written.") + if HomeExists(): + db_file = os.path.join(CHECKPKG_DIR % os.environ, "checkpkg.db") + checkpkg_dir = CHECKPKG_DIR % os.environ + MkdirP(checkpkg_dir) + config_file = AUTO_CONFIG_FILE_TMPL % os.environ + logging.warning( + "No configuration file found. Will attempt to create " + "an sane default configuration in %s." + % repr(config_file)) + if not config.has_section("database"): + config.add_section("database") + config.set("database", "type", "sqlite") + config.set("database", "name", db_file) + config.set("database", "host", "") + config.set("database", "user", "") + config.set("database", "password", "") + config.set("database", "auto_manage", "yes") + fd = open(config_file, "w") + config.write(fd) + fd.close() + logging.debug("Configuration has been written.") if not config.has_section("database"): logging.fatal("Section 'database' not found in the config file. " "Please refer to the documentation: " Copied: csw/mgar/gar/v2-uwatch2/lib/python/csw_upload_pkg.py (from rev 13268, csw/mgar/gar/v2/lib/python/csw_upload_pkg.py) =================================================================== --- csw/mgar/gar/v2-uwatch2/lib/python/csw_upload_pkg.py (rev 0) +++ csw/mgar/gar/v2-uwatch2/lib/python/csw_upload_pkg.py 2011-02-13 12:55:58 UTC (rev 13270) @@ -0,0 +1,288 @@ +#!/usr/bin/env python2.6 + +"""csw_upload_pkg.py - uploads packages to the database. + +POST using pycurl code example taken from: +http://pycurl.cvs.sourceforge.net/pycurl/pycurl/tests/test_post2.py?view=markup +""" + +from StringIO import StringIO +import pycurl +import logging +import optparse +import hashlib +import os.path +import opencsw +import json +import common_constants +import socket + + +BASE_URL = "http://buildfarm.opencsw.org/releases/" +USAGE = """%prog [ options ] [ [ ... ] ] + +Uploads a set of packages to the unstable catalog in opencsw-future. + +- When an ARCH=all package is sent, it's added to both sparc and i386 catalogs +- When a SunOS5.x package is sent, it's added to catalogs SunOS5.x, + SunOS5.(x+1), up to SunOS5.11. +- If a package update is sent, the tool uses catalogname to identify the + package it's supposed to replace + +The --remove option affects the same catalogs as the regular use, except that +it removes assignments of a given package to catalogs, instead of adding them. + +For more information, see: +http://wiki.opencsw.org/automated-release-process#toc0 +""" + +class Error(Exception): + pass + + +class RestCommunicationError(Error): + pass + + +class PackageCheckError(Error): + """A problem with the package.""" + + +class DataError(Error): + """Unexpected data found.""" + + +class Srv4Uploader(object): + + def __init__(self, filenames, debug=False): + self.filenames = filenames + self.md5_by_filename = {} + self.debug = debug + + def Upload(self): + for filename in self.filenames: + parsed_basename = opencsw.ParsePackageFileName( + os.path.basename(filename)) + if parsed_basename["vendortag"] != "CSW": + raise PackageCheckError( + "Package vendor tag is %s instead of CSW." + % parsed_basename["vendortag"]) + self._UploadFile(filename) + + def Remove(self): + for filename in self.filenames: + self._RemoveFile(filename) + + def _RemoveFile(self, filename): + md5_sum = self._GetFileMd5sum(filename) + file_in_allpkgs, file_metadata = self._GetSrv4FileMetadata(md5_sum) + osrel = file_metadata['osrel'] + arch = file_metadata['arch'] + self._IterateOverCatalogs( + filename, file_metadata, + arch, osrel, self._RemoveFromCatalog) + + def _RemoveFromCatalog(self, filename, arch, osrel, file_metadata): + md5_sum = self._GetFileMd5sum(filename) + basename = os.path.basename(filename) + parsed_basename = opencsw.ParsePackageFileName(basename) + url = ( + "%scatalogs/unstable/%s/%s/%s/" + % (BASE_URL, arch, osrel, md5_sum)) + logging.debug("DELETE @ URL: %s %s", type(url), url) + c = pycurl.Curl() + d = StringIO() + h = StringIO() + c.setopt(pycurl.URL, str(url)) + c.setopt(pycurl.CUSTOMREQUEST, "DELETE") + c.setopt(pycurl.WRITEFUNCTION, d.write) + c.setopt(pycurl.HEADERFUNCTION, h.write) + c.setopt(pycurl.HTTPHEADER, ["Expect:"]) # Fixes the HTTP 417 error + if self.debug: + c.setopt(c.VERBOSE, 1) + c.perform() + http_code = c.getinfo(pycurl.HTTP_CODE) + logging.debug( + "DELETE curl getinfo: %s %s %s", + type(http_code), + http_code, + c.getinfo(pycurl.EFFECTIVE_URL)) + c.close() + if http_code >= 400 and http_code <= 499: + raise RestCommunicationError("%s - HTTP code: %s" % (url, http_code)) + + def _GetFileMd5sum(self, filename): + if filename not in self.md5_by_filename: + logging.debug("_GetFileMd5sum(%s): Reading the file", filename) + with open(filename, "rb") as fd: + hash = hashlib.md5() + hash.update(fd.read()) + md5_sum = hash.hexdigest() + self.md5_by_filename[filename] = md5_sum + return self.md5_by_filename[filename] + + def _IterateOverCatalogs(self, filename, file_metadata, arch, osrel, callback): + # Implementing backward compatibility. A package for SunOS5.x is also + # inserted into SunOS5.(x+n) for n=(0, 1, ...) + for idx, known_osrel in enumerate(common_constants.OS_RELS): + if osrel == known_osrel: + osrels = common_constants.OS_RELS[idx:] + if arch == 'all': + archs = ('sparc', 'i386') + else: + archs = (arch,) + for arch in archs: + for osrel in osrels: + callback(filename, arch, osrel, file_metadata) + + def _UploadFile(self, filename): + md5_sum = self._GetFileMd5sum(filename) + file_in_allpkgs, file_metadata = self._GetSrv4FileMetadata(md5_sum) + if file_in_allpkgs: + logging.debug("File %s already uploaded.", filename) + else: + logging.debug("Uploading %s.", filename) + self._PostFile(filename) + file_in_allpkgs, file_metadata = self._GetSrv4FileMetadata(md5_sum) + logging.debug("file_metadata %s", repr(file_metadata)) + if not file_metadata: + raise DataError("file_metadata is empty: %s" % repr(file_metadata)) + osrel = file_metadata['osrel'] + arch = file_metadata['arch'] + self._IterateOverCatalogs( + filename, file_metadata, + arch, osrel, self._InsertIntoCatalog) + + def _InsertIntoCatalog(self, filename, arch, osrel, file_metadata): + logging.info( + "_InsertIntoCatalog(%s, %s, %s)", + repr(arch), repr(osrel), repr(filename)) + md5_sum = self._GetFileMd5sum(filename) + basename = os.path.basename(filename) + parsed_basename = opencsw.ParsePackageFileName(basename) + logging.debug("parsed_basename: %s", parsed_basename) + url = ( + "%scatalogs/unstable/%s/%s/%s/" + % (BASE_URL, arch, osrel, md5_sum)) + logging.debug("URL: %s %s", type(url), url) + c = pycurl.Curl() + d = StringIO() + h = StringIO() + # Bogus data to upload + s = StringIO() + c.setopt(pycurl.URL, str(url)) + c.setopt(pycurl.PUT, 1) + c.setopt(pycurl.UPLOAD, 1) + c.setopt(pycurl.INFILESIZE_LARGE, s.len) + c.setopt(pycurl.READFUNCTION, s.read) + c.setopt(pycurl.WRITEFUNCTION, d.write) + c.setopt(pycurl.HEADERFUNCTION, h.write) + c.setopt(pycurl.HTTPHEADER, ["Expect:"]) # Fixes the HTTP 417 error + if self.debug: + c.setopt(c.VERBOSE, 1) + c.perform() + http_code = c.getinfo(pycurl.HTTP_CODE) + logging.debug( + "curl getinfo: %s %s %s", + type(http_code), + http_code, + c.getinfo(pycurl.EFFECTIVE_URL)) + c.close() + # if self.debug: + # logging.debug("*** Headers") + # logging.debug(h.getvalue()) + # logging.debug("*** Data") + if http_code >= 400 and http_code <= 499: + if not self.debug: + # In debug mode, all headers are printed to screen, and we aren't + # interested in the response body. + logging.fatal("Response: %s %s", http_code, d.getvalue()) + raise RestCommunicationError("%s - HTTP code: %s" % (url, http_code)) + else: + logging.info("Response: %s %s", http_code, d.getvalue()) + return http_code + + def _GetSrv4FileMetadata(self, md5_sum): + logging.debug("_GetSrv4FileMetadata(%s)", repr(md5_sum)) + url = BASE_URL + "srv4/" + md5_sum + "/" + c = pycurl.Curl() + d = StringIO() + h = StringIO() + c.setopt(pycurl.URL, url) + c.setopt(pycurl.WRITEFUNCTION, d.write) + c.setopt(pycurl.HEADERFUNCTION, h.write) + if self.debug: + c.setopt(c.VERBOSE, 1) + c.perform() + http_code = c.getinfo(pycurl.HTTP_CODE) + logging.debug( + "curl getinfo: %s %s %s", + type(http_code), + http_code, + c.getinfo(pycurl.EFFECTIVE_URL)) + c.close() + successful = http_code >= 200 and http_code <= 299 + metadata = None + if successful: + metadata = json.loads(d.getvalue()) + else: + logging.info("Data for %s not found" % repr(md5_sum)) + return successful, metadata + + def _PostFile(self, filename): + logging.info("_PostFile(%s)", repr(filename)) + md5_sum = self._GetFileMd5sum(filename) + c = pycurl.Curl() + d = StringIO() + h = StringIO() + url = BASE_URL + "srv4/" + c.setopt(pycurl.URL, url) + c.setopt(pycurl.POST, 1) + post_data = [ + ('srv4_file', (pycurl.FORM_FILE, filename)), + ('submit', 'Upload'), + ('md5_sum', md5_sum), + ('basename', os.path.basename(filename)), + ] + c.setopt(pycurl.HTTPPOST, post_data) + c.setopt(pycurl.WRITEFUNCTION, d.write) + c.setopt(pycurl.HEADERFUNCTION, h.write) + c.setopt(pycurl.HTTPHEADER, ["Expect:"]) # Fixes the HTTP 417 error + if self.debug: + c.setopt(c.VERBOSE, 1) + c.perform() + http_code = c.getinfo(pycurl.HTTP_CODE) + c.close() + if self.debug: + logging.debug("*** Headers") + logging.debug(h.getvalue()) + logging.debug("*** Data") + logging.debug(d.getvalue()) + logging.debug("File POST http code: %s", http_code) + if http_code >= 400 and http_code <= 499: + raise RestCommunicationError("%s - HTTP code: %s" % (url, http_code)) + + +if __name__ == '__main__': + parser = optparse.OptionParser(USAGE) + parser.add_option("-d", "--debug", + dest="debug", + default=False, action="store_true") + parser.add_option("--remove", + dest="remove", + default=False, action="store_true", + help="Remove packages from catalogs instead of adding them") + options, args = parser.parse_args() + if options.debug: + logging.basicConfig(level=logging.DEBUG) + else: + logging.basicConfig(level=logging.INFO) + logging.debug("args: %s", args) + hostname = socket.gethostname() + if not hostname.startswith('login'): + logging.warning("This script is meant to be run on the login host.") + uploader = Srv4Uploader(args, debug=options.debug) + if options.remove: + uploader.Remove() + else: + uploader.Upload() Modified: csw/mgar/gar/v2-uwatch2/lib/python/database.py =================================================================== --- csw/mgar/gar/v2-uwatch2/lib/python/database.py 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/lib/python/database.py 2011-02-13 12:55:58 UTC (rev 13270) @@ -82,12 +82,17 @@ ldm.InitialDataImport() ldm.SetDatabaseSchemaVersion() else: - raise DatabaseError( + msg = ( "Database schema does not match the application. " "Database contains: %s, " "the application expects: %s. " - "Make sure your application sources are up to date." % (ldm.GetDatabaseSchemaVersion(), DB_SCHEMA_VERSION)) + if DB_SCHEMA_VERSION < ldm.GetDatabaseSchemaVersion(): + msg += "Make sure your application sources are up to date." + elif DB_SCHEMA_VERSION > ldm.GetDatabaseSchemaVersion(): + msg += ("Make sure your database is up to date. " + "Re-create it if necessary.") + raise DatabaseError(msg) def _CheckAndMaybeFixFreshness(self, auto_fix): ldm = LocalDatabaseManager() @@ -260,14 +265,27 @@ def GetFileMtime(self): if not self.file_mtime: - stat_data = os.stat(SYSTEM_PKGMAP) - self.file_mtime = stat_data.st_mtime + try: + stat_data = os.stat(SYSTEM_PKGMAP) + self.file_mtime = stat_data.st_mtime + except OSError, e: + logging.warning("Could not open %s: %s", SYSTEM_PKGMAP, e) return self.file_mtime def IsDatabaseUpToDate(self): f_mtime_epoch = self.GetFileMtime() d_mtime_epoch = self.GetDatabaseMtime() - f_mtime = time.gmtime(int(f_mtime_epoch)) + + # On some systems where pkgdb runs, f_mtime_epoch can be None. To + # allow to run pkgdb, the absence of the SYSTEM_PKGMAP file must be + # tolerated. The GetDatabaseMtime function returns None if the file + # is absent. If f_mtime_epoch cannot be translated into a number, + # it's set to zero. + f_mtime = 0 + try: + f_mtime = time.gmtime(int(f_mtime_epoch)) + except TypeError, e: + logging.warning("Could not get file mtime: %s", e) d_mtime = time.gmtime(int(d_mtime_epoch)) logging.debug("IsDatabaseUpToDate: f_mtime %s, d_time: %s", f_mtime, d_mtime) # Rounding up to integer seconds. There is a race condition: @@ -286,6 +304,8 @@ # Using the same stuff pkgdb is using. logging.warning( "Refreshing the database. It may take a long time, please be patient.") + logging.warning("If you need a way to make it faster, please see:") + logging.warning("http://wiki.opencsw.org/checkpkg#toc5") infile_contents = common_constants.DEFAULT_INSTALL_CONTENTS_FILE infile_pkginfo = None logging.debug("Indexing.") Modified: csw/mgar/gar/v2-uwatch2/lib/python/dependency_checks.py =================================================================== --- csw/mgar/gar/v2-uwatch2/lib/python/dependency_checks.py 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/lib/python/dependency_checks.py 2011-02-13 12:55:58 UTC (rev 13270) @@ -95,8 +95,11 @@ error_mgr.ReportError( pkgname, "deprecated-library", - ("%s %s %s/%s" - % (binary_info["path"], msg, resolved_path, soname))) + ("file=%s lib=%s/%s" + % (binary_info["path"], resolved_path, soname))) + messenger.Message( + "Binary %s links to a deprecated library %s/%s. %s" + % (binary_info["path"], resolved_path, soname, msg)) if not resolved: orphan_sonames.append((soname, binary_info["path"])) if path_list: Modified: csw/mgar/gar/v2-uwatch2/lib/python/models.py =================================================================== --- csw/mgar/gar/v2-uwatch2/lib/python/models.py 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/lib/python/models.py 2011-02-13 12:55:58 UTC (rev 13270) @@ -4,6 +4,7 @@ import logging import sqlobject +import os.path from sqlobject import sqlbuilder import cPickle @@ -24,20 +25,39 @@ name = sqlobject.UnicodeCol(length=255, unique=True, notNone=True) type = sqlobject.ForeignKey('CatalogReleaseType', notNone=True) + def __unicode__(self): + return u"Catalog release: %s" % self.name + class OsRelease(sqlobject.SQLObject): "Short name: SunOS5.9, long name: Solaris 9" short_name = sqlobject.UnicodeCol(length=40, unique=True, notNone=True) full_name = sqlobject.UnicodeCol(length=255, unique=True, notNone=True) + def __unicode__(self): + return u"OS release: %s" % self.full_name + class Architecture(sqlobject.SQLObject): "One of: 'sparc', 'x86'." name = sqlobject.UnicodeCol(length=40, unique=True, notNone=True) + def __unicode__(self): + return u"Architecture: %s" % self.name + class Maintainer(sqlobject.SQLObject): """The maintainer of the package, identified by the e-mail address.""" email = sqlobject.UnicodeCol(length=255, unique=True, notNone=True) full_name = sqlobject.UnicodeCol(length=255, default=None) + def ObfuscatedEmail(self): + username, domain = self.email.split("@") + username = username[:-3] + "..." + return "@".join((username, domain)) + + def __unicode__(self): + return u"%s <%s>" % ( + self.full_name or "Maintainer full name unknown", + self.ObfuscatedEmail()) + class Host(sqlobject.SQLObject): "Hostname, as returned by socket.getfqdn()" fqdn = sqlobject.UnicodeCol(length=255, unique=True, notNone=True) @@ -78,6 +98,9 @@ srv4_file = sqlobject.ForeignKey('Srv4FileStats') basename_idx = sqlobject.DatabaseIndex('basename') + def __unicode__(self): + return u"File: %s" % os.path.join(self.path, self.basename) + class Srv4FileStatsBlob(sqlobject.SQLObject): """Holds pickled data structures. @@ -176,7 +199,35 @@ CheckpkgOverride.sqlmeta.table, CheckpkgOverride.q.srv4_file==self))) + def __unicode__(self): + return ( + u"Package: %s-%s, %s" + % (self.catalogname, self.version_string, self.arch.name)) + def GetStatsStruct(self): + return cPickle.loads(str(self.data_obj.pickle)) + + def GetRestRepr(self): + mimetype = "application/x-vnd.opencsw.pkg;type=srv4-detail" + data = { + 'catalogname': self.catalogname, + 'basename': self.basename, + 'md5_sum': self.md5_sum, + 'size': self.size, + 'maintainer_email': self.maintainer.email, + 'maintainer_full_name': self.maintainer.full_name, + 'version_string': self.version_string, + 'arch': self.arch.name, + 'pkgname': self.pkginst.pkgname, + 'mtime': unicode(self.mtime), + 'osrel': self.os_rel.short_name, + 'rev': self.rev, + 'filename_arch': self.filename_arch.name, + # 'in_catalogs': unicode([unicode(x) for x in self.in_catalogs]), + } + return mimetype, data + + class CheckpkgErrorTagMixin(object): def ToGarSyntax(self): @@ -214,7 +265,10 @@ arch = sqlobject.ForeignKey('Architecture', notNone=True) catrel = sqlobject.ForeignKey('CatalogRelease', notNone=True) + def __unicode__(self): + return u"Error: %s %s %s" % (self.pkgname, self.tag_name, self.tag_info) + class CheckpkgOverride(sqlobject.SQLObject): # Overrides don't need to contain catalog parameters. srv4_file = sqlobject.ForeignKey('Srv4FileStats', notNone=True) @@ -222,6 +276,12 @@ tag_name = sqlobject.UnicodeCol(notNone=True) tag_info = sqlobject.UnicodeCol(default=None) + def __unicode__(self): + return (u"Override: %s: %s %s" % + (self.pkgname, + self.tag_name, + self.tag_info or "")) + def DoesApply(self, tag): """Figures out if this override applies to the given tag.""" basket_a = {} @@ -251,10 +311,36 @@ 'arch', 'osrel', 'catrel', 'srv4file', unique=True) + def __unicode__(self): + return ( + u"%s is in catalog %s %s %s" + % (self.srv4file, + self.arch.name, + self.osrel.full_name, + self.catrel.name)) + class Srv4DependsOn(sqlobject.SQLObject): """Models dependencies.""" srv4_file = sqlobject.ForeignKey('Srv4FileStats', notNone=True) pkginst = sqlobject.ForeignKey('Pkginst', notNone=True) dep_uniq_idx = sqlobject.DatabaseIndex( 'srv4_file', 'pkginst') + + +def GetCatPackagesResult(sqo_osrel, sqo_arch, sqo_catrel): + join = [ + sqlbuilder.INNERJOINOn(None, + Srv4FileInCatalog, + Srv4FileInCatalog.q.srv4file==Srv4FileStats.q.id), + ] + res = Srv4FileStats.select( + sqlobject.AND( + Srv4FileInCatalog.q.osrel==sqo_osrel, + Srv4FileInCatalog.q.arch==sqo_arch, + Srv4FileInCatalog.q.catrel==sqo_catrel, + Srv4FileStats.q.use_to_generate_catalogs==True, + ), + join=join, + ).orderBy('catalogname') + return res Modified: csw/mgar/gar/v2-uwatch2/lib/python/models_test.py =================================================================== --- csw/mgar/gar/v2-uwatch2/lib/python/models_test.py 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/lib/python/models_test.py 2011-02-13 12:55:58 UTC (rev 13270) @@ -1,5 +1,11 @@ +#!/usr/bin/env python2.6 + import unittest +import mox +import test_base import models +import sqlobject +import datetime class CheckpkgErrorTagUnitTest(unittest.TestCase): @@ -28,6 +34,52 @@ self.assertEquals(t1, t2) +class Srv4FileStatsUnitTest(test_base.SqlObjectTestMixin, mox.MoxTestBase): + + def setUp(self): + super(Srv4FileStatsUnitTest, self).setUp() + self.dbc.InitialDataImport() + self.sqo_arch = models.Architecture.selectBy(id=1).getOne() + self.sqo_osrel = models.OsRelease.selectBy(id=1).getOne() + self.sqo_catrel = models.CatalogRelease.selectBy(id=1).getOne() + self.pkginst = models.Pkginst(pkgname="CSWfoo") + self.maintainer = models.Maintainer( + email='joe at example.com', + full_name='Joe Bloggs') + self.p = models.Srv4FileStats( + arch=self.sqo_arch, + basename="foo.pkg", + catalogname="foo", + data_obj=None, + filename_arch=self.sqo_arch, + latest=True, + maintainer=self.maintainer, + md5_sum="not a real one", + size=1L, + mtime=datetime.datetime.now(), + os_rel=self.sqo_osrel, + pkginst=self.pkginst, + registered=True, + use_to_generate_catalogs=True, + rev="2011.01.01", + stats_version=0, + version_string="1.0,REV=2011.01.01", + ) + + def testRemoveCheckpkgResults(self): + error_tag = models.CheckpkgErrorTag( + tag_name="foo", + tag_info="foo_info", + srv4_file=self.p, + os_rel=self.sqo_osrel, + arch=self.sqo_arch, + catrel=self.sqo_catrel, + ) + self.assertEqual(1, models.CheckpkgErrorTag.select().count()) + self.p.RemoveCheckpkgResults(self.sqo_osrel, self.sqo_arch, self.sqo_catrel) + self.assertEqual(0, models.CheckpkgErrorTag.select().count()) + + if __name__ == '__main__': unittest.main() Property changes on: csw/mgar/gar/v2-uwatch2/lib/python/models_test.py ___________________________________________________________________ Added: svn:executable + * Modified: csw/mgar/gar/v2-uwatch2/lib/python/opencsw.py =================================================================== --- csw/mgar/gar/v2-uwatch2/lib/python/opencsw.py 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/lib/python/opencsw.py 2011-02-13 12:55:58 UTC (rev 13270) @@ -306,8 +306,9 @@ if relevant_pkgs: package_files.append(relevant_pkgs[-1]) if not package_files: - raise PackageError("Could not find %s in %s" - % (repr(software), repr(self.dir_path))) + logging.warning( + "Could not find any %s-* packages in %s", + repr(software), repr(self.dir_path)) logging.debug("The latest packages %s in %s are %s", repr(software), repr(self.dir_path), Modified: csw/mgar/gar/v2-uwatch2/lib/python/opencsw_test.py =================================================================== --- csw/mgar/gar/v2-uwatch2/lib/python/opencsw_test.py 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/lib/python/opencsw_test.py 2011-02-13 12:55:58 UTC (rev 13270) @@ -116,6 +116,7 @@ parsed = opencsw.ParsePackageFileName(file_name) self.assertEqual(parsed["arch"], "sparc") self.assertEqual(parsed["catalogname"], "boost-jam") + self.assertEqual(parsed["vendortag"], "UNCOMMITTED") def testParsePackageFileName_Nonsense(self): """Checks if the function can sustain a non-conformant string.""" Modified: csw/mgar/gar/v2-uwatch2/lib/python/package.py =================================================================== --- csw/mgar/gar/v2-uwatch2/lib/python/package.py 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/lib/python/package.py 2011-02-13 12:55:58 UTC (rev 13270) @@ -48,6 +48,7 @@ def __init__(self, pkg_path, debug=False): super(CswSrv4File, self).__init__() + logging.debug("CswSrv4File(%s, debug=%s)", repr(pkg_path), debug) self.pkg_path = pkg_path self.workdir = None self.gunzipped_path = None @@ -81,6 +82,7 @@ # Causing the class to stat the .gz file. This call throws away the # result, but the result will be cached as a object member. self.GetMtime() + self.GetMd5sum() base_name_gz = os.path.split(self.pkg_path)[1] shutil.copy(self.pkg_path, self.GetWorkDir()) self.pkg_path = os.path.join(self.GetWorkDir(), base_name_gz) Modified: csw/mgar/gar/v2-uwatch2/lib/python/package_checks.py =================================================================== --- csw/mgar/gar/v2-uwatch2/lib/python/package_checks.py 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/lib/python/package_checks.py 2011-02-13 12:55:58 UTC (rev 13270) @@ -156,6 +156,14 @@ }, } + +ALLOWED_STARTING_PATHS = frozenset([ + "/opt/csw", + "/etc/opt/csw", + "/var/opt/csw", +]) + + def RemovePackagesUnderInstallation(paths_and_pkgs_by_soname, pkgs_to_be_installed): """Emulates uninstallation of packages prior to installation @@ -430,7 +438,7 @@ msg += "URL: %s" % OBSOLETE_DEPS[obsolete_pkg]["url"] if not msg: msg = None - logger.info(msg) + messenger.Message(msg) def CheckArchitectureVsContents(pkg_data, error_mgr, logger, messenger): @@ -962,12 +970,17 @@ if binary_info["path"] in shared_libs: if su.IsLibraryLinkable(binary_info["path"]): # It is a shared library and other projects might link to it. + # Some libraries don't declare a soname; compile time linker defaults + # to their file name. if "soname" in binary_info and binary_info["soname"]: soname = binary_info["soname"] else: soname = os.path.split(binary_info["path"])[1] linkable_shared_libs.append((soname, binary_info)) check_names = True + logging.debug("CheckSharedLibraryNamingPolicy(): " + "linkable shared libs of %s: %s" + % (pkgname, linkable_shared_libs)) if len(linkable_shared_libs) > 1: sonames = sorted(set([x[0] for x in linkable_shared_libs])) tmp = su.MakePackageNameBySonameCollection(sonames) @@ -979,7 +992,7 @@ error_mgr.ReportError( "non-uniform-lib-versions-in-package", "sonames=%s" - % (sonames)) + % (",".join(sonames))) messenger.Message( "Package %s contains shared libraries, and their soname " "versions are not in sync: %s. This means that " @@ -1008,7 +1021,7 @@ pkgname) check_names = False - else: + else: # len(linkable_shared_libs) > 1 if pkgname not in multilib_pkgnames: error_mgr.ReportError( "shared-lib-pkgname-mismatch", @@ -1083,10 +1096,13 @@ error_mgr.ReportError( "shared-lib-package-contains-so-symlink", "file=%s" % entry["path"]) - messenger.SuggestGarLine("# (If %s-devel doesn't exist yet)" % pkgname) - messenger.SuggestGarLine("PACKAGES += %s-devel" % pkgname) + messenger.SuggestGarLine("# (If %s-dev doesn't exist yet)" % pkgname) + messenger.SuggestGarLine("PACKAGES += %s-dev" % pkgname) messenger.SuggestGarLine( - "PKGFILES_%s-devel += %s" % (pkgname, entry["path"])) + "PKGFILES_%s-dev += %s" % (pkgname, entry["path"])) + messenger.SuggestGarLine( + "CATALOGNAME_%s-dev = %s_dev" + % (pkgname, pkg_data["basic_stats"]["catalogname"])) messenger.Message( "The package contains shared libraries together with the " "symlink of the form libfoo.so -> libfoo.so.1. " @@ -1136,9 +1152,9 @@ % (binary_info["soname"], binary_info["base_name"])) -def CheckDocDir(pkg_data, error_mgr, logger, messenger): +def CheckLicenseFilePlacement(pkg_data, error_mgr, logger, messenger): pkgname = pkg_data["basic_stats"]["pkgname"] - docpath_re = re.compile(r"/opt/csw/share/doc/(?P[^/]+)/license") + docpath_re = re.compile(r"/opt/csw/share/doc/(?P[^/]+)/license$") for pkgmap_entry in pkg_data["pkgmap"]: if "path" not in pkgmap_entry: continue if not pkgmap_entry["path"]: continue @@ -1185,6 +1201,28 @@ % (pkgname, repr(pkgmap_entry["path"]), repr(pkgmap_entry["target"]))) +def CheckPrefixDirs(pkg_data, error_mgr, logger, messenger): + """Files are allowed to be in /opt/csw, /etc/opt/csw and /var/opt/csw.""" + pkgname = pkg_data["basic_stats"]["pkgname"] + paths_with_slashes = [(x, x + "/") for x in ALLOWED_STARTING_PATHS] + for pkgmap_entry in pkg_data["pkgmap"]: + if "path" not in pkgmap_entry: continue + if not pkgmap_entry["path"]: continue + allowed_found = False + for p, pslash in paths_with_slashes: + # We need to handle /opt/csw as an allowed path + if pkgmap_entry["path"] == p: + allowed_found = True + break + if pkgmap_entry["path"].startswith(pslash): + allowed_found = True + break + if not allowed_found: + error_mgr.ReportError( + "bad-location-of-file", + "file=%s" % pkgmap_entry["path"]) + + def CheckSonameMustNotBeEqualToFileNameIfFilenameEndsWithSo( pkg_data, error_mgr, logger, messenger): pass Modified: csw/mgar/gar/v2-uwatch2/lib/python/package_checks_test.py =================================================================== --- csw/mgar/gar/v2-uwatch2/lib/python/package_checks_test.py 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/lib/python/package_checks_test.py 2011-02-13 12:55:58 UTC (rev 13270) @@ -51,10 +51,13 @@ checkpkg_lib.IndividualCheckInterface) def testDefault(self): + self.RunCheckpkgTest(self.CheckpkgTest) + + def RunCheckpkgTest(self, callback): self.logger_mock = stubs.LoggerStub() self.SetMessenger() self.SetErrorManagerMock() - self.CheckpkgTest() + callback() self.mox.ReplayAll() getattr(pc, self.FUNCTION_NAME)(self.pkg_data, self.error_mgr_mock, @@ -646,8 +649,8 @@ self.error_mgr_mock.ReportError( 'CSWrsync', 'deprecated-library', - u'opt/csw/bin/sparcv8/rsync Deprecated Berkeley DB location ' - u'/opt/csw/lib/libdb-4.7.so') + u'file=opt/csw/bin/sparcv8/rsync ' + u'lib=/opt/csw/lib/libdb-4.7.so') self.pkg_data = [self.pkg_data] for i in range(1): self.error_mgr_mock.NeedFile( @@ -1406,7 +1409,7 @@ self.pkg_data = neon_stats[0] self.error_mgr_mock.ReportError( 'non-uniform-lib-versions-in-package', - "sonames=['libneon.so.26', 'libneon.so.27']") + "sonames=libneon.so.26,libneon.so.27") class TestCheckSharedLibraryNamingPolicyBerkeley(CheckpkgUnitTestHelper, unittest.TestCase): @@ -1415,16 +1418,50 @@ self.pkg_data = bdb48_stats[0] -class TestCheckSharedLibraryPkgDoesNotHaveTheSoFile(CheckpkgUnitTestHelper, unittest.TestCase): +class TestCheckSharedLibraryPkgDoesNotHaveTheSoFile(CheckpkgUnitTestHelper, + unittest.TestCase): FUNCTION_NAME = 'CheckSharedLibraryPkgDoesNotHaveTheSoFile' + def CheckpkgTest(self): self.pkg_data = neon_stats[0] self.error_mgr_mock.ReportError( - 'shared-lib-package-contains-so-symlink', 'file=/opt/csw/lib/libneon.so') + 'shared-lib-package-contains-so-symlink', + 'file=/opt/csw/lib/libneon.so') self.error_mgr_mock.ReportError( - 'shared-lib-package-contains-so-symlink', 'file=/opt/csw/lib/sparcv9/libneon.so') + 'shared-lib-package-contains-so-symlink', + 'file=/opt/csw/lib/sparcv9/libneon.so') +class TestCheckSharedLibraryPkgDoesNotHaveTheSoFileSuggestion( + CheckpkgUnitTestHelper, unittest.TestCase): + FUNCTION_NAME = 'CheckSharedLibraryPkgDoesNotHaveTheSoFile' + + def SetMessenger(self): + """Overriding this method to use mock instead of a stub.""" + self.messenger = self.mox.CreateMock(stubs.MessengerStub) + + def CheckpkgTest(self): + self.pkg_data = neon_stats[0] + self.error_mgr_mock.ReportError( + 'shared-lib-package-contains-so-symlink', + 'file=/opt/csw/lib/libneon.so') + self.error_mgr_mock.ReportError( + 'shared-lib-package-contains-so-symlink', + 'file=/opt/csw/lib/sparcv9/libneon.so') + self.messenger.SuggestGarLine("# (If CSWneon-dev doesn't exist yet)") + self.messenger.SuggestGarLine('PACKAGES += CSWneon-dev') + self.messenger.SuggestGarLine( + 'PKGFILES_CSWneon-dev += /opt/csw/lib/libneon.so') + self.messenger.SuggestGarLine('CATALOGNAME_CSWneon-dev = neon_dev') + self.messenger.Message(mox.IsA(str)) + self.messenger.SuggestGarLine("# (If CSWneon-dev doesn't exist yet)") + self.messenger.SuggestGarLine('PACKAGES += CSWneon-dev') + self.messenger.SuggestGarLine( + 'PKGFILES_CSWneon-dev += /opt/csw/lib/sparcv9/libneon.so') + self.messenger.SuggestGarLine('CATALOGNAME_CSWneon-dev = neon_dev') + self.messenger.Message(mox.IsA(str)) + + class TestCheckSharedLibraryNameMustBeAsubstringOfSonameGood( CheckpkgUnitTestHelper, unittest.TestCase): FUNCTION_NAME = 'CheckSharedLibraryNameMustBeAsubstringOfSoname' @@ -1444,8 +1481,9 @@ 'soname=libneon.so.27 filename=foo.so.1') -class TestCheckDocDirLicense(CheckpkgUnitTestHelper, unittest.TestCase): - FUNCTION_NAME = 'CheckDocDir' +class TestCheckLicenseFilePlacementLicense(CheckpkgUnitTestHelper, + unittest.TestCase): + FUNCTION_NAME = 'CheckLicenseFilePlacement' def CheckpkgTest(self): self.pkg_data = copy.deepcopy(neon_stats[0]) self.pkg_data["pkgmap"].append({ @@ -1459,9 +1497,23 @@ 'in-package=/opt/csw/share/doc/alien/license') -class TestCheckDocDirRandomFile(CheckpkgUnitTestHelper, unittest.TestCase): +class TestCheckLicenseFilePlacementLicenseDifferentSuffix( + CheckpkgUnitTestHelper, unittest.TestCase): + """A differently suffixed file should not trigger an error.""" + FUNCTION_NAME = 'CheckLicenseFilePlacement' + def CheckpkgTest(self): + self.pkg_data = copy.deepcopy(neon_stats[0]) + self.pkg_data["pkgmap"].append({ + "class": "none", "type": "f", "line": "", + "user": "root", "group": "bin", "mode": '0755', + "path": "/opt/csw/share/doc/alien/license.html", + }) + + +class TestCheckLicenseFilePlacementRandomFile( + CheckpkgUnitTestHelper, unittest.TestCase): "A random file should not trigger the message; only license files." - FUNCTION_NAME = 'CheckDocDir' + FUNCTION_NAME = 'CheckLicenseFilePlacement' def CheckpkgTest(self): self.pkg_data = copy.deepcopy(neon_stats[0]) self.pkg_data["pkgmap"].append({ @@ -1533,5 +1585,75 @@ self.error_mgr_mock.NeedFile('/opt/csw/lib/libpq.so.5', mox.IsA(str)) +class TestCheckPrefixDirs(CheckpkgUnitTestHelper, + unittest.TestCase): + FUNCTION_NAME = 'CheckPrefixDirs' + + def CheckpkgTest(self): + self.pkg_data = copy.deepcopy(tree_stats[0]) + self.pkg_data["pkgmap"].append( + {'class': 'none', + 'group': None, + 'line': None, + 'mode': None, + 'path': '/opt/csw/bin/foo', + 'type': 'f', + 'user': None, + 'target': None}) + + def CheckpkgTest2(self): + self.pkg_data = copy.deepcopy(tree_stats[0]) + self.pkg_data["pkgmap"].append( + {'class': 'none', + 'group': None, + 'line': None, + 'mode': None, + 'path': '/opt/cswbin/foo', + 'type': 'f', + 'user': None, + 'target': None}) + self.error_mgr_mock.ReportError( + 'bad-location-of-file', + 'file=/opt/cswbin/foo') + + def CheckpkgTest3(self): + self.pkg_data = copy.deepcopy(tree_stats[0]) + self.pkg_data["pkgmap"].append( + {'class': 'none', + 'group': None, + 'line': None, + 'mode': None, + 'path': '/var/opt/csw/foo', + 'type': 'f', + 'user': None, + 'target': None}) + + def CheckpkgTest4(self): + self.pkg_data = copy.deepcopy(tree_stats[0]) + self.pkg_data["pkgmap"].append( + {'class': 'none', + 'group': None, + 'line': None, + 'mode': None, + 'path': '/var/foo', + 'type': 'f', + 'user': None, + 'target': None}) + self.error_mgr_mock.ReportError( + 'bad-location-of-file', + 'file=/var/foo') + + # These three utility functions allow to run 3 tests in a single + # class. + def testTwo(self): + self.RunCheckpkgTest(self.CheckpkgTest2) + + def testThree(self): + self.RunCheckpkgTest(self.CheckpkgTest3) + + def testFour(self): + self.RunCheckpkgTest(self.CheckpkgTest4) + + if __name__ == '__main__': unittest.main() Modified: csw/mgar/gar/v2-uwatch2/lib/python/package_stats.py =================================================================== --- csw/mgar/gar/v2-uwatch2/lib/python/package_stats.py 2011-02-13 12:51:06 UTC (rev 13269) +++ csw/mgar/gar/v2-uwatch2/lib/python/package_stats.py 2011-02-13 12:55:58 UTC (rev 13270) @@ -26,8 +26,11 @@ BAD_CONTENT_REGEXES = ( # Slightly obfuscating these by using the default concatenation of # strings. + r'/export' r'/home', r'/export' r'/medusa', r'/opt' r'/build', + r'/usr' r'/local', + r'/usr' r'/share', ) @@ -430,14 +433,14 @@ if not srv4.data_obj: raise DatabaseError("Could not find the data object for %s (%s)" % (srv4.basename, md5_sum)) - self.all_stats = cPickle.loads(str(srv4.data_obj.pickle)) + self.all_stats = srv4.GetStatsStruct() return self.all_stats def StatsListFromCatalog(file_name_list, catalog_file_name=None, debug=False): packages = [inspective_package.InspectiveCswSrv4File(x, debug) for x in file_name_list] if catalog_file_name: - catalog_obj = catalog.OpencswCatalog(catalog_file_name) + catalog_obj = catalog.OpencswCatalog(open(catalog_file_name, "rb")) md5s_by_basename = catalog_obj.GetDataByBasename() for pkg in packages: basename = os.path.basename(pkg.pkg_path) @@ -459,7 +462,7 @@ self.logger = logging self.debug = debug - def CollectStatsFromFiles(self, file_list, catalog_file): + def CollectStatsFromFiles(self, file_list, catalog_file, force_unpack=False): args_display = file_list if len(args_display) > 5: args_display = args_display[:5] + ["...more..."] @@ -485,7 +488,7 @@ # removes the temporary directory from the disk. This allows to process # the whole catalog. stats = stats_list.pop() - stats.CollectStats() + stats.CollectStats(force=force_unpack) data_list.append(stats.GetAllStats()) pbar.update(counter.next()) pbar.finish() @@ Diff output truncated at 100000 characters. @@ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 13 14:14:18 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 13 Feb 2011 13:14:18 +0000 Subject: [csw-devel] SF.net SVN: gar:[13271] csw/mgar/gar/v2 Message-ID: Revision: 13271 http://gar.svn.sourceforge.net/gar/?rev=13271&view=rev Author: wbonnet Date: 2011-02-13 13:14:18 +0000 (Sun, 13 Feb 2011) Log Message: ----------- MErging uwatch2 branch Modified Paths: -------------- csw/mgar/gar/v2/categories/cpan/category.mk Added Paths: ----------- csw/mgar/gar/v2/bin/uwatch Removed Paths: ------------- csw/mgar/gar/v2/bin/upstream_watch Deleted: csw/mgar/gar/v2/bin/upstream_watch =================================================================== --- csw/mgar/gar/v2/bin/upstream_watch 2011-02-13 12:55:58 UTC (rev 13270) +++ csw/mgar/gar/v2/bin/upstream_watch 2011-02-13 13:14:18 UTC (rev 13271) @@ -1,208 +0,0 @@ -#!/usr/bin/perl -lw -# -# Copyright 2006 Yann Rouillard -# All rights reserved. Use is subject to license terms. -# -# Redistribution and/or use, with or without modification, is -# permitted. This software is without warranty of any kind. The -# author(s) shall not be liable in the event that use of the -# software causes damage. -# -# upstream_watch - search for new upstream files -# - -use Env; -use Getopt::Long; - -# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -# Function : compare_versions -# Purpose : Compare version number of two software -# Arguments: $version1 - version number of the first software -# $version2 - version number of the first software -# Returns : 1 if $version1 > $version2 -# 0 if $version1 == $version2 -# -1 if $version1 < $verson2 -# -sub compare_versions -{ - my $version1 = shift; - my $version2 = shift; - - # we consider the version to be composed of several elements separated by '.' ',' or '_' - # an elements can be a string or a number - # at each step we extract the next elements of the two version strings and compare them - while (my ($number1, $string1, $rem1) = ($version1 =~ /^(?:([0-9]+)|([^0-9\.,_]+))[\.,_]?(.*)?$/)) { - - my ($number2, $string2, $rem2) = ($version2 =~ /^(?:([0-9]+)|([^0-9\.,_]+))[\.,_]?(.*)?$/) or - # $versions1 if the same as $versions with additional characters so it must be more recent - # (i.e. 1.2foo is usually more recent than 1.2) - return 1; - - if (defined $number1 and defined $number2) { - my $ret = ($number1 <=> $number2); - return $ret if $ret != 0; - } elsif (defined $string1 and defined $string2) { - # string comparisons is relevevant for comparing - # version strings like 2.a and 2.b - my $ret = ($string1 cmp $string2); - return $ret if $ret != 0; - } elsif (defined $number1 and defined $string2) { - # we suppose that numbers are always greater that string - return 1; - } else { - return -1; - } - - $version1 = $rem1; - $version2 = $rem2; - } - - if ($version2 ne "") { - # $version2 if the same as $version1 with additionnal characters so it must be more recent - # (i.e. 1.2foo is usually more recent than 1.2) - return -1; - } - - return 0; -} - - -# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -# Function : get_file_list -# Purpose : Return the list of files available at a given url -# Arguments: $url - an url -# Returns : the list of files availables at the given url -# -# TODO: find a better way than lftp to do this -# -sub get_file_list_lftp -{ - my $url = shift; - my @file_list; - - my $ftp_proxy_cmd = ""; - my $http_proxy_cmd = ""; - - # lftp doesn't seem to obey the _PROXY env variable - # we must manually set them - $ftp_proxy_cmd = "set ftp:proxy $ENV{FTP_PROXY};" if exists $ENV{FTP_PROXY}; - $ftp_proxy_cmd = "set ftp:proxy $ENV{ftp_proxy};" if exists $ENV{ftp_proxy}; - $http_proxy_cmd = "set http:proxy $ENV{HTTP_PROXY};" if exists $ENV{HTTP_PROXY}; - $http_proxy_cmd = "set http:proxy $ENV{http_proxy};" if exists $ENV{http_proxy}; - $https_proxy_cmd = "set https:proxy $ENV{HTTPS_PROXY};" if exists $ENV{HTTPS_PROXY}; - $https_proxy_cmd = "set https:proxy $ENV{https_proxy};" if exists $ENV{https_proxy}; - - open (FH, "lftp -q -c \"set net:timeout 30; set net:max-retries 16; $ftp_proxy_cmd $http_proxy_cmd $https_proxy_cmd open $url/ && ls\" 2>/dev/null |"); - - while (my $line = ) { - my @cols = split (/\s+/, $line); - my $filename = $cols[$#cols]; - chomp ($filename); - my $result = rindex($filename, '/'); - if ($result != -1) { - $filename = substr $filename , $result +1 ; - } - push (@file_list, $filename); - } - - close (FH); - - return \@file_list; -} - -sub get_file_list_wget_sourceforge -{ - my $url = shift; - my @file_list; - - my $http_proxy_cmd = ""; - my $wget_command ="wget"; - my $filename = ""; - - # lftp doesn't seem to obey the _PROXY env variable - # we must manually set them - $http_proxy_cmd = "set http:proxy $ENV{HTTP_PROXY};" if exists $ENV{HTTP_PROXY}; - $http_proxy_cmd = "set http:proxy $ENV{http_proxy};" if exists $ENV{http_proxy}; - $wget_command = "$http_proxy_cmd ; wget --proxy=on" if exists $ENV{http_proxy_cmd}; - - open (FH, "$wget_command -qO- $url 2>/dev/null | grep class | grep selected | grep li | grep Download | "); - - if (my $line = ) { - my @cols = split (/"/, $line); - $filename = $cols[3]; - chomp ($filename); - } - else { - close (FH); - return \@file_list; - } - - close (FH); - - $url = "http://downloads.sourceforge.net" . $filename; - open (FH, "$wget_command -qO- $url 2>/dev/null | grep $filename | grep package_id= | grep release_id | "); - - while (my $line = ) { - my @cols = split (/>/, $line); - my $filename = $cols[2]; - chomp ($filename); - @cols = split (/ \$help, - "s|use_sf=i" => \$use_sf, - "u|url=s@" => \@urls); - -if ($help) { - print < 0) { - $newest_version = $1; - $newest_file = $file; - } - } - } - } - printf "$newest_file " if $newest_version; -} -printf "\n"; - Copied: csw/mgar/gar/v2/bin/uwatch (from rev 13270, csw/mgar/gar/v2-uwatch2/bin/uwatch) =================================================================== --- csw/mgar/gar/v2/bin/uwatch (rev 0) +++ csw/mgar/gar/v2/bin/uwatch 2011-02-13 13:14:18 UTC (rev 13271) @@ -0,0 +1,1676 @@ +#!/opt/csw/bin/python2.6 + +# TODO : check arguments for valid date +# TODO : check arguments for emtpy strings + +# +# The contents of this file are subject to the COMMON DEVELOPMENT AND +# DISTRIBUTION LICENSE (CDDL) (the "License"); you may not use this +# file except in compliance with the License. +# +# Software distributed under the License is distributed on an "AS IS" basis, +# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License +# for the specific language governing rights and limitations under the +# License. +# +# Alternatively, the contents of this file may be used under the terms of +# either the GNU General Public License Version 3 or later (the "GPL"), +# in which case the provisions of the GPL are applicable instead +# of those above. If you wish to allow use of your version of this file only +# under the terms of either the GPL, and not to allow others to +# use your version of this file under the terms of the CDDL, indicate your +# decision by deleting the provisions above and replace them with the notice +# and other provisions required by the GPL. If you do not delete +# the provisions above, a recipient may use your version of this file under +# the terms of any one of the CDDL, or the GPL. +# +# Copyright 2010 OpenCSW (http://www.opencsw.org). All rights reserved. +# Use is subject to license terms. +# +# +# Contributors list : +# +# William Bonnet wbonnet at opencsw.org +# +# + +# Import all the needed modules +import sys +import string +import re +import os +import shutil +import subprocess +import pysvn +import MySQLdb +import datetime +import ConfigParser + +from urllib2 import Request, urlopen, URLError +from optparse import OptionParser + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class InvalidSourceDirectoryContentException(Exception): + """Exception raised when a method is called on the Abstract command class + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self, message): + self.message = message + + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class AbstractCommandMethodCallException(Exception): + """Exception raised when a method is called on the Abstract command class + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self, message): + self.message = message + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class SvnClientException(Exception): + """Exception raised when an error occur while using svnClient + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self, message): + self.message = message + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class DatabaseConnectionException(Exception): + """Exception raised when an error occur while connecting to the database + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self, message): + self.message = message + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class DuplicatePackageException(Exception): + """Exception raised when an error occur while connecting to the database + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self, message): + self.message = message + + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class UpstreamUrlRetrievalFailedException(Exception): + """Exception raised when an unsuported protocol is specified in the upstream url + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self, url): + self.url = url + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class NoUpstreamVersionFoundException(Exception): + """Exception raised when searching the upstream page content does not match the regexp + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self, url, regexp): + self.url = url + self.regexp = regexp + + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class MissingArgumentException(Exception): + """Exception raised when a command line argument is missing + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self, value): + self.parameter = value + + def __str__(self): + return repr(self.parameter) + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class InvalidArgumentException(Exception): + """Exception raised when a command line argument is invalid. For instance an invalid version or date + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self, value): + self.parameter = value + + def __str__(self): + return repr(self.parameter) + + +# --------------------------------------------------------------------------------------------------------------------- + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class CommandLineParser(object): + """This class is used to parse command line. It process only options. Command verb is parsed by the main procedure + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self): + # Create the parser object + self.optionParser = OptionParser() + + # Add options to parser + self.optionParser.add_option("--verbose", help="Activate verbose mode", action="store_true", dest="verbose") + self.optionParser.add_option("--current-version", help="Current package version", action="store", dest="current_version") + self.optionParser.add_option("--target-location", help="Target location. This is the directory in which the branch will be created (parent of the branch directory). Default value is ../branches", action="store", dest="target_location") + self.optionParser.add_option("--regexp", help="Version matching regular expression", action="store", dest="regexp") + self.optionParser.add_option("--source-directory", help="Source directory (place from where the build is copied). Default value is current directory", action="store", dest="source_directory") + self.optionParser.add_option("--target-version", help="Package target version", action="store", dest="target_version") + self.optionParser.add_option("--upstream-url", help="Upstream version page url", action="store", dest="upstream_url") + + # Option used for reporting uwatch result + self.optionParser.add_option("--uwatch-error", help="Flag used to report a uwatch error", action="store_true", dest="uwatch_error") + self.optionParser.add_option("--uwatch-output", help="Flag used to report the uwatch output", action="store", dest="uwatch_output") + self.optionParser.add_option("--uwatch-deactivated",help="Flag used to report a uwatch error", action="store_true", dest="uwatch_deactivated") + self.optionParser.add_option("--uwatch-pkg-root", help="Defines the uwatch package root working directory", action="store", dest="uwatch_pkg_root") + + # Option used for storing version information in the database + self.optionParser.add_option("--gar-distfiles", help="Gar version of the package", action="store", dest="gar_distfiles") + self.optionParser.add_option("--gar-version", help="Gar version of the package", action="store", dest="gar_version") + self.optionParser.add_option("--upstream-version", help="Upstream version of the package", action="store", dest="upstream_version") + self.optionParser.add_option("--gar-path", help="Relative path in svn repository", action="store", dest="gar_path") + self.optionParser.add_option("--catalog-name", help="Catalog name", action="store", dest="catalog_name") + self.optionParser.add_option("--package-name", help="Package name", action="store", dest="package_name") + self.optionParser.add_option("--execution-date", help="Check date to be stored in the database", action="store", dest="execution_date") + + self.optionParser.add_option("--database-schema", help="Defines the database to use in the connection string", action="store", dest="database_schema") + self.optionParser.add_option("--database-host", help="Defines the database host to use in the connection string", action="store", dest="database_host") + self.optionParser.add_option("--database-user", help="Defines the database user to use in the connection string", action="store", dest="database_user") + self.optionParser.add_option("--database-password", help="Defines the database password to use in the connection string", action="store", dest="database_password") + + # ----------------------------------------------------------------------------------------------------------------- + + def parse(self): + (self.options, self.args) = self.optionParser.parse_args() + return self.options, self.args + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class UwatchConfiguration(object): + """This handles parameters retrieved either from command line or configuration file. + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def initialize(self, args): + """Initialize configuration object. If configurations contains files reference, values from the files are + read and copied into this object. Next attempts to retrieve files stored information will read values from + this object. + """ + + # Default is no file parser + fileParser = None + + # Test if the .uwatchrc file exists + if os.path.isfile( os.path.expanduser("~/.uwatchrc") ): + # Yes thus load values from the configuration file before processing args parameter + # This allow to override from the command line some values stored in the config file + fileParser = ConfigParser.ConfigParser() + fileParser.read( [os.path.expanduser("~/.uwatchrc") ] ) + + # Read the database schema from the config file + try: + self._database_schema = fileParser.get("main", "database-schema") + except Config.NoOptionError: + self._database_schema = None + + # Read the database hostname from the config file + try: + self._database_host = fileParser.get("main", "database-host") + except Config.NoOptionError: + self._database_host = None + + # Read the database user from the config file + try: + self._database_user = fileParser.get("main", "database-user") + except Config.NoOptionError: + self._database_user = None + + # Read the database password from the config file + try: + self._database_password = fileParser.get("main", "database-password") + except Config.NoOptionError: + self._database_password = None + + # Read the package root working dir from the config file + try: + self._uwatch_pkg_root = fileParser.get("main", "uwatch-pkg-root") + except Config.NoOptionError: + self._uwatch_pkg_root = None + + # This member variable is a flag which defines the status of the verbose mode (True : activated) + if args.verbose != None: + self._verbose = args.verbose + else: + self._verbose = False + + # This member variable defines the value of the version of the package + # Current revision is not passed as a separated argument. It is part of the opencsw version number. + # Package version are defined as follow : version[,REV=revision]* + if args.current_version != None: + + # Parse the version string + ver = re.split(r"(?P.*),REV=(?P.*)", args.current_version) + + # Test if this is a match + if ver == None: + # No, thus raise an exception + msg = "Unable to parse %(version)s as a valid package version" % { 'version' : args.current_version } + raise InvalidArgumentException(msg) + else: + # If the length of array is one, the no revision is provided + if len(ver) == 1: + self._current_version = ver[0] + self._current_revision = "" + else: + self._current_version = ver[1] + self._current_revision = ver[2] + + # Attempt to split again the string. If len is greater than 1 + # Then there are at least two rev string => raise exception + ver = re.split(r"(?P.*),REV=(?P.*)", self._current_version) + if len(ver) > 1: + msg = "Unable to parse %(version)s as a valid package version. There are more than one revision string" % { 'version' : args.current_version } + raise InvalidArgumentException(msg) + + # This member variable defines the value of the regexp used to match the upstream web page + if args.regexp != None: + self._regexp = args.regexp + + # This member variable defines the url of the upstream web page used to check for new version + if args.upstream_url != None: + self._upstream_url = args.upstream_url + + # This member variable defines the target version of the package during upgrade + if args.target_version != None: + self._target_version = args.target_version + + # This member variable defines the target directory of the package during upgrade. This is the location of the new branch + if args.target_location != None: + self._target_location = args.target_location + + # This member variable defines the source directory of the package during upgrade. This is the location of the trunk (most of the time) + if args.source_directory != None: + self._source_directory = args.source_directory + + # This member variable defines the version of the package stored in the gar build description + if args.gar_version != None: + self._gar_version = args.gar_version + + # This member variable defines the upstream version of package + if args.upstream_version != None: + self._upstream_version = args.upstream_version + + # This member variable defines the relative path in the svn repository + if args.gar_path != None: + self._gar_path = args.gar_path + + # This member variable defines the catalog name of the package + if args.catalog_name != None: + self._catalog_name = args.catalog_name + + # This member variable defines the package name + if args.package_name != None: + self._package_name = args.package_name + + # This member variable defines the date of the execution (it is useful to be able to define a date to construct history of versions) + if args.execution_date != None: + self._execution_date = args.execution_date + + # This member variable defines the database to use in the connection string + if args.database_schema != None: + self._database_schema = args.database_schema + + # This member variable defines the database host to use in the connection string + if args.database_host != None: + self._database_host = args.database_host + + # This member variable defines the database user to use in the connection string + if args.database_user != None: + self._database_user = args.database_user + + # This member variable defines the database password to use in the connection string + if args.database_password != None: + self._database_password = args.database_password + + # This member variable defines the uwatch activation status + if args.uwatch_deactivated != None: + self._uwatch_deactivated = True + else: + self._uwatch_deactivated = False + + # This member variable defines the uwatch last report result + if args.uwatch_error != None: + self._uwatch_error = True + else: + self._uwatch_error = False + + # This member variable defines the uwatch last report result + if args.uwatch_pkg_root != None: + self._uwatch_pkg_root = args.uwatch_pkg_root + + # This member variable defines the uwatch last report output + if args.uwatch_output != None: + self._uwatch_output = args.uwatch_output + + # This member variable defines the gar distfiles + if args.gar_distfiles != None: + self._gar_distfiles = args.gar_distfiles + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self): + + # Initialize all variables to None. Even if useless, the purpose of this to keep up to date the list + self._verbose = None + self._uwatch_deactivated = False + self._uwatch_error = False + self._uwatch_pkg_root = None + self._current_version = None + self._current_revision = "" + self._regexp = None + self._upstream_url = None + self._target_version = None + self._source_directory = "." + self._target_location = "../branches" + self._gar_version = None + self._upstream_version = None + self._gar_path = None + self._catalog_name = None + self._package_name = None + self._execution_date = None + self._database_schema = None + self._database_host = None + self._database_user = None + self._database_password = None + self._gar_distfiles = None + self._uwatch_output = None + + # ----------------------------------------------------------------------------------------------------------------- + + def getCurrentVersion(self): + return self._current_version + + # ----------------------------------------------------------------------------------------------------------------- + + def getCurrentRevision(self): + return self._current_revision + + # ----------------------------------------------------------------------------------------------------------------- + + def getRegexp(self): + # In case the regexp is not define, we try to guess it using the distfile + if (self._regexp == None) & (self._gar_distfiles != None): + # Instanciate a regexp generator + urg = UwatchRegexGenerator() + + # Retrieve the regexp list + auto_regex_list = urg.GenerateRegex(self._catalog_name, self._gar_distfiles) + + # Use the first item as current regexp + self._regexp = auto_regex_list[0] + + return self._regexp + + # ----------------------------------------------------------------------------------------------------------------- + + def getUpstreamURL(self): + return self._upstream_url + + # ----------------------------------------------------------------------------------------------------------------- + + def getVerbose(self): + return self._verbose + + # ----------------------------------------------------------------------------------------------------------------- + + def getSourceDirectory(self): + return self._source_directory + + # ----------------------------------------------------------------------------------------------------------------- + + def getTargetLocation(self): + return self._target_location + + # ----------------------------------------------------------------------------------------------------------------- + + def getTargetVersion(self): + return self._target_version + + # ----------------------------------------------------------------------------------------------------------------- + + def getGarVersion(self): + return self._gar_version + + # ----------------------------------------------------------------------------------------------------------------- + + def getUpstreamVersion(self): + return self._upstream_version + + # ----------------------------------------------------------------------------------------------------------------- + + def getGarPath(self): + if self.getUwatchPkgRoot(): + return self._gar_path.replace(self.getUwatchPkgRoot(), "") + else: + return self._gar_path + + # ----------------------------------------------------------------------------------------------------------------- + + def getCatalogName(self): + return self._catalog_name + + # ----------------------------------------------------------------------------------------------------------------- + + def getPackageName(self): + return self._package_name + + # ----------------------------------------------------------------------------------------------------------------- + + def getExecutionDate(self): + return self._execution_date + + # ----------------------------------------------------------------------------------------------------------------- + + def getDatabaseSchema(self): + return self._database_schema + + # ----------------------------------------------------------------------------------------------------------------- + + def getDatabaseHost(self): + return self._database_host + + # ----------------------------------------------------------------------------------------------------------------- + + def getDatabaseUser(self): + return self._database_user + + # ----------------------------------------------------------------------------------------------------------------- + + def getDatabasePassword(self): + return self._database_password + + # ----------------------------------------------------------------------------------------------------------------- + + def getUwatchError(self): + return self._uwatch_error + + # ----------------------------------------------------------------------------------------------------------------- + + def getUwatchDeactivated(self): + return self._uwatch_deactivated + + # ----------------------------------------------------------------------------------------------------------------- + + def getUwatchPkgRoot(self): + return self._uwatch_pkg_root + + # ----------------------------------------------------------------------------------------------------------------- + + def getGarDistfiles(self): + return self._gar_distfiles + + # ----------------------------------------------------------------------------------------------------------------- + + def getUwatchOutput(self): + return self._uwatch_output + + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class AbstractCommand(object): + """Base class for command implementation. You should create a derived class per command to implemente. + A "command" represent a concrete action verb given to the program. + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self, name): + self.config = UwatchConfiguration() + self.name = name + + # ----------------------------------------------------------------------------------------------------------------- + + def getName(self): + return self.name + + # ----------------------------------------------------------------------------------------------------------------- + + def execute(self, opts, arguments): + print "Internal error : Abstract command method called\n" + raise AbstractCommandMethodCallException("execute") + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class UpstreamWatchCommand(AbstractCommand): + """UpstreamWatch command. This command is the base class used for all upstream watch commands. It provides argument checking + url content retrieving, version comparison, etc. + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self, name): + super(UpstreamWatchCommand, self).__init__(name) + + # ----------------------------------------------------------------------------------------------------------------- + + def UrlContentRetrieve(self, url): + + try: + # Request the upstream URL and open it + req = Request(url) + response = urlopen(req) + + except URLError, e: + if hasattr(e, 'reason'): + print 'We failed to reach a server during retrieval of : ' + url + print 'Reason: ', e.reason + elif hasattr(e, 'code'): + print 'The server couldn\'t fulfill the request during retrieval of : ' + url + print 'Error code: ', e.code + + # Check for response code value. We should get a 200 + raise UpstreamUrlRetrievalFailedException(url) + + else: + # everything is fine, retrieve the page content + return response.read() + + + # ----------------------------------------------------------------------------------------------------------------- + + def CompareVersionAndGetNewest(self, version1, version2): + + # we consider the version to be composed of several elements separated by '.' ',' '-' or '_' + # an elements can be a string or a number + # at each step we extract the next elements of the two version strings and compare them + + if isinstance(version1, str) == False: + print "Version is not a string. Please check environnement variable UFILES_REGEX" + print version1 + + if isinstance(version2, str) == False: + print "Version is not a string. Please check environnement variable UFILES_REGEX" + print version2 + + # Retrieve the tokens from both version. Use . - , and _ as splitters + splittingRegExp = "(?:[\.,_-])" + tokens1 = re.split(splittingRegExp, version1) + tokens2 = re.split(splittingRegExp, version2) + + # Iterates the toeksn of version 1, pop tokens one by one and compare to the token at same + # in version 2 + while len(tokens1) > 0: + # If we still have tokens in version 1 and version 2 is empty, then version 1 is newer + # TODO: may have to deal with beta suffixes... + if len(tokens2) == 0: + return version1 + + # Convert both elements to integer + # TODO : handles chars in versions + elem1 = tokens1.pop(0) + elem2 = tokens2.pop(0) + + # If both elements are integer, then convert to int before comparison, otherwise compare strings + try: + elem1 = int(elem1) + elem2 = int(elem2) + except: + elem1 = str(elem1) + elem2 = str(elem2) + # print "Doing string comparison" + + # print "Comparing %(elem1)s and %(elem2)s" % { 'elem1' : elem1 , 'elem2' : elem2 } + + # if elements are the same continue the loop + if elem1 == elem2: + continue + + # Test if elem1 is more recent + if elem1 > elem2: + # print "%(elem1)s > %(elem2)s" % { 'elem1' : elem1 , 'elem2' : elem2 } + return version1 + else: + # print "%(elem1)s < %(elem2)s" % { 'elem1' : elem1 , 'elem2' : elem2 } + return version2 + + return version1 + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class CheckUpstreamCommand(UpstreamWatchCommand): + """CheckUpstream command. This command retrieve the upstream web page and search for a new version. Version check is + done by matching the regexp from the makefile on the page. Results are sorted to get the highest available and + compared to current version + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self, name): + super(CheckUpstreamCommand, self).__init__(name) + + # ----------------------------------------------------------------------------------------------------------------- + + def checkArgument(self): + + # Variable used to flag that we have a missing argument + argsValid = True + + # Current version is mandatory + if self.config.getCurrentVersion() == None: + print "Error : Current version is not defined. Please use --current-version flag, or --help to display help" + argsValid = False + + # Regexp is mandatory + if self.config.getRegexp() == None: + print "Error : Regexp is not defined. Please use --regexp flag, or --help to display help" + argsValid = False + + # UpstreamURL is mandatory + if self.config.getUpstreamURL() == None: + print "Error : Upstream version page URL is not defined. Please use --upstream-url flag, or --help to display help" + argsValid = False + + # If arguments are not valid raise an exception + if argsValid == False: + raise MissingArgumentException("Some mandatory arguments are missing. Unable to continue.") + + # ----------------------------------------------------------------------------------------------------------------- + + def execute(self, opts, args): + + try: + + # Initialize configuration + self.config.initialize(opts) + + # Need a way to check that all options needed are available + self.checkArgument() + + # Call the method in charge of retrieving upstream content + content = self.UrlContentRetrieve(self.config.getUpstreamURL()) + + # Search the strings matching the regexp passed through command line arguments + p = re.compile(self.config.getRegexp()) + matches = p.findall(content) + + # Check if we have found some results + if len(matches) == 0: + raise NoUpstreamVersionFoundException(self.config.getUpstreamURL(), self.config.getRegexp()) + else: + newestVersion = self.config.getCurrentVersion() + while len(matches) > 0: + newestVersion = self.CompareVersionAndGetNewest(newestVersion, matches.pop(0)) + + # At the end of the processing loop, test if we have a newer version avail, if yes output it + if newestVersion <> self.config.getCurrentVersion(): + print newestVersion + + # Exit after processing, eveythin gis ok, return true to the command processor + return True + + except MissingArgumentException, (instance): + + # Display a cool error message :) + print instance.parameter + + # Exits through exception handling, thus return false to the command processor + return False + + except UpstreamUrlRetrievalFailedException, (instance): + + # Exits through exception handling, thus return false to the command processor + return False + + except NoUpstreamVersionFoundException, (instance): + + # Exits through exception handling, thus return false to the command processor + return False + + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class GetUpstreamLatestVersionCommand(UpstreamWatchCommand): + """GetUpstreamLatestVersion command. This command retrieve the upstream web page and search for the latest version. + Version check is done by matching the regexp from the makefile on the page. Results are sorted to get the newest version + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self, name): + super(GetUpstreamLatestVersionCommand, self).__init__(name) + + # ----------------------------------------------------------------------------------------------------------------- + + def checkArgument(self): + + # Variable used to flag that we have a missing argument + argsValid = True + + # Regexp is mandatory + if self.config.getRegexp() == None: + print "Error : Regexp is not defined. Please use --regexp flag, or --help to display help" + argsValid = False + + # UpstreamURL is mandatory + if self.config.getUpstreamURL() == None: + print "Error : Upstream version page URL is not defined. Please use --upstream-url flag, or --help to display help" + argsValid = False + + # If arguments are not valid raise an exception + if argsValid == False: + raise MissingArgumentException("Some mandatory arguments are missing. Unable to continue.") + + # ----------------------------------------------------------------------------------------------------------------- + + def execute(self, opts, args): + + try: + + # Initialize configuration + self.config.initialize(opts) + + # Need a way to check that all options needed are available + self.checkArgument() + + # Call the method in charge of retrieving upstream content + content = self.UrlContentRetrieve(self.config.getUpstreamURL()) + + # Search the strings matching the regexp passed through command line arguments + p = re.compile(self.config.getRegexp()) + matches = p.findall(content) + + # Check if we have found some results + if len(matches) == 0: + raise NoUpstreamVersionFoundException(self.config.getUpstreamURL(), self.config.getRegexp()) + else: + newestVersion = matches.pop(0) + while len(matches) > 0: + newestVersion = self.CompareVersionAndGetNewest(newestVersion, matches.pop(0)) + + # At the end of the processing loop, we print the version + print newestVersion + + # Exit after processing, eveythin gis ok, return true to the command processor + return True + + except MissingArgumentException, (instance): + + # Display a cool error message :) + print instance.parameter + + # Exits through exception handling, thus return false to the command processor + return False + + except UpstreamUrlRetrievalFailedException, (instance): + + # Exits through exception handling, thus return false to the command processor + return False + + except NoUpstreamVersionFoundException, (instance): + + # Exits through exception handling, thus return false to the command processor + return False + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class GetUpstreamVersionListCommand(UpstreamWatchCommand): + """GetUpstreamVersionList command. This command retrieve the upstream web page and search for all the versions. + Version check is done by matching the regexp from the makefile on the page. + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self, name): + super(GetUpstreamVersionListCommand, self).__init__(name) + + # ----------------------------------------------------------------------------------------------------------------- + + def checkArgument(self): + + # Variable used to flag that we have a missing argument + argsValid = True + + # Regexp is mandatory + if self.config.getRegexp() == None: + print "Error : Regexp is not defined. Please use --regexp flag, or --help to display help" + argsValid = False + + # UpstreamURL is mandatory + if self.config.getUpstreamURL() == None: + print "Error : Upstream version page URL is not defined. Please use --upstream-url flag, or --help to display help" + argsValid = False + + # If arguments are not valid raise an exception + if argsValid == False: + raise MissingArgumentException("Some mandatory arguments are missing. Unable to continue.") + + # ----------------------------------------------------------------------------------------------------------------- + + def compareAndSortVersion(self, a, b): + """This function is a wrapper to the comparison function. CompareVersionAndGetNewest returns the string containing + the newest version of the two arguments. Since sort method used on list need to have an integer return value, this + wrapper do the call to CompareVersionAndGetNewest and returns an int + """ + + if self.CompareVersionAndGetNewest(a,b) == a: + return 1 + else: + return -1 + + # ----------------------------------------------------------------------------------------------------------------- + + def execute(self, opts, args): + + try: + + # Initialize configuration + self.config.initialize(opts) + + # Need a way to check that all options needed are available + self.checkArgument() + + # Call the method in charge of retrieving upstream content + content = self.UrlContentRetrieve(self.config.getUpstreamURL()) + + listURL = self.config.getUpstreamURL().split(' ') + print "Il y a %(num)d url dans la liste" % { 'num' : len(listURL) } + + # Search the strings matching the regexp passed through command line arguments + p = re.compile(self.config.getRegexp()) + matches = p.findall(content) + + # Check if we have found some results + if len(matches) == 0: + raise NoUpstreamVersionFoundException(self.config.getUpstreamURL(), self.config.getRegexp()) + else: + # Remove duplicated entries + myList = [] + for version in matches: + myList.append(version) + + l = list(set(myList)) + l.sort(self.compareAndSortVersion) + + # Print every version in the list + for version in l: + print version + + # Exit after processing, eveythin gis ok, return true to the command processor + return True + + except MissingArgumentException, (instance): + + # Display a cool error message :) + print instance.parameter + + # Exits through exception handling, thus return false to the command processor + return False + + except UpstreamUrlRetrievalFailedException, (instance): + + # Exits through exception handling, thus return false to the command processor + return False + + except NoUpstreamVersionFoundException, (instance): + + # Exits through exception handling, thus return false to the command processor + return False + + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class UpgradeToVersionCommand(UpstreamWatchCommand): + """UpgradeToVersion command. This command upgrade the build description from a version to another. + Current files in trunk are copied to a new branch. Branch is named accord to the following pattern : + PKG/branches/upgrade_from_CURRENTVERSION_to_DESTVERSION. After copy, version in the Makefile is modified. + An optional argument can be passed to commit after branch creation. + + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self, name): + super(UpgradeToVersionCommand, self).__init__(name) + + # ----------------------------------------------------------------------------------------------------------------- + + def checkArgument(self): + + # Variable used to flag that we have a missing argument + argsValid = True + + # FromVersion is mandatory + if self.config.getCurrentVersion() == None: + print "Error : Current version is not defined. Please use --current-version flag, or --help to display help" + argsValid = False + + # ToVersion is mandatory + if self.config.getTargetVersion() == None: + print "Error : Target version is not defined. Please use --target-version flag, or --help to display help" + argsValid = False + + # ToVersion is mandatory + if self.config.getTargetLocation() == None: + print "Error : Target directory is not defined. Please use --target-location flag, or --help to display help" + argsValid = False + + # If arguments are not valid raise an exception + if argsValid == False: + raise MissingArgumentException("Some mandatory arguments are missing. Unable to continue.") + + # ----------------------------------------------------------------------------------------------------------------- + + def checkWorkingDirectory(self): + """ This method checks that the command is executed from a valid working directory. A valid working directory + is a directory in which we find a package buildDescription that means a Makefile and a gar directory or symlink + """ + + # Check that the Makefile exist + if os.path.isfile(self.config.getSourceDirectory() + "/Makefile") == False: + # No it does not exist, thus generate an error message + msg = "Error : there is no Makefile under %(src)s" % { "src" : os.path.abspath(self.config.getSourceDirectory()) } + + # Then raise an exception + raise InvalidSourceDirectoryContentException(msg) + + # Check that the gar directory exists (can be a directory or symlink) + if os.path.isdir(self.config.getSourceDirectory() + "/gar") == False: + # No it does not exist, thus generate an error message + msg = "Error : there is no gar directory under %(src)s" % { "src" : os.path.abspath(self.config.getSourceDirectory()) } + + # Then raise an exception + raise InvalidSourceDirectoryContentException(msg) + + # ----------------------------------------------------------------------------------------------------------------- + + def getGarRelativeTargetDirectory(self): + """ This method return None if gar directory is an actual directory, or a relative path if gar is a symlink to + a real directory. In case of a symlink pointing to another symlink, we do not try to get the absolute path + having one level of indirection is enough. + The target directory is a relative path. This path is adjusted to be consistent from the target directory. It + has to be modified since it is basically a relative path from the source directory. + """ + + # Get the newgar information + garDir = self.config.getSourceDirectory() + "/gar" + if os.path.islink(garDir): + garTarget = os.path.relpath(os.path.abspath(os.readlink(garDir)), os.path.abspath(targetDir)) + else: + garTarget = None + + # ----------------------------------------------------------------------------------------------------------------- + + def getGarRelativeTargetDirectory(self): + """ This method return None if gar directory is an actual directory, or a relative path if gar is a symlink to + a real directory. In case of a symlink pointing to another symlink, we do not try to get the absolute path + having one level of indirection is enough. + The target directory is a relative path. This path is adjusted to be consistent from the target directory. It + has to be modified since it is basically a relative path from the source directory. + """ + + # Get the newgar information + garDir = self.config.getSourceDirectory() + "/gar" + if os.path.islink(garDir): + garTarget = os.path.relpath(os.path.abspath(os.readlink(garDir)), os.path.abspath(self.getTargetDirectory())) + else: + garTarget = None + + return garTarget + + # ----------------------------------------------------------------------------------------------------------------- + + def getTargetDirectory(self): + """ This method return the target directory which is a computed value based on target location, current version + and target version + """ + + return self.config.getTargetLocation() + "/upgrade_from_" + self.config.getCurrentVersion() + "_to_" + self.config.getTargetVersion() + + # ----------------------------------------------------------------------------------------------------------------- + + def copySvnSourceToTarget(self, garRelativeTarget): + """ This method copy sources from the working copy to the target in the same working copy. If garRelativeTarget is not + None, it means gar directory is a symlink. Then once copy is done it is deleted in the target directory and + recreated to point to the new relative directory + """ + + try: + # Create a new svn client + svnClient = pysvn.Client() + + # Do the actual copy in the svn working copy + svnClient.copy(os.path.abspath(self.config.getSourceDirectory()), self.getTargetDirectory()) + + # Backup the current directory + curDir = os.getcwd() + + # Change to target directory + os.chdir(self.getTargetDirectory()) + + # Test if gar relative path is defined + if garRelativeTarget: + # Test if gar directory is a symlink and + if os.path.islink("./gar"): + os.remove("./gar") + os.symlink(garRelativeTarget, "./gar") + # No ... :( This a "should not happen error" since it was a symlink before the copy. Exit + else: + print "Internal error : gar is not a symlink but garRelativeTarget is defined" + return False + # No else but ... If gar relative path is not defined, we have copied a real directory. Nothing to do in this case + + # Restore the working directory + os.chdir(curDir) + + # SVN client exception handling + except pysvn.ClientError , e: + # Generate a cool error message + msg = "SVN Client error : " + e.args[0] + "\n" + "Error occured when executing command svnClient.copy(%(src)s, %(dest)s)" \ + % { 'src' : os.path.abspath(self.config.getSourceDirectory()), 'dest' : self.getTargetDirectory() } + + # Then raise the exception + raise SvnClientException(msg) + + # ----------------------------------------------------------------------------------------------------------------- + + def modifyVersion(self): + """ This method modifies the version in the Makefile. It replaces current version by new version. + Version has to be defined on a single line strting by VERSION, having some spaces or tabs then + and egal sign = then some tabs or spaces and the version vaue to finish the line + """ + + # Backup the current directory + curDir = os.getcwd() + + # Change to target directory + os.chdir(self.getTargetDirectory()) + + # Array storing the Makefile lines + lines = [] + + # Iterate each line in the file + for line in open("./Makefile", 'r'): + # Match the file line by line + m = re.match(r"\s*VERSION\s*=\s*(?P.*)", line) + + # Test if this is a match + if m == None: + # No, thus output the current line without modifications + lines.append(line) + else: + # Yes it is a match, thus output the modified line + lines.append("VERSION = " + self.config.getTargetVersion() + "\n") + + # Open the new Makefile for output + f = open("./Makefile", 'w') + + # Iterates the array of lines and write each one to the Makefile + for element in lines: + f.write(element) + + # Close the Makefile + f.close() + + # Restore the working directory + os.chdir(curDir) + + # ----------------------------------------------------------------------------------------------------------------- + + def execute(self, opts, args): + + try: + + # Initialize configuration + self.config.initialize(opts) + + # Need a way to check that all options needed are available + self.checkArgument() + + # Check that the command is launched from a valid directory + self.checkWorkingDirectory() + + # Generates the target directory + self.getTargetDirectory() + + # Get the new gar information + garRelativeTarget = self.getGarRelativeTargetDirectory() + + # Copy target directory to destination + self.copySvnSourceToTarget(garRelativeTarget) + + # Modify the version inside the Makefile + self.modifyVersion() + + # Exit after processing, eveythin gis ok, return true to the command processor + return True + + # Handles exception that occurs when arguments are incorrect + except MissingArgumentException, instance: + + # Display a cool error message :) + print instance.parameter + + # Exits through exception handling, thus return false to the command processor + return False + + # Handles SVN client exception + except SvnClientException , e: + + # Display a cool error message :) + print e.message + + # Exits through exception handling, thus return false to the command processor + return False + + # Handles exceptions which might occur while checking source directory content + except InvalidSourceDirectoryContentException , e: + + # Display a cool error message :) + print e.message + + # Exits through exception handling, thus return false to the command processor + return False + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class ReportPackageVersionCommand(UpstreamWatchCommand): + """ReportPackageVersion command. This command report and store in the database the values of version and date passed + by arguments to upstream watch. Unique key is the composed by garpath and catalog name. It means the same package can + lie into different path in the svn repository. + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self, name): + super(ReportPackageVersionCommand, self).__init__(name) + self.conn = None + + # ----------------------------------------------------------------------------------------------------------------- + + def openDatabaseConnection(self): + """This method open a connection to the mysql database using value from the configuration parser. The result of + connect method is stored into a connection object + """ + + # Open the database connection + try: + self.conn = MySQLdb.connect(host = self.config.getDatabaseHost(), + passwd = self.config.getDatabasePassword(), + db = self.config.getDatabaseSchema(), + user = self.config.getDatabaseUser() ) + + except MySQLdb.Error, e: + msg = "Error %d: %s" % (e.args[0], e.args[1]) + raise DatabaseConnectionException(msg) + + # Check that the object we got in return if defiend + if self.conn == None: + # No, raise a DatabaseConnectionException + msg = "Unable to connect to database using host = %(host)s, db = %(db)s, user = %(user)s, passwd = %(passwd)% " % { "host" : self.config.getDatabaseHost(), "passwd" : self.config.getDatabasePassword(), "db" : self.config.getDatabaseSchema(), "user" : self.config.getDatabaseUser() } + raise DatabaseConnectionException(msg) + + # ----------------------------------------------------------------------------------------------------------------- + + def closeDatabaseConnection(self): + """This method close the connection opened by openDatabaseConnection. + """ + + # Check that the connection object is valid + if self.conn : + # Yes, commit pending transactions + self.conn.commit() + + # Close the connection + self.conn.close() + else: + # No, raise a DatabaseConnectionException + msg = "Unable to disconnect from the database. Connection objet is not defined" + raise DatabaseConnectionException(msg) + + # ----------------------------------------------------------------------------------------------------------------- + + def updateVersionInDatabase(self): + """This method updates the version in the database. First it checks for the package to update using a unique + key composed of gar svn path and catalog name. If not found the package is created, otherwise it is updated. + In both case, if data are writtent to the database, entries in history table are created. + """ + + try: + # Flag used to keep track of the fact we have created a new package. Used in some case to choose behavior + isNewlyCreatedPackage = False + + # Check that the connection is defined + if self.conn == None: + # No, raise a DatabaseConnectionException + msg = "Unable to query the database. Connection objet is not defined" + raise DatabaseConnectionException(msg) + + # Get a cursor object + cursor = self.conn.cursor(MySQLdb.cursors.DictCursor) + + # First retrieve the id_pkg and deletion flag from the database + cursor.execute("select * from UWATCH_PKG_VERSION where PKG_CATALOGNAME = %s", (self.config.getCatalogName() ) ) + + # if more than one row is found, then report an error + if cursor.rowcount > 1: + msg = self.config.getCatalogName() + raise DuplicatePackageException(msg) + + # If rowcount = 0 then the package does not exist. It has to be inserted in the database + if cursor.rowcount == 0: + + # Insert the package in the package version table + cursor.execute("insert into UWATCH_PKG_VERSION (PKG_GAR_PATH, PKG_CATALOGNAME, PKG_NAME, PKG_GAR_VERSION, PKG_LAST_GAR_CHECK_DATE) \ + values ( %s , %s , %s , %s , %s )" , (self.config.getGarPath(), self.config.getCatalogName(), \ + self.config.getPackageName(), self.config.getGarVersion(), self.config.getExecutionDate() ) ) + + # Flag that we have created a package + isNewlyCreatedPackage = True + + # Output some more information if verbose mode is activated + if self.config.getVerbose() == True: + print "Package %(pkg)s added to the database" % { 'pkg' : self.config.getCatalogName() } + + # Now the package is inserted. Retrieve the newly inserted package and update other versions + cursor.execute("select * from UWATCH_PKG_VERSION where PKG_GAR_PATH = %s and PKG_CATALOGNAME = %s", \ + (self.config.getGarPath(), self.config.getCatalogName() ) ) + + # Retrieve package information + pkg = cursor.fetchone() + + # Test if the deleted flag is set + if pkg["PKG_IS_DELETED"] == 1: + # Yes thus package has to be undeleted + cursor.execute("update UWATCH_PKG_VERSION set PKG_IS_DELETED = 0 where ID_PKG='%s'" , ( pkg["ID_PKG"] ) ) + + # Output some more information if verbose mode is activated + if self.config.getVerbose() == True: + print "Package %(pkg)s has been undeleted" % { 'pkg' : self.config.getCatalogName() } + + # Test if the package has just been created. If yes the history line for gar version has to be inserted + if isNewlyCreatedPackage: + cursor.execute("insert into UWATCH_VERSION_HISTORY ( ID_PKG , HIST_VERSION_TYPE , HIST_VERSION_VALUE , HIST_VERSION_DATE ) values ( %s, %s, %s, %s)" , ( pkg["ID_PKG"], "gar", self.config.getGarVersion() , self.config.getExecutionDate() ) ) + + # In all cases (update or not) we update the last version check according to the argument + cursor.execute("update UWATCH_PKG_VERSION set PKG_LAST_UPSTREAM_CHECK_DATE = %s , PKG_GAR_PATH = %s where ID_PKG= %s" , ( self.config.getExecutionDate(), self.config.getGarPath() , pkg["ID_PKG"] ) ) + + # Test if uwatch deactivated flag is set + if self.config.getUwatchDeactivated() == True: + # Yes thus package has to be deactivated + cursor.execute("update UWATCH_PKG_VERSION set PKG_UWATCH_ACTIVATED='0' where ID_PKG= %s" , ( pkg["ID_PKG"] ) ) + if self.config.getVerbose() == True: + print "%(pkg) uWatch is deactivated, updating database" % { 'pkg' : self.config.getCatalogName() } + else: + cursor.execute("update UWATCH_PKG_VERSION set PKG_UWATCH_ACTIVATED='1' where ID_PKG= %s" , ( pkg["ID_PKG"] ) ) + # Change execution status only if activated + if self.config.getUwatchError() == True: + # Yes thus package has to be updated + cursor.execute("update UWATCH_PKG_VERSION set PKG_LAST_UPSTREAM_CHECK_STATUS='0' where ID_PKG= %s" , ( pkg["ID_PKG"] ) ) + if self.config.getVerbose() == True: + print "%(pkg)s uWatch reported an error, updating database" % { 'pkg' : self.config.getCatalogName() } + else: + cursor.execute("update UWATCH_PKG_VERSION set PKG_LAST_UPSTREAM_CHECK_STATUS='1' where ID_PKG= %s" , ( pkg["ID_PKG"] ) ) + if self.config.getVerbose() == True: + print "%(pkg)s uWatch successfully ran, updating database" % { 'pkg' : self.config.getCatalogName() } + + # Test if upstream version is passed + if self.config.getUpstreamVersion(): + # In all cases (update or not) we update the last version check according to the argument + cursor.execute("update UWATCH_PKG_VERSION set PKG_LAST_UPSTREAM_CHECK_DATE = %s , PKG_GAR_PATH = %s where ID_PKG= %s" , ( self.config.getExecutionDate(), self.config.getGarPath() , pkg["ID_PKG"] ) ) + + # Yes, compare current upstream version from commandline and database + if self.config.getUpstreamVersion() != pkg["PKG_UPSTREAM_VERSION"]: + # Yes thus package has to be updated + cursor.execute("update UWATCH_PKG_VERSION set PKG_UPSTREAM_VERSION = %s where ID_PKG= %s" , ( self.config.getUpstreamVersion(), pkg["ID_PKG"] ) ) + cursor.execute("insert into UWATCH_VERSION_HISTORY ( ID_PKG , HIST_VERSION_TYPE , HIST_VERSION_VALUE , HIST_VERSION_DATE ) \ + values ( %s, %s, %s, %s)" , ( pkg["ID_PKG"], "upstream", self.config.getUpstreamVersion() , self.config.getExecutionDate() ) ) + + # Output some more information if verbose mode is activated + if self.config.getVerbose() == True: + print "Upgrading %(pkg)s upstream version from %(current)s to %(next)s" % { 'pkg' : self.config.getCatalogName(), \ + 'next' : self.config.getUpstreamVersion() , 'current' : pkg["PKG_UPSTREAM_VERSION"] } + else: + # Output some more information if verbose mode is activated + if self.config.getVerbose() == True: + print "%(pkg) GAR version is up to date (%(current)s)" % { 'pkg' : self.config.getCatalogName(), 'current' : self.config.getUpstreamVersion() } + + # Test if gar version is passed (it is mandatory to have a value in database) + if self.config.getGarVersion(): + # In all cases (update or not) we update the last version check according to the argument + cursor.execute("update UWATCH_PKG_VERSION set PKG_LAST_GAR_CHECK_DATE = %s where ID_PKG= %s" , ( self.config.getExecutionDate(), pkg["ID_PKG"] ) ) + + # Yes, compare current gar version from commandline and database + if self.config.getGarVersion() != pkg["PKG_GAR_VERSION"]: + # Yes thus package has to be updated + cursor.execute("update UWATCH_PKG_VERSION set PKG_GAR_VERSION = %s where ID_PKG= %s" , ( self.config.getGarVersion(), pkg["ID_PKG"] ) ) + cursor.execute("insert into UWATCH_VERSION_HISTORY ( ID_PKG , HIST_VERSION_TYPE , HIST_VERSION_VALUE , HIST_VERSION_DATE ) \ + values ( %s, %s, %s, %s)" , ( pkg["ID_PKG"], "gar", self.config.getGarVersion() , self.config.getExecutionDate() ) ) + + # Output some more information if verbose mode is activated + if self.config.getVerbose() == True: + print "Upgrading %(pkg)s gar version from %(current)s to %(next)s" % { 'pkg' : self.config.getCatalogName(), \ + 'next' : self.config.getGarVersion() , 'current' : pkg["PKG_GAR_VERSION"] } + + # Before closing the connection, there is a last thing to do... storing uwatch configuration into the database + + # Yes, compare current gar version from commandline and database + cursor.execute("update UWATCH_PKG_VERSION set PKG_GAR_DISTFILES = %s, PKG_UFILES_REGEXP = %s, PKG_UPSTREAM_MASTER_SITES = %s, PKG_UWATCH_LAST_OUTPUT = %s where ID_PKG= %s" , ( self.config.getGarDistfiles(), self.config.getRegexp(), self.config.getUpstreamURL(), self.config.getUwatchOutput(), pkg["ID_PKG"] ) ) + + # Close the cursor on the database + cursor.close() + + except MySQLdb.Error, e: + msg = "Error %d: %s" % (e.args[0], e.args[1]) + raise DatabaseConnectionException(msg) + + + # ----------------------------------------------------------------------------------------------------------------- + + def checkArgument(self): + + # Variable used to flag that we have a missing argument + argsValid = True + + # Gar path is mandatory + if self.config.getGarPath() == None: + print "Error : Gar path is not defined. Please use --gar-path flag, or --help to display help" + argsValid = False + + # Gar distfiles is mandatory + if self.config.getGarDistfiles() == None: + print "Error : Gar distfiles is not defined. Please use --gar-distfiles flag, or --help to display help" + argsValid = False + + # Gar distfiles is mandatory + if self.config.getUwatchOutput() == None: + print "Error : uWatch output is not defined. Please use --uwatch-output flag, or --help to display help" + argsValid = False + + # Catalog name is mandatory + if self.config.getCatalogName() == None: + print "Error : Catalog name is not defined. Please use --catalog-name flag, or --help to display help" + argsValid = False + + # Package name is mandatory + if self.config.getPackageName() == None: + print "Error : Package name is not defined. Please use --package-name flag, or --help to display help" + argsValid = False + + # Execution date is mandatory + if self.config.getExecutionDate() == None: + print "Error : Execution date is not defined. Please use --execution-date flag, or --help to display help" + argsValid = False + + # Gar version is mandatory, other version are optional. Gar the version is the only mandatory in the database + # It has to be passed in argument in case the package does not exist yet + if self.config.getGarVersion() == None: + print "Error : Gar version is not defined. Please use --gar-version flag, or --help to display help" + argsValid = False + + # Database schema is mandatory + if self.config.getDatabaseSchema() == None: + print "Error : Database schema is not defined. Please define the value in the ~/.uwatchrc file, use --database-schema flag, or --help to display help" + argsValid = False + + # Database host is mandatory + if self.config.getDatabaseHost() == None: + print "Error : Database host is not defined. Please define the value in the ~/.uwatchrc file, use --database-host flag, or --help to display help" + argsValid = False + + # Database user is mandatory + if self.config.getDatabaseUser() == None: + print "Error : Database user is not defined. Please define the value in the ~/.uwatchrc file, use --database-user flag, or --help to display help" + argsValid = False + + # Database password is mandatory + if self.config.getDatabasePassword() == None: + print "Error : Database password is not defined. Please define the value in the ~/.uwatchrc file, use --database-password flag, or --help to display help" + argsValid = False + + # Regexp is mandatory + if self.config.getRegexp() == None: + print "Error : Regexp is not defined. Please use --regexp flag, or --help to display help" + argsValid = False + + # UpstreamURL is mandatory + if self.config.getUpstreamURL() == None: + print "Error : Upstream version page URL is not defined. Please use --upstream-url flag, or --help to display help" + argsValid = False + + # If arguments are not valid raise an exception + if argsValid == False: + raise MissingArgumentException("Some mandatory arguments are missing. Unable to continue.") + + # ----------------------------------------------------------------------------------------------------------------- + + def execute(self, opts, args): + + try: + + # Initialize configuration + self.config.initialize(opts) + + # Need a way to check that all options needed are available + self.checkArgument() + + # Connection to the database + self.openDatabaseConnection() + + # Connection to the database + self.updateVersionInDatabase() + + # Connection to the database + self.closeDatabaseConnection() + + # Exit after processing, eveythin gis ok, return true to the command processor + return True + + except MissingArgumentException, (instance): + + # Display a cool error message :) + print instance.parameter + + # Exits through exception handling, thus return false to the command processor + return False + + except InvalidArgumentException, (instance): + + # Display a cool error message :) + print instance.parameter + + # Exits through exception handling, thus return false to the command processor + return False + + except DatabaseConnectionException, (instance): + + # Display a cool error message :) + print instance.message + + # Exits through exception handling, thus return false to the command processor + return False + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class CommandProcessor(object): + """This class receive commands from the main loop and forward call to concrete command. + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self): + """Initialize the objects in charge of concrete command processing. Each object instance are stored in a + map using a key which is the action verb used on the command line. + """ + + # Defines the map storing the concrete commands + self.commandArray = {} + + # Creates all the concrete commands + cmd = CheckUpstreamCommand("check-upstream") + self.commandArray[cmd.getName()] = cmd + + cmd = GetUpstreamLatestVersionCommand("get-upstream-latest-version") + self.commandArray[cmd.getName()] = cmd + + cmd = GetUpstreamVersionListCommand("get-upstream-version-list") + self.commandArray[cmd.getName()] = cmd + + cmd = UpgradeToVersionCommand("upgrade-to-version") + self.commandArray[cmd.getName()] = cmd + + cmd = ReportPackageVersionCommand("update-package-version-database") + self.commandArray[cmd.getName()] = cmd + + # ----------------------------------------------------------------------------------------------------------------- + + def execute(self, opts, arguments): + """This method checks that an action is supplied and call the action handler + """ + + # Check that an action verb is supplied. If none an error is returned + if len(arguments) == 0: + print "Error : no action supplied" + return 1 + + # The first element in the arguments array is the action verb. Retrieve the command + # using action verb as key + if self.commandArray.has_key(arguments[0]): + res = self.commandArray[arguments[0]].execute(opts, arguments) + if res: + return 0 + else: + return 1 + else: + print "Error : %(action)s action is not supported" % { 'action' : arguments[0] } + return 2 + + +class UwatchRegexGenerator(object): + + WS_RE = re.compile(r'\s+') + DIGIT_RE = re.compile(r'\d+') + DIGIT_REMOVAL_RE = re.compile(r'\d+(?:\.\d+)*[a-z]?') + DIGIT_MATCH_MAKE_RE_1 = r'(\d+(?:\.\d+)*[a-z]?)' + DIGIT_MATCH_MAKE_RE_2 = r'(\d+(?:\.\d+)*)' + ARCHIVE_RE = re.compile(r"\.(?:tar(?:\.(?:gz|bz2))|tgz)?$") + + def _ChooseDistfile(self, file_list): + # First heuristic: files with numbers are distfiles + for f in file_list: + if self.ARCHIVE_RE.search(f): + return f + for f in file_list: + if self.DIGIT_RE.search(f): + return f + + def _SeparateSoftwareName(self, catalogname, filename): + """Separate the software name from the rest of the file name. + + Software name sometimes contains digits, which we don't want to + include in the regexes. + """ + # The first approach is to split by '-' + assert filename + parts = filename.split('-') + if self._CanBeSoftwarename(parts[0], catalogname): + return parts[0], '-' + '-'.join(parts[1:]) + return '', filename + + def _SeparateArchiveName(self, filename): + if self.ARCHIVE_RE.search(filename): + first_part = self.ARCHIVE_RE.split(filename)[0] + archive_part = ''.join(self.ARCHIVE_RE.findall(filename)) + return first_part, archive_part + return filename, '' + + def _CanBeSoftwarename(self, s, catalogname): + if s == catalogname: + return True + # This is stupid. But let's wait for a real world counterexample. + return True + + def GenerateRegex(self, catalogname, distnames): + dist_list = self.WS_RE.split(distnames) + dist_file = self._ChooseDistfile(dist_list) + if not dist_file: + return [] + softwarename, rest_of_filename = self._SeparateSoftwareName( + catalogname, dist_file) + rest_of_filename, archive_part = self._SeparateArchiveName(rest_of_filename) + no_numbers = self.DIGIT_REMOVAL_RE.split(rest_of_filename) + regex_list = [] + regex_list.append(softwarename + self.DIGIT_MATCH_MAKE_RE_1.join(no_numbers) + archive_part) + regex_list.append(softwarename + self.DIGIT_MATCH_MAKE_RE_2.join(no_numbers) + archive_part) + return regex_list + + + +# --------------------------------------------------------------------------------------------------------------------- +# +# Fonction principale +# +def main(): + """Program main loop. Process args and call concrete command action. + """ + + # Create the command processor object + commandProcessor = CommandProcessor() + + # Parse command line arguments + cliParser = CommandLineParser() + + # Call the command line parser + (opts, args) = cliParser.parse() + + # Call the execute method on the command processor. This method is in charge to find the concrete command + return commandProcessor.execute(opts, args) + +# Exit with main return code +if __name__ == '__main__': + res = main() + sys.exit(res) + Modified: csw/mgar/gar/v2/categories/cpan/category.mk =================================================================== --- csw/mgar/gar/v2/categories/cpan/category.mk 2011-02-13 12:55:58 UTC (rev 13270) +++ csw/mgar/gar/v2/categories/cpan/category.mk 2011-02-13 13:14:18 UTC (rev 13271) @@ -28,8 +28,7 @@ SPKG_SOURCEURL := $(SPKG_SOURCEURL)/~$(call TOLOWER,$(AUTHOR)) # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX ?= $(NAME)-(\d+(?:\.\d+)*).tar.gz -USTREAM_MASTER_SITE ?= $(SPKG_SOURCEURL) +UPSTREAM_MASTER_SITES ?= $(SPKG_SOURCEURL) $(foreach P,$(PACKAGES),$(eval _CATEGORY_SPKG_DESC_$P = $$(NAME): $$(or $$(SPKG_DESC_$P),$$(SPKG_DESC)))) _CATEGORY_PKGINFO = echo "PERL_MODULE_NAME=$(NAME)"; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 13 14:17:31 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 13 Feb 2011 13:17:31 +0000 Subject: [csw-devel] SF.net SVN: gar:[13272] csw/mgar/gar/v2 Message-ID: Revision: 13272 http://gar.svn.sourceforge.net/gar/?rev=13272&view=rev Author: wbonnet Date: 2011-02-13 13:17:31 +0000 (Sun, 13 Feb 2011) Log Message: ----------- Merging uwatch2 branch Modified Paths: -------------- csw/mgar/gar/v2/gar.lib.mk Property Changed: ---------------- csw/mgar/gar/v2/ csw/mgar/gar/v2/pkglib/csw/depend Property changes on: csw/mgar/gar/v2 ___________________________________________________________________ Modified: svn:mergeinfo - /csw/mgar/gar/v2:4936-6678 /csw/mgar/gar/v2-bwalton:9784-10011 /csw/mgar/gar/v2-checkpkg:7722-7855 /csw/mgar/gar/v2-checkpkg-override-relocation:10585-10737 /csw/mgar/gar/v2-checkpkg-stats:8454-8649 /csw/mgar/gar/v2-collapsed-modulations:6895 /csw/mgar/gar/v2-dirpackage:8125-8180 /csw/mgar/gar/v2-fortran:10883-12516 /csw/mgar/gar/v2-git/v2-relocate:7617 /csw/mgar/gar/v2-migrateconf:7082-7211 /csw/mgar/gar/v2-noexternals:11592-11745 /csw/mgar/gar/v2-relocate:5028-11738 /csw/mgar/gar/v2-skayser:6087-6132 /csw/mgar/gar/v2-sqlite:10434-10449 + /csw/mgar/gar/v2:4936-6678 /csw/mgar/gar/v2-bwalton:9784-10011 /csw/mgar/gar/v2-checkpkg:7722-7855 /csw/mgar/gar/v2-checkpkg-override-relocation:10585-10737 /csw/mgar/gar/v2-checkpkg-stats:8454-8649 /csw/mgar/gar/v2-collapsed-modulations:6895 /csw/mgar/gar/v2-dirpackage:8125-8180 /csw/mgar/gar/v2-fortran:10883-12516 /csw/mgar/gar/v2-git/v2-relocate:7617 /csw/mgar/gar/v2-migrateconf:7082-7211 /csw/mgar/gar/v2-noexternals:11592-11745 /csw/mgar/gar/v2-relocate:5028-11738 /csw/mgar/gar/v2-skayser:6087-6132 /csw/mgar/gar/v2-sqlite:10434-10449 /csw/mgar/gar/v2-uwatch2:12141-13270 Modified: csw/mgar/gar/v2/gar.lib.mk =================================================================== --- csw/mgar/gar/v2/gar.lib.mk 2011-02-13 13:14:18 UTC (rev 13271) +++ csw/mgar/gar/v2/gar.lib.mk 2011-02-13 13:17:31 UTC (rev 13272) @@ -180,117 +180,347 @@ #################### CHECKNEW RULES #################### + +################### UWATCH VARIABLES ################### UPSTREAM_MASTER_SITES ?= $(MASTER_SITES) -UW_ARGS = $(addprefix -u ,$(UPSTREAM_MASTER_SITES)) -SF_ARGS = $(addprefix -s ,$(UPSTREAM_USE_SF)) +ENABLE_UWATCH ?= 1 -define files2check -$(if $(UFILES_REGEX),$(shell http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/upstream_watch $(UW_ARGS) $(SF_ARGS) $(addsuffix ',$(addprefix ',$(UFILES_REGEX))))) -endef -check-upstream-and-mail: FILES2CHECK = $(call files2check) -check-upstream-and-mail: - @if [ -n '$(FILES2CHECK)' ]; then \ - NEW_FILES=""; \ - PACKAGE_UP_TO_DATE=0; \ - for FILE in $(FILES2CHECK) ""; do \ - [ -n "$$FILE" ] || continue; \ - if test -f $(COOKIEDIR)/checknew-$$FILE ; then \ - PACKAGE_UP_TO_DATE=1; \ - else \ - if echo $(DISTFILES) | grep -w $$FILE >/dev/null; then \ - PACKAGE_UP_TO_DATE=1; \ - echo "$(NAME) : Package is up-to-date. Current version is $$FILE" ; \ +######################################################## +# Display uwatch informations +# +get-uwatch-configuration: + @if [ '$(ENABLE_UWATCH)' -ne '1' ] ; then \ + echo "$(NAME) - Upstream Watch is disabled" ; \ + else \ + echo "$(NAME) - Upstream Watch is enabled" ; \ + if [ ! -n '$(CATALOGNAME)' ]; then \ + echo "$(NAME) - CATALOGNAME is not set" ; \ + else \ + echo "$(NAME) - CATALOGNAME is : $(CATALOGNAME)" ; \ + fi ; \ + if [ ! -n '$(DISTFILES)' ]; then \ + echo "$(NAME) - DISTFILES is not set" ; \ + else \ + echo "$(NAME) - DISTFILES are : $(DISTFILES)" ; \ + fi ; \ + if [ ! -n '$(UFILES_REGEX)' ]; then \ + echo "$(NAME) - UFILES_REGEX is not set" ; \ + else \ + echo "$(NAME) - UFILES_REGEX is : $(UFILES_REGEX)" ; \ + fi; \ + if [ ! -n '$(UPSTREAM_MASTER_SITES)' ]; then \ + echo "$(NAME) - UPSTREAM_MASTER_SITES is not set" ; \ + else \ + echo "$(NAME) - UPSTREAM_MASTER_SITES is : $(UPSTREAM_MASTER_SITES)" ; \ + fi; \ + if [ ! -n '$(VERSION)' ]; then \ + echo "$(NAME) - VERSION is not set" ; \ + else \ + echo "$(NAME) - GAR version is : $(VERSION)" ; \ + fi ; \ + if [ ! -n '$(http_proxy)' ]; then \ + echo "$(NAME) - http_proxy is not set" ; \ + else \ + echo "$(NAME) - http_proxy is : $(http_proxy)" ; \ + fi ; \ + if [ ! -n '$(ftp_proxy)' ]; then \ + echo "$(NAME) - ftp_proxy is not set" ; \ + else \ + echo "$(NAME) - ftp_proxy is : $(ftp_proxy)" ; \ + fi ; \ + fi ; + +######################################################## +# Retrieve the list of upstream versions +# + +get-upstream-version-list: + @if [ '$(ENABLE_UWATCH)' -ne '1' ] ; then \ + echo "$(NAME) - Upstream Watch is disabled" ; \ + else \ + UWATCHCONFCHECK="Ok" ; \ + if [ ! -n '$(UFILES_REGEX)' ]; then \ + echo "$(NAME) - UFILES_REGEX is not set - trying to guess it" ; \ + fi; \ + if [ ! -n '$(UPSTREAM_MASTER_SITES)' ]; then \ + echo "$(NAME) - Error UPSTREAM_MASTER_SITES is not set" ; \ + UWATCHCONFCHECK="Error" ; \ + fi; \ + if [ ! -n '$(VERSION)' ]; then \ + echo "$(NAME) - Error VERSION is not set" ; \ + UWATCHCONFCHECK="Error" ; \ + fi; \ + if [ "$$UWATCHCONFCHECK" -ne "Ok" ] ; then \ + exit 1 ; \ + fi ; \ + if [ ! -n '$(UFILES_REGEX)' ]; then \ + VERSIONLIST=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch get-upstream-version-list --upstream-url="$(UPSTREAM_MASTER_SITES)" --gar-distfiles="$(DISTFILES)" --catalog-name="$(CATALOGNAME)"` ; \ + else \ + VERSIONLIST=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch get-upstream-version-list --upstream-url="$(UPSTREAM_MASTER_SITES)" --regexp="$(UFILES_REGEX)"` ; \ + fi ; \ + if [ "$$?" -ne "0" ] ; then \ + echo "Error occured while executing uwatch get-upstream-version-list. Please check configuration with target get-uwatch-configuration. Here is the output of uwatch command :" ; \ + echo "Output : $$VERSIONLIST" ; \ + exit 1 ; \ + fi; \ + if [ -n "$$VERSIONLIST" ] ; then \ + for VERSION in $$VERSIONLIST ; do \ + if [ ! "$$VERSION" -eq "" ] ; then \ + echo "$(NAME) - $$VERSION" ; \ + fi ; \ + done ; \ + else \ + echo "$(NAME) - No version found. Please check UPSTREAM_MASTER_SITES and UFILES_REGEX variables in the Makefile" ; \ + fi ; \ + fi ; + +######################################################## +# Retrieve the newest upstream version +# +get-upstream-latest-version: + @if [ '$(ENABLE_UWATCH)' -ne '1' ] ; then \ + echo "$(NAME) - Upstream Watch is disabled" ; \ + else \ + UWATCHCONFCHECK="Ok" ; \ + if [ ! -n '$(UFILES_REGEX)' ]; then \ + echo "$(NAME) - UFILES_REGEX is not set - trying to guess it" ; \ + fi; \ + if [ ! -n '$(UPSTREAM_MASTER_SITES)' ]; then \ + echo "$(NAME) - Error UPSTREAM_MASTER_SITES is not set" ; \ + UWATCHCONFCHECK="Error" ; \ + fi; \ + if [ ! -n '$(VERSION)' ]; then \ + echo "$(NAME) - Error VERSION is not set" ; \ + UWATCHCONFCHECK="Error" ; \ + fi; \ + if [ "$$UWATCHCONFCHECK" -ne "Ok" ] ; then \ + exit 1 ; \ + fi ; \ + if [ ! -n '$(UFILES_REGEX)' ]; then \ + LATEST=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch get-upstream-latest-version --upstream-url="$(UPSTREAM_MASTER_SITES)" --gar-distfiles="$(DISTFILES)" --catalog-name="$(CATALOGNAME)"` ; \ + else \ + LATEST=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch get-upstream-latest-version --upstream-url="$(UPSTREAM_MASTER_SITES)" --regexp="$(UFILES_REGEX)"` ; \ + fi ; \ + if [ "$$?" -ne "0" ] ; then \ + echo "Error occured while executing uwatch get-upstream-latest-version. Please check configuration with target get-uwatch-configuration. Here is the output of uwatch command :" ; \ + echo "$$LATEST" ; \ + exit 1 ; \ + fi; \ + if [ -n "$$LATEST" ] ; then \ + echo "$(NAME) - Latest upstream version is $$LATEST" ; \ + else \ + echo "$(NAME) - No version found. Please check UPSTREAM_MASTER_SITES and UFILES_REGEX variables in the Makefile" ; \ + fi ; \ + fi ; + +######################################################## +# Compare local and upstream versions +# +check-upstream: + @if [ '$(ENABLE_UWATCH)' -ne '1' ] ; then \ + echo "$(NAME) - Upstream Watch is disabled" ; \ + else \ + UWATCHCONFCHECK="Ok" ; \ + if [ ! -n '$(UFILES_REGEX)' ]; then \ + echo "$(NAME) - UFILES_REGEX is not set - trying to guess it" ; \ + fi; \ + if [ ! -n '$(UPSTREAM_MASTER_SITES)' ]; then \ + echo "$(NAME) - Error UPSTREAM_MASTER_SITES is not set" ; \ + UWATCHCONFCHECK="Error" ; \ + fi; \ + if [ ! -n '$(VERSION)' ]; then \ + echo "$(NAME) - Error VERSION is not set" ; \ + UWATCHCONFCHECK="Error" ; \ + fi; \ + if [ "$$UWATCHCONFCHECK" -ne "Ok" ] ; then \ + exit 1 ; \ + fi ; \ + if [ ! -n '$(UFILES_REGEX)' ]; then \ + LATEST=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch check-upstream --upstream-url="$(UPSTREAM_MASTER_SITES)" --gar-distfiles="$(DISTFILES)" --catalog-name="$(CATALOGNAME)" --current-version="$(VERSION)"` ; \ + else \ + LATEST=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch check-upstream --upstream-url="$(UPSTREAM_MASTER_SITES)" --regexp="$(UFILES_REGEX)" --current-version="$(VERSION)"` ; \ + fi ; \ + if [ "$$?" -ne "0" ] ; then \ + echo "Error occured while executing uwatch check-upstream. Please check configuration with target get-uwatch-configuration. Here is the output of uwatch command :" ; \ + echo "$$LATEST" ; \ + exit 1 ; \ + fi; \ + if [ -n "$$LATEST" ] ; then \ + echo "$(NAME) : A new version of upstream files is available. Package can be upgraded from version $(VERSION) to $$LATEST"; \ + else \ + echo "$(NAME) : Package is up-to-date. Current version is $(VERSION)" ; \ + fi ; \ + fi + + +######################################################## +# Create upgrade branch from current to latest upstream +# +upgrade-to-latest-upstream: + @if [ '$(ENABLE_UWATCH)' -ne '1' ] ; then \ + echo "$(NAME) - Upstream Watch is disabled" ; \ + else \ + UWATCHCONFCHECK="Ok" ; \ + if [ ! -n '$(UFILES_REGEX)' ]; then \ + echo "$(NAME) - UFILES_REGEX is not set - trying to guess it" ; \ + fi; \ + if [ ! -n '$(UPSTREAM_MASTER_SITES)' ]; then \ + echo "$(NAME) - Error UPSTREAM_MASTER_SITES is not set" ; \ + UWATCHCONFCHECK="Error" ; \ + fi; \ + if [ ! -n '$(VERSION)' ]; then \ + echo "$(NAME) - Error VERSION is not set" ; \ + UWATCHCONFCHECK="Error" ; \ + fi; \ + if [ "$$UWATCHCONFCHECK" -ne "Ok" ] ; then \ + exit 1 ; \ + fi ; \ + if [ ! -n '$(UFILES_REGEX)' ]; then \ + LATEST=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch check-upstream --upstream-url="$(UPSTREAM_MASTER_SITES)" --gar-distfiles="$(DISTFILES)" --catalog-name="$(CATALOGNAME)" --current-version="$(VERSION)"` ; \ + else \ + LATEST=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch check-upstream --upstream-url="$(UPSTREAM_MASTER_SITES)" --regexp="$(UFILES_REGEX)" --current-version="$(VERSION)"` ; \ + fi ; \ + if [ "$$?" -ne "0" ] ; then \ + echo "Error occured while executing uwatch check-upstream. Please check configuration with target get-uwatch-configuration. Here is the output of uwatch command :" ; \ + echo "$$LATEST" ; \ + exit 1 ; \ + fi; \ + if [ ! -f "$(COOKIEDIR)/upgrade-to-latest-upstream-$$LATEST" ] ; then \ + if [ ! -d "../branches/upgrade_from_$(VERSION)_to_$$LATEST" ] ; then \ + if [ -n "$$LATEST" ] ; then \ + echo "$(NAME) : a new version of upstream files is available. Creating upgrade branch from version $(VERSION) to $$LATEST"; \ + VERSIONUPGRADE=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch upgrade-to-version --current-version="$(VERSION)" --target-version="$$LATEST"` ; \ + if [ "$$?" -ne "0" ] ; then \ + echo "Error occured while executing uwatch upgrade-to-version. Please check configuration with target get-uwatch-configuration. Here is the output of uwatch command :" ; \ + echo "$$VERSIONUPGRADE" ; \ + exit 1 ; \ + fi; \ + if [ -n "$$VERSIONUPGRADE" ] ; then \ + echo "$(NAME) - $$VERSIONUPGRADE" ; \ + fi ; \ else \ - NEW_FILES="$$FILE $$NEW_FILES"; \ - fi; \ - fi; \ - $(MAKE) checknew-$$FILE >/dev/null; \ - done; \ - if test -z "$$NEW_FILES" ; then \ - if [ ! -n '$(UFILES_REGEX)' ]; then \ - echo "$(NAME) : Warning UFILES_REGEX is not set : $(UFILES_REGEX)" ; \ -# { echo ""; \ -# echo "Hello dear $(NAME) maintainer,"; \ -# echo ""; \ -# echo "The upstream notification job has detected that $(NAME) is not configured for automatic upstream file update detection."; \ -# echo ""; \ -# echo "Please consider updating your package. Documentation is available from this link : http://www.opencsw.org" ; \ -# echo ""; \ -# echo "Questions, problem report or help should be sent to mailto:maintainers at lists.opencsw.org"; \ -# echo ""; \ -# echo "--"; \ -# echo "Kindest regards"; \ -# echo "upstream notification job"; } | $(GARBIN)/mail2maintainer -s '[svn] $(NAME) upstream update notification' $(NAME); \ + echo "$(NAME) : Package is up-to-date. Upstream site has no version newer than $(VERSION)" ; \ + fi ; \ else \ - if [ "$$PACKAGE_UP_TO_DATE" -eq "0" ]; then \ - echo "$(NAME) : Warning no files to check ! $(FILES2CHECK)" ; \ - echo "$(NAME) : UPSTREAM_MASTER_SITES is $(UPSTREAM_MASTER_SITES)" ; \ - echo "$(NAME) : DISTNAME is $(DISTNAME)" ; \ - echo "$(NAME) : UFILES_REGEX is : $(UFILES_REGEX)" ; \ - echo "$(NAME) : Please check configuration" ; \ - fi; \ - fi; \ + echo "$(NAME) - Upgrade branch from version $(VERSION) to version $$LATEST already exist" ; \ + fi ; \ + $(MAKE) upgrade-to-latest-upstream-$$LATEST >/dev/null; \ else \ - echo "$(NAME) : new upstream files available: $$NEW_FILES"; \ - { echo ""; \ - echo "Hello dear $(NAME) maintainer,"; \ - echo ""; \ - echo "The upstream notification job has detected the availability of new files for $(NAME)."; \ - echo ""; \ - echo "The following upstream file(s):"; \ - echo " $$NEW_FILES"; \ - echo ""; \ - echo "is/are available at the following url(s):"; \ - echo " $(UPSTREAM_MASTER_SITES)"; \ - echo ""; \ - echo "Please consider updating your package." ; \ - echo ""; \ - echo "Questions, problem report or help should be sent to mailto:maintainers at lists.opencsw.org"; \ - echo ""; \ - echo "--"; \ - echo "Kindest regards"; \ - echo "upstream notification job"; } | $(GARBIN)/mail2maintainer -s '[svn] $(NAME) upstream update notification' $(NAME); \ - fi; \ + echo "$(NAME) - Upgrade branch to version $$LATEST already created by upstream_watch" ; \ + fi ; \ fi -check-upstream: FILES2CHECK = $(call files2check) -check-upstream: - @if [ -n '$(FILES2CHECK)' ]; then \ - NEW_FILES=""; \ - PACKAGE_UP_TO_DATE=0; \ - for FILE in $(FILES2CHECK) ""; do \ - [ -n "$$FILE" ] || continue; \ - if test -f $(COOKIEDIR)/checknew-$$FILE ; then \ - PACKAGE_UP_TO_DATE=1; \ - else \ - if echo $(DISTFILES) | grep -w $$FILE >/dev/null; then \ - PACKAGE_UP_TO_DATE=1; \ - echo "$(NAME) : Package is up-to-date. Current version is $$FILE" ; \ - else \ - NEW_FILES="$$FILE $$NEW_FILES"; \ + +######################################################## +# Create upgrade branch from current to latest upstream +# +update-package-version-database:PACKAGELIST=$(foreach SPEC,$(SPKG_SPECS),$(call _pkglist_one,$(SPEC))\n) +update-package-version-database: + @EXECUTIONDATE=`date +"%Y-%m-%d %H:%M:%S"` ; \ + if [ '$(ENABLE_UWATCH)' -ne '1' ] ; then \ + echo "$(NAME) - Upstream Watch is disabled" ; \ + printf "$(PACKAGELIST)" | while read line ; do \ + GARPATH=`echo $$line | awk '{ print $$1 }'` ; \ + CATALOGNAME=`echo $$line | awk '{ print $$2 }'` ; \ + PKGNAME=`echo $$line | awk '{ print $$3 }'` ; \ + REPORTVERSION=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch update-package-version-database --catalog-name="$$CATALOGNAME" --package-name="$$PKGNAME" --execution-date="$$EXECUTIONDATE" --gar-path="$$GARPATH" --gar-version="$(VERSION)" --upstream-url="$(UPSTREAM_MASTER_SITES)" --regexp="$(UFILES_REGEX)" --gar-distfiles="$(DISTFILES)" --uwatch-output="Upstream Watch is disabled" --uwatch-deactivated` ; \ + if [ "$$?" -ne "0" ] ; then \ + echo "Error occured while executing uwatch update-package-version-database --uwatch-deactivated. Please check configuration with target get-uwatch-configuration. Here is the output of uwatch command :" ; \ + echo "$$REPORTVERSION" ; \ + exit 1 ; \ + fi; \ + done ; \ + if [ -n "$$REPORTVERSION" ] ; then \ + echo "$(NAME) - $$REPORTVERSION" ; \ + fi ; \ + else \ + UWATCHCONFCHECK="Ok" ; \ + if [ ! -n '$(UFILES_REGEX)' ]; then \ + echo "$(NAME) - UFILES_REGEX is not set - trying to guess it" ; \ + fi; \ + if [ ! -n '$(UPSTREAM_MASTER_SITES)' ]; then \ + echo "$(NAME) - Error UPSTREAM_MASTER_SITES is not set" ; \ + UWATCHCONFCHECK="Error" ; \ + fi; \ + if [ ! -n '$(VERSION)' ]; then \ + echo "$(NAME) - Error VERSION is not set" ; \ + UWATCHCONFCHECK="Error" ; \ + fi; \ + if [ "$$UWATCHCONFCHECK" -ne "Ok" ] ; then \ + printf "$(PACKAGELIST)" | while read line ; do \ + GARPATH=`echo $$line | awk '{ print $$1 }'` ; \ + CATALOGNAME=`echo $$line | awk '{ print $$2 }'` ; \ + PKGNAME=`echo $$line | awk '{ print $$3 }'` ; \ + REPORTVERSION=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch update-package-version-database --catalog-name="$$CATALOGNAME" --package-name="$$PKGNAME" --execution-date="$$EXECUTIONDATE" --gar-path="$$GARPATH" --gar-version="$(VERSION)" --uwatch-error --upstream-url="$(UPSTREAM_MASTER_SITES)" --regexp="$(UFILES_REGEX)" --gar-distfiles="$(DISTFILES)" --uwatch-output="Upstream Watch configuration error" ` ; \ + if [ "$$?" -ne "0" ] ; then \ + echo "Error occured while executing uwatch update-package-version-database --uwatch-error. Please check configuration with target get-uwatch-configuration. Here is the output of uwatch command :" ; \ + echo "$$REPORTVERSION" ; \ + exit 1 ; \ fi; \ - fi; \ - $(MAKE) checknew-$$FILE >/dev/null; \ - done; \ - if test -z "$$NEW_FILES" ; then \ + done ; \ + exit 1 ; \ + fi ; \ + if [ ! -n '$(UFILES_REGEX)' ]; then \ + LATEST=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch get-upstream-latest-version --upstream-url="$(UPSTREAM_MASTER_SITES)" --gar-distfiles="$(DISTFILES)" --catalog-name="$(CATALOGNAME)"` ; \ + else \ + LATEST=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch get-upstream-latest-version --upstream-url="$(UPSTREAM_MASTER_SITES)" --regexp="$(UFILES_REGEX)"` ; \ + fi ; \ + if [ "$$?" -ne "0" ] ; then \ + echo "Error occured while executing uwatch get-upstream-latest-version. Please check configuration with target get-uwatch-configuration. Here is the output of uwatch command :" ; \ + echo "$$LATEST" ; \ + printf "$(PACKAGELIST)" | while read line ; do \ + GARPATH=`echo $$line | awk '{ print $$1 }'` ; \ + CATALOGNAME=`echo $$line | awk '{ print $$2 }'` ; \ + PKGNAME=`echo $$line | awk '{ print $$3 }'` ; \ + REPORTVERSION=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch update-package-version-database --catalog-name="$$CATALOGNAME" --package-name="$$PKGNAME" --execution-date="$$EXECUTIONDATE" --gar-path="$$GARPATH" --gar-version="$(VERSION)" --uwatch-error --upstream-url="$(UPSTREAM_MASTER_SITES)" --regexp="$(UFILES_REGEX)" --gar-distfiles="$(DISTFILES)" --uwatch-output="$$LATEST" ` ; \ + if [ "$$?" -ne "0" ] ; then \ + echo "Error occured while executing uwatch update-package-version-database --uwatch-error. Please check configuration with target get-uwatch-configuration. Here is the output of uwatch command :" ; \ + echo "$$REPORTVERSION" ; \ + exit 1 ; \ + fi; \ + done ; \ + exit 1 ; \ + fi; \ + printf "$(PACKAGELIST)" | while read line ; do \ + GARPATH=`echo $$line | awk '{ print $$1 }'` ; \ + CATALOGNAME=`echo $$line | awk '{ print $$2 }'` ; \ + PKGNAME=`echo $$line | awk '{ print $$3 }'` ; \ if [ ! -n '$(UFILES_REGEX)' ]; then \ - echo "$(NAME) : Warning UFILES_REGEX is not set : $(UFILES_REGEX)" ; \ + REPORTVERSION=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch update-package-version-database --catalog-name="$$CATALOGNAME" --package-name="$$PKGNAME" --execution-date="$$EXECUTIONDATE" --gar-path="$$GARPATH" --gar-version=$(VERSION) --upstream-version="$$LATEST" --upstream-url="$(UPSTREAM_MASTER_SITES)" --gar-distfiles="$(DISTFILES)" --uwatch-output="Successful" ` ; \ else \ - if [ "$$PACKAGE_UP_TO_DATE" -eq "0" ]; then \ - echo "$(NAME) : Warning no files to check ! $(FILES2CHECK)" ; \ - echo "$(NAME) : UPSTREAM_MASTER_SITES is $(UPSTREAM_MASTER_SITES)" ; \ - echo "$(NAME) : DISTNAME is $(DISTNAME)" ; \ - echo "$(NAME) : UFILES_REGEX is : $(UFILES_REGEX)" ; \ - echo "$(NAME) : Please check configuration" ; \ + REPORTVERSION=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch update-package-version-database --catalog-name="$$CATALOGNAME" --package-name="$$PKGNAME" --execution-date="$$EXECUTIONDATE" --gar-path="$$GARPATH" --gar-version=$(VERSION) --upstream-version="$$LATEST" --upstream-url="$(UPSTREAM_MASTER_SITES)" --regexp="$(UFILES_REGEX)" --gar-distfiles="$(DISTFILES)" --uwatch-output="Successful" ` ; \ + fi ; \ + if [ "$$?" -ne "0" ] ; then \ + echo "Error occured while executing uwatch update-package-version-database. Please check configuration with target get-uwatch-configuration. Here is the output of uwatch command :" ; \ + echo "$$REPORTVERSION" ; \ + REPORTVERSION=`http_proxy=$(http_proxy) ftp_proxy=$(ftp_proxy) $(GARBIN)/uwatch update-package-version-database --catalog-name="$$CATALOGNAME" --package-name="$$PKGNAME" --execution-date="$$EXECUTIONDATE" --gar-path="$$GARPATH" --gar-version="$(VERSION)" --uwatch-error --upstream-url="$(UPSTREAM_MASTER_SITES)" --regexp="$(UFILES_REGEX)" --gar-distfiles="$(DISTFILES)" --uwatch-output="$$REPORTVERSION" ` ; \ + if [ "$$?" -ne "0" ] ; then \ + echo "Error occured while executing uwatch update-package-version-database --uwatch-error. Please check configuration with target get-uwatch-configuration. Here is the output of uwatch command :" ; \ + echo "$$REPORTVERSION" ; \ + exit 1 ; \ fi; \ + exit 1 ; \ fi; \ - else \ - echo "$(NAME) : new upstream files available: $$NEW_FILES"; \ - fi; \ + done ; \ + if [ -n "$$REPORTVERSION" ] ; then \ + echo "$(NAME) - $$REPORTVERSION" ; \ + fi ; \ fi - -checknew-%: + +# + +######################################################## +# +get-gar-version: + @if [ ! -n '$(VERSION)' ]; then \ + echo "$(NAME) - VERSION is not defined" ; \ + exit 1 ; \ + else \ + echo "$(NAME) - GAR version is $(VERSION)" ; \ + fi ; + +upgrade-to-latest-upstream-%: @$(MAKECOOKIE) Property changes on: csw/mgar/gar/v2/pkglib/csw/depend ___________________________________________________________________ Modified: svn:mergeinfo - /csw/mgar/gar/v2/pkglib/csw/depend:4936-6678 /csw/mgar/gar/v2-bwalton/pkglib/csw/depend:9784-10011 /csw/mgar/gar/v2-checkpkg/pkglib/csw/depend:7722-7855 /csw/mgar/gar/v2-checkpkg-override-relocation/pkglib/csw/depend:10585-10737 /csw/mgar/gar/v2-checkpkg-stats/pkglib/csw/depend:8454-8649 /csw/mgar/gar/v2-collapsed-modulations/pkglib/csw/depend:6895 /csw/mgar/gar/v2-dirpackage/pkglib/csw/depend:8125-8180 /csw/mgar/gar/v2-fortran/pkglib/csw/depend:10883-12516 /csw/mgar/gar/v2-noexternals/pkglib/csw/depend:11592-11745 /csw/mgar/gar/v2-relocate/pkglib/csw/depend:5028-11738 /csw/mgar/gar/v2-skayser/pkglib/csw/depend:6087-6132 /csw/mgar/gar/v2-sqlite/pkglib/csw/depend:10434-10449 + /csw/mgar/gar/v2/pkglib/csw/depend:4936-6678 /csw/mgar/gar/v2-bwalton/pkglib/csw/depend:9784-10011 /csw/mgar/gar/v2-checkpkg/pkglib/csw/depend:7722-7855 /csw/mgar/gar/v2-checkpkg-override-relocation/pkglib/csw/depend:10585-10737 /csw/mgar/gar/v2-checkpkg-stats/pkglib/csw/depend:8454-8649 /csw/mgar/gar/v2-collapsed-modulations/pkglib/csw/depend:6895 /csw/mgar/gar/v2-dirpackage/pkglib/csw/depend:8125-8180 /csw/mgar/gar/v2-fortran/pkglib/csw/depend:10883-12516 /csw/mgar/gar/v2-noexternals/pkglib/csw/depend:11592-11745 /csw/mgar/gar/v2-relocate/pkglib/csw/depend:5028-11738 /csw/mgar/gar/v2-skayser/pkglib/csw/depend:6087-6132 /csw/mgar/gar/v2-sqlite/pkglib/csw/depend:10434-10449 /csw/mgar/gar/v2-uwatch2/pkglib/csw/depend:12141-13270 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 13 14:20:51 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 13 Feb 2011 13:20:51 +0000 Subject: [csw-devel] SF.net SVN: gar:[13273] csw/mgar/gar/v2-uwatch2/ Message-ID: Revision: 13273 http://gar.svn.sourceforge.net/gar/?rev=13273&view=rev Author: wbonnet Date: 2011-02-13 13:20:51 +0000 (Sun, 13 Feb 2011) Log Message: ----------- Merging uwatch2 branch Removed Paths: ------------- csw/mgar/gar/v2-uwatch2/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 13 15:09:23 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 13 Feb 2011 14:09:23 +0000 Subject: [csw-devel] SF.net SVN: gar:[13274] csw/mgar/gar/v2/bin/uwatch Message-ID: Revision: 13274 http://gar.svn.sourceforge.net/gar/?rev=13274&view=rev Author: wbonnet Date: 2011-02-13 14:09:22 +0000 (Sun, 13 Feb 2011) Log Message: ----------- Remove debug info Modified Paths: -------------- csw/mgar/gar/v2/bin/uwatch Modified: csw/mgar/gar/v2/bin/uwatch =================================================================== --- csw/mgar/gar/v2/bin/uwatch 2011-02-13 13:20:51 UTC (rev 13273) +++ csw/mgar/gar/v2/bin/uwatch 2011-02-13 14:09:22 UTC (rev 13274) @@ -914,7 +914,6 @@ content = self.UrlContentRetrieve(self.config.getUpstreamURL()) listURL = self.config.getUpstreamURL().split(' ') - print "Il y a %(num)d url dans la liste" % { 'num' : len(listURL) } # Search the strings matching the regexp passed through command line arguments p = re.compile(self.config.getRegexp()) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Sun Feb 13 16:26:42 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sun, 13 Feb 2011 15:26:42 +0000 Subject: [csw-devel] SF.net SVN: gar:[13275] csw/mgar/gar/v2/gar.pkg.mk Message-ID: Revision: 13275 http://gar.svn.sourceforge.net/gar/?rev=13275&view=rev Author: bdwalton Date: 2011-02-13 15:26:42 +0000 (Sun, 13 Feb 2011) Log Message: ----------- gar/v2: add support for VERSION_FLAG_PATCH to set ,p in the version string of the package file Modified Paths: -------------- csw/mgar/gar/v2/gar.pkg.mk Modified: csw/mgar/gar/v2/gar.pkg.mk =================================================================== --- csw/mgar/gar/v2/gar.pkg.mk 2011-02-13 14:09:22 UTC (rev 13274) +++ csw/mgar/gar/v2/gar.pkg.mk 2011-02-13 15:26:42 UTC (rev 13275) @@ -149,9 +149,16 @@ SPKG_EMAIL = Unknown endif +define ALLVERSIONFLAGS +$(if $(VERSION_FLAG_PATCH),p) +endef +ifneq ($(call ALLVERSIONFLAGS),) +SPKG_VERSION_FLAGS ?= ,$(call ALLVERSIONFLAGS) +endif + SPKG_DESC ?= $(DESCRIPTION) -SPKG_VERSION ?= $(VERSION) +SPKG_VERSION ?= $(VERSION)$(SPKG_VERSION_FLAGS) SPKG_CATEGORY ?= application SPKG_SOURCEURL ?= $(firstword $(VENDOR_URL) \ $(if $(filter $(GNU_MIRROR),$(MASTER_SITES)),http://www.gnu.org/software/$(GNU_PROJ)) \ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 13 19:49:48 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 13 Feb 2011 18:49:48 +0000 Subject: [csw-devel] SF.net SVN: gar:[13276] csw/mgar/pkg/cpan/RPC-XML/trunk Message-ID: Revision: 13276 http://gar.svn.sourceforge.net/gar/?rev=13276&view=rev Author: wbonnet Date: 2011-02-13 18:49:47 +0000 (Sun, 13 Feb 2011) Log Message: ----------- Upgrade to 0.74 Modified Paths: -------------- csw/mgar/pkg/cpan/RPC-XML/trunk/Makefile csw/mgar/pkg/cpan/RPC-XML/trunk/checksums Modified: csw/mgar/pkg/cpan/RPC-XML/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/RPC-XML/trunk/Makefile 2011-02-13 15:26:42 UTC (rev 13275) +++ csw/mgar/pkg/cpan/RPC-XML/trunk/Makefile 2011-02-13 18:49:47 UTC (rev 13276) @@ -1,5 +1,5 @@ NAME = RPC-XML -VERSION = 0.69 +VERSION = 0.74 CATEGORIES = cpan AUTHOR = RJRAY @@ -13,7 +13,8 @@ from CPAN. endef -RUNTIME_DEP_PKGS_CSWpmrpcxml = CSWpmlibwww CSWpmxmllibxml +RUNTIME_DEP_PKGS_CSWpmrpcxml = CSWpmlibwww CSWpmxmllibxml CSWpmcompresszlib +BUILD_DEP_PKGS_CSWpmrpcxml = CSWpmlibwww CSWpmxmllibxml CSWpmcompresszlib PACKAGES = CSWpmrpcxml CATALOGNAME = pm_rpcxml Modified: csw/mgar/pkg/cpan/RPC-XML/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/RPC-XML/trunk/checksums 2011-02-13 15:26:42 UTC (rev 13275) +++ csw/mgar/pkg/cpan/RPC-XML/trunk/checksums 2011-02-13 18:49:47 UTC (rev 13276) @@ -1 +1 @@ -98fa74810c72f3b05c987e6c8d5d83fb RPC-XML-0.69.tar.gz +5060424168086f3add19c8fe132bf4c5 RPC-XML-0.74.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 13 19:56:43 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 13 Feb 2011 18:56:43 +0000 Subject: [csw-devel] SF.net SVN: gar:[13277] csw/mgar/pkg/cpan/RPC-XML/tags/RPC-XML-0.74, REV= 2011.02.13/ Message-ID: Revision: 13277 http://gar.svn.sourceforge.net/gar/?rev=13277&view=rev Author: wbonnet Date: 2011-02-13 18:56:42 +0000 (Sun, 13 Feb 2011) Log Message: ----------- RPC-XML: Tag as release 0.74,REV=2011.02.13 Added Paths: ----------- csw/mgar/pkg/cpan/RPC-XML/tags/RPC-XML-0.74,REV=2011.02.13/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 13 20:06:03 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 13 Feb 2011 19:06:03 +0000 Subject: [csw-devel] SF.net SVN: gar:[13278] csw/mgar/pkg/cpan/Path-Class/trunk Message-ID: Revision: 13278 http://gar.svn.sourceforge.net/gar/?rev=13278&view=rev Author: wbonnet Date: 2011-02-13 19:06:02 +0000 (Sun, 13 Feb 2011) Log Message: ----------- Upgrade to 0.23 Modified Paths: -------------- csw/mgar/pkg/cpan/Path-Class/trunk/Makefile csw/mgar/pkg/cpan/Path-Class/trunk/checksums Modified: csw/mgar/pkg/cpan/Path-Class/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Path-Class/trunk/Makefile 2011-02-13 18:56:42 UTC (rev 13277) +++ csw/mgar/pkg/cpan/Path-Class/trunk/Makefile 2011-02-13 19:06:02 UTC (rev 13278) @@ -1,5 +1,5 @@ NAME = Path-Class -VERSION = 0.17 +VERSION = 0.23 CATEGORIES = cpan AUTHOR = KWILLIAMS Modified: csw/mgar/pkg/cpan/Path-Class/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/Path-Class/trunk/checksums 2011-02-13 18:56:42 UTC (rev 13277) +++ csw/mgar/pkg/cpan/Path-Class/trunk/checksums 2011-02-13 19:06:02 UTC (rev 13278) @@ -1 +1 @@ -87f02143584facd9a2b22cea5f7d1486 download/Path-Class-0.17.tar.gz +afff1b24d09674575d37c6a61e1e8b5a Path-Class-0.23.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 13 20:08:20 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 13 Feb 2011 19:08:20 +0000 Subject: [csw-devel] SF.net SVN: gar:[13279] csw/mgar/pkg/cpan/Path-Class/trunk/Makefile Message-ID: Revision: 13279 http://gar.svn.sourceforge.net/gar/?rev=13279&view=rev Author: wbonnet Date: 2011-02-13 19:08:20 +0000 (Sun, 13 Feb 2011) Log Message: ----------- Upgrade to 0.23 - Add overrides. /usr/local references are in the documentation Modified Paths: -------------- csw/mgar/pkg/cpan/Path-Class/trunk/Makefile Modified: csw/mgar/pkg/cpan/Path-Class/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Path-Class/trunk/Makefile 2011-02-13 19:06:02 UTC (rev 13278) +++ csw/mgar/pkg/cpan/Path-Class/trunk/Makefile 2011-02-13 19:08:20 UTC (rev 13279) @@ -22,5 +22,10 @@ LICENSE = README +CHECKPKG_OVERRIDES_CSWpmpathclass += file-with-bad-content|/usr/local|root/opt/csw/share/man/man3/Path::Class::File.3perl +CHECKPKG_OVERRIDES_CSWpmpathclass += file-with-bad-content|/usr/local|root/opt/csw/share/man/man3/Path::Class::Dir.3perl +CHECKPKG_OVERRIDES_CSWpmpathclass += file-with-bad-content|/usr/local|root/opt/csw/share/perl/csw/Path/Class/File.pm +CHECKPKG_OVERRIDES_CSWpmpathclass += file-with-bad-content|/usr/local|root/opt/csw/share/perl/csw/Path/Class/Dir.pm + include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 13 20:13:27 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 13 Feb 2011 19:13:27 +0000 Subject: [csw-devel] SF.net SVN: gar:[13280] csw/mgar/pkg/cpan/Object-Accessor/trunk Message-ID: Revision: 13280 http://gar.svn.sourceforge.net/gar/?rev=13280&view=rev Author: wbonnet Date: 2011-02-13 19:13:27 +0000 (Sun, 13 Feb 2011) Log Message: ----------- Upgrade to 0.38 Modified Paths: -------------- csw/mgar/pkg/cpan/Object-Accessor/trunk/Makefile csw/mgar/pkg/cpan/Object-Accessor/trunk/checksums Modified: csw/mgar/pkg/cpan/Object-Accessor/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Object-Accessor/trunk/Makefile 2011-02-13 19:08:20 UTC (rev 13279) +++ csw/mgar/pkg/cpan/Object-Accessor/trunk/Makefile 2011-02-13 19:13:27 UTC (rev 13280) @@ -1,5 +1,5 @@ NAME = Object-Accessor -VERSION = 0.36 +VERSION = 0.38 CATEGORIES = cpan AUTHOR = BINGOS Modified: csw/mgar/pkg/cpan/Object-Accessor/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/Object-Accessor/trunk/checksums 2011-02-13 19:08:20 UTC (rev 13279) +++ csw/mgar/pkg/cpan/Object-Accessor/trunk/checksums 2011-02-13 19:13:27 UTC (rev 13280) @@ -1 +1 @@ -405c62b7ee2ece70744f72b2eee230c6 Object-Accessor-0.36.tar.gz +7852cac814a2307d5a360b03b83370d7 Object-Accessor-0.38.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 13 20:20:24 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 13 Feb 2011 19:20:24 +0000 Subject: [csw-devel] SF.net SVN: gar:[13281] csw/mgar/pkg/cpan/Glib/trunk Message-ID: Revision: 13281 http://gar.svn.sourceforge.net/gar/?rev=13281&view=rev Author: wbonnet Date: 2011-02-13 19:20:24 +0000 (Sun, 13 Feb 2011) Log Message: ----------- Upgrade to 1.223 Modified Paths: -------------- csw/mgar/pkg/cpan/Glib/trunk/Makefile csw/mgar/pkg/cpan/Glib/trunk/checksums Modified: csw/mgar/pkg/cpan/Glib/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Glib/trunk/Makefile 2011-02-13 19:13:27 UTC (rev 13280) +++ csw/mgar/pkg/cpan/Glib/trunk/Makefile 2011-02-13 19:20:24 UTC (rev 13281) @@ -1,5 +1,5 @@ NAME = Glib -VERSION = 1.222 +VERSION = 1.223 CATEGORIES = cpan AUTHOR = TSCH Modified: csw/mgar/pkg/cpan/Glib/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/Glib/trunk/checksums 2011-02-13 19:13:27 UTC (rev 13280) +++ csw/mgar/pkg/cpan/Glib/trunk/checksums 2011-02-13 19:20:24 UTC (rev 13281) @@ -1 +1 @@ -2f1af85d768920625f8d4a3ff9b75cc4 download/Glib-1.222.tar.gz +cfdeaa8c95448f86c30b505e4701abf1 Glib-1.223.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 13 20:34:54 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 13 Feb 2011 19:34:54 +0000 Subject: [csw-devel] SF.net SVN: gar:[13282] csw/mgar/pkg/cpan/FCGI/trunk Message-ID: Revision: 13282 http://gar.svn.sourceforge.net/gar/?rev=13282&view=rev Author: wbonnet Date: 2011-02-13 19:34:54 +0000 (Sun, 13 Feb 2011) Log Message: ----------- Upgrade to 0.69 Modified Paths: -------------- csw/mgar/pkg/cpan/FCGI/trunk/Makefile csw/mgar/pkg/cpan/FCGI/trunk/checksums Modified: csw/mgar/pkg/cpan/FCGI/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/FCGI/trunk/Makefile 2011-02-13 19:20:24 UTC (rev 13281) +++ csw/mgar/pkg/cpan/FCGI/trunk/Makefile 2011-02-13 19:34:54 UTC (rev 13282) @@ -1,5 +1,5 @@ NAME = FCGI -VERSION = 0.68 +VERSION = 0.69 CATEGORIES = cpan AUTHOR = MSTROUT Modified: csw/mgar/pkg/cpan/FCGI/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/FCGI/trunk/checksums 2011-02-13 19:20:24 UTC (rev 13281) +++ csw/mgar/pkg/cpan/FCGI/trunk/checksums 2011-02-13 19:34:54 UTC (rev 13282) @@ -1 +1 @@ -d336458f5b43c6fd3395cd4ba1914966 FCGI-0.68.tar.gz +6e87311590b1cb5829a38a523931a3f4 FCGI-0.69.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 13 20:52:06 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 13 Feb 2011 19:52:06 +0000 Subject: [csw-devel] SF.net SVN: gar:[13283] csw/mgar/pkg/cpan/ExtUtils-Depends/trunk Message-ID: Revision: 13283 http://gar.svn.sourceforge.net/gar/?rev=13283&view=rev Author: wbonnet Date: 2011-02-13 19:52:06 +0000 (Sun, 13 Feb 2011) Log Message: ----------- Upgrade to 0.304 Modified Paths: -------------- csw/mgar/pkg/cpan/ExtUtils-Depends/trunk/Makefile csw/mgar/pkg/cpan/ExtUtils-Depends/trunk/checksums Modified: csw/mgar/pkg/cpan/ExtUtils-Depends/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/ExtUtils-Depends/trunk/Makefile 2011-02-13 19:34:54 UTC (rev 13282) +++ csw/mgar/pkg/cpan/ExtUtils-Depends/trunk/Makefile 2011-02-13 19:52:06 UTC (rev 13283) @@ -1,7 +1,7 @@ NAME = ExtUtils-Depends -VERSION = 0.302 +VERSION = 0.304 CATEGORIES = cpan -AUTHOR = TSCH +AUTHOR = FLORA DESCRIPTION = easily build XS extensions that depend on XS extensions define BLURB Modified: csw/mgar/pkg/cpan/ExtUtils-Depends/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/ExtUtils-Depends/trunk/checksums 2011-02-13 19:34:54 UTC (rev 13282) +++ csw/mgar/pkg/cpan/ExtUtils-Depends/trunk/checksums 2011-02-13 19:52:06 UTC (rev 13283) @@ -1 +1 @@ -db46426f0599668da95c21b53b532508 download/ExtUtils-Depends-0.302.tar.gz +da66d6cb19e2c76d7f3266846832026c ExtUtils-Depends-0.304.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 13 20:56:56 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 13 Feb 2011 19:56:56 +0000 Subject: [csw-devel] SF.net SVN: gar:[13284] csw/mgar/pkg/cpan/FCGI/trunk Message-ID: Revision: 13284 http://gar.svn.sourceforge.net/gar/?rev=13284&view=rev Author: wbonnet Date: 2011-02-13 19:56:56 +0000 (Sun, 13 Feb 2011) Log Message: ----------- Upgrade to 0.71 Modified Paths: -------------- csw/mgar/pkg/cpan/FCGI/trunk/Makefile csw/mgar/pkg/cpan/FCGI/trunk/checksums Modified: csw/mgar/pkg/cpan/FCGI/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/FCGI/trunk/Makefile 2011-02-13 19:52:06 UTC (rev 13283) +++ csw/mgar/pkg/cpan/FCGI/trunk/Makefile 2011-02-13 19:56:56 UTC (rev 13284) @@ -1,7 +1,7 @@ NAME = FCGI -VERSION = 0.69 +VERSION = 0.71 CATEGORIES = cpan -AUTHOR = MSTROUT +AUTHOR = FLORA DESCRIPTION = Fast CGI module define BLURB Modified: csw/mgar/pkg/cpan/FCGI/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/FCGI/trunk/checksums 2011-02-13 19:52:06 UTC (rev 13283) +++ csw/mgar/pkg/cpan/FCGI/trunk/checksums 2011-02-13 19:56:56 UTC (rev 13284) @@ -1 +1 @@ -6e87311590b1cb5829a38a523931a3f4 FCGI-0.69.tar.gz +26bc4ea53ccc9c9c16695e88e46a1cfb FCGI-0.71.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From idogan23 at users.sourceforge.net Sun Feb 13 21:02:11 2011 From: idogan23 at users.sourceforge.net (idogan23 at users.sourceforge.net) Date: Sun, 13 Feb 2011 20:02:11 +0000 Subject: [csw-devel] SF.net SVN: gar:[13285] csw/mgar/pkg/ldns_drill/trunk/Makefile Message-ID: Revision: 13285 http://gar.svn.sourceforge.net/gar/?rev=13285&view=rev Author: idogan23 Date: 2011-02-13 20:02:11 +0000 (Sun, 13 Feb 2011) Log Message: ----------- ldnsdrill: fixed incompatibility Modified Paths: -------------- csw/mgar/pkg/ldns_drill/trunk/Makefile Modified: csw/mgar/pkg/ldns_drill/trunk/Makefile =================================================================== --- csw/mgar/pkg/ldns_drill/trunk/Makefile 2011-02-13 19:56:56 UTC (rev 13284) +++ csw/mgar/pkg/ldns_drill/trunk/Makefile 2011-02-13 20:02:11 UTC (rev 13285) @@ -30,7 +30,7 @@ RUNTIME_DEP_PKGS = CSWlibldns1 RUNTIME_DEP_PKGS += CSWosslrt -INCOMPATIBLE_PKGS_CSWdrill = CSWdrill +INCOMPATIBLE_PKGS_CSWldnsdrill = CSWdrill CONFIGURE_ARGS = $(DIRPATHS) CONFIGURE_ARGS += --with-ssl=/opt/csw This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Sun Feb 13 21:19:50 2011 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Sun, 13 Feb 2011 20:19:50 +0000 Subject: [csw-devel] SF.net SVN: gar:[13286] csw/mgar/pkg Message-ID: Revision: 13286 http://gar.svn.sourceforge.net/gar/?rev=13286&view=rev Author: bonivart Date: 2011-02-13 20:19:49 +0000 (Sun, 13 Feb 2011) Log Message: ----------- terminator: initial commit Added Paths: ----------- csw/mgar/pkg/terminator/ csw/mgar/pkg/terminator/branches/ csw/mgar/pkg/terminator/tags/ csw/mgar/pkg/terminator/trunk/ csw/mgar/pkg/terminator/trunk/Makefile csw/mgar/pkg/terminator/trunk/checksums csw/mgar/pkg/terminator/trunk/files/ Property changes on: csw/mgar/pkg/terminator/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/terminator/trunk/Makefile =================================================================== --- csw/mgar/pkg/terminator/trunk/Makefile (rev 0) +++ csw/mgar/pkg/terminator/trunk/Makefile 2011-02-13 20:19:49 UTC (rev 13286) @@ -0,0 +1,15 @@ +NAME = terminator +VERSION = 0.95 +CATEGORIES = utils + +DESCRIPTION = Multiple GNOME terminals in one window +define BLURB + Multiple GNOME terminals in one window +endef + +MASTER_SITES = http://launchpad.net/terminator/trunk/$(VERSION)/+download/ +DISTFILES = $(NAME)-$(VERSION).tar.gz + +CONFIGURE_ARGS = $(DIRPATHS) + +include gar/category.mk Added: csw/mgar/pkg/terminator/trunk/checksums =================================================================== --- csw/mgar/pkg/terminator/trunk/checksums (rev 0) +++ csw/mgar/pkg/terminator/trunk/checksums 2011-02-13 20:19:49 UTC (rev 13286) @@ -0,0 +1 @@ +ceae5c899c71b9c80e48083c17a631ad terminator-0.95.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 13 22:13:04 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 13 Feb 2011 21:13:04 +0000 Subject: [csw-devel] SF.net SVN: gar:[13287] csw/mgar/pkg/cpan Message-ID: Revision: 13287 http://gar.svn.sourceforge.net/gar/?rev=13287&view=rev Author: wbonnet Date: 2011-02-13 21:13:04 +0000 (Sun, 13 Feb 2011) Log Message: ----------- Creation of package. Cannot compile yet, needs Update of Test-Script to version 1.05 Added Paths: ----------- csw/mgar/pkg/cpan/File-Which/ csw/mgar/pkg/cpan/File-Which/branches/ csw/mgar/pkg/cpan/File-Which/tags/ csw/mgar/pkg/cpan/File-Which/trunk/ csw/mgar/pkg/cpan/File-Which/trunk/Makefile csw/mgar/pkg/cpan/File-Which/trunk/checksums csw/mgar/pkg/cpan/File-Which/trunk/files/ Property changes on: csw/mgar/pkg/cpan/File-Which/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/cpan/File-Which/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/File-Which/trunk/Makefile (rev 0) +++ csw/mgar/pkg/cpan/File-Which/trunk/Makefile 2011-02-13 21:13:04 UTC (rev 13287) @@ -0,0 +1,28 @@ +NAME = File-Which +VERSION = 1.09 +CATEGORIES = cpan +AUTHOR = ADAMK + +DESCRIPTION = Portable implementation of the `which' utility +define BLURB + File::Which was created to be able to get the paths to executable programs + on systems under which the `which' program wasn't implemented in the shell. + + File::Which searches the directories of the user's PATH (as returned by + File::Spec->path()), looking for executable files having the name specified + as a parameter to which(). Under Win32 systems, which do not have a notion + of directly executable files, but uses special extensions such as .exe and + .bat to identify them, File::Which takes extra steps to assure that you will + find the correct file (so for example, you might be searching for perl, + it'll try perl.exe, perl.bat, etc.) +endef + +CATALOGNAME = pm_filehomedir +PACKAGES = CSWpmfilehomedir + +ARCHALL_CSWpmfilehomedir = 1 + +LICENSE = LICENSE + +include gar/category.mk + Added: csw/mgar/pkg/cpan/File-Which/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/File-Which/trunk/checksums (rev 0) +++ csw/mgar/pkg/cpan/File-Which/trunk/checksums 2011-02-13 21:13:04 UTC (rev 13287) @@ -0,0 +1 @@ +b9429edaad7f45caafa4d458afcfd8af File-Which-1.09.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 13 22:15:58 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 13 Feb 2011 21:15:58 +0000 Subject: [csw-devel] SF.net SVN: gar:[13288] csw/mgar/pkg/cpan/Test-Script/trunk Message-ID: Revision: 13288 http://gar.svn.sourceforge.net/gar/?rev=13288&view=rev Author: wbonnet Date: 2011-02-13 21:15:58 +0000 (Sun, 13 Feb 2011) Log Message: ----------- Upgrade to 1.07. Need Probe::Perl 0.01 as prerequisite Modified Paths: -------------- csw/mgar/pkg/cpan/Test-Script/trunk/Makefile csw/mgar/pkg/cpan/Test-Script/trunk/checksums Modified: csw/mgar/pkg/cpan/Test-Script/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Test-Script/trunk/Makefile 2011-02-13 21:13:04 UTC (rev 13287) +++ csw/mgar/pkg/cpan/Test-Script/trunk/Makefile 2011-02-13 21:15:58 UTC (rev 13288) @@ -1,5 +1,5 @@ NAME = Test-Script -VERSION = 1.03 +VERSION = 1.07 CATEGORIES = cpan AUTHOR = ADAMK Modified: csw/mgar/pkg/cpan/Test-Script/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/Test-Script/trunk/checksums 2011-02-13 21:13:04 UTC (rev 13287) +++ csw/mgar/pkg/cpan/Test-Script/trunk/checksums 2011-02-13 21:15:58 UTC (rev 13288) @@ -1 +1 @@ -fa3018d63bc54ebb8d4d244fb1dc4c35 download/Test-Script-1.03.tar.gz +f6b5baa6403cd24dac7f023e0ea22384 Test-Script-1.07.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 13 22:22:48 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 13 Feb 2011 21:22:48 +0000 Subject: [csw-devel] SF.net SVN: gar:[13289] csw/mgar/pkg/cpan/XML-NamespaceSupport/trunk Message-ID: Revision: 13289 http://gar.svn.sourceforge.net/gar/?rev=13289&view=rev Author: wbonnet Date: 2011-02-13 21:22:48 +0000 (Sun, 13 Feb 2011) Log Message: ----------- Upgrade to 1.11 Modified Paths: -------------- csw/mgar/pkg/cpan/XML-NamespaceSupport/trunk/Makefile csw/mgar/pkg/cpan/XML-NamespaceSupport/trunk/checksums Modified: csw/mgar/pkg/cpan/XML-NamespaceSupport/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/XML-NamespaceSupport/trunk/Makefile 2011-02-13 21:15:58 UTC (rev 13288) +++ csw/mgar/pkg/cpan/XML-NamespaceSupport/trunk/Makefile 2011-02-13 21:22:48 UTC (rev 13289) @@ -1,5 +1,5 @@ NAME = XML-NamespaceSupport -VERSION = 1.10 +VERSION = 1.11 CATEGORIES = cpan AUTHOR = PERIGRIN Modified: csw/mgar/pkg/cpan/XML-NamespaceSupport/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/XML-NamespaceSupport/trunk/checksums 2011-02-13 21:15:58 UTC (rev 13288) +++ csw/mgar/pkg/cpan/XML-NamespaceSupport/trunk/checksums 2011-02-13 21:22:48 UTC (rev 13289) @@ -1,2 +1 @@ -3bfd46df15e7c8955baf80e4712ce388 COPYING -0a760067d4b517672f064e911679c509 XML-NamespaceSupport-1.10.tar.gz +222cca76161cd956d724286d36b607da XML-NamespaceSupport-1.11.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 13 22:42:44 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 13 Feb 2011 21:42:44 +0000 Subject: [csw-devel] SF.net SVN: gar:[13290] csw/mgar/pkg/cpan/Test-Manifest/trunk Message-ID: Revision: 13290 http://gar.svn.sourceforge.net/gar/?rev=13290&view=rev Author: wbonnet Date: 2011-02-13 21:42:44 +0000 (Sun, 13 Feb 2011) Log Message: ----------- Upgrade to 1.23 Modified Paths: -------------- csw/mgar/pkg/cpan/Test-Manifest/trunk/Makefile csw/mgar/pkg/cpan/Test-Manifest/trunk/checksums Removed Paths: ------------- csw/mgar/pkg/cpan/Test-Manifest/trunk/files/CSWpmtstmanif.gspec Modified: csw/mgar/pkg/cpan/Test-Manifest/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Test-Manifest/trunk/Makefile 2011-02-13 21:22:48 UTC (rev 13289) +++ csw/mgar/pkg/cpan/Test-Manifest/trunk/Makefile 2011-02-13 21:42:44 UTC (rev 13290) @@ -1,5 +1,5 @@ NAME = Test-Manifest -VERSION = 1.17 +VERSION = 1.23 CATEGORIES = cpan AUTHOR = BDFOY @@ -11,6 +11,11 @@ the desired order. endef -DISTFILES += CSWpmtstmanif.gspec +CATALOGNAME = pm_tstmanif +PACKAGES = CSWpmtstmanif +ARCHALL_CSWpmtstmanif = 1 + +LICENSE = LICENSE + include gar/category.mk Modified: csw/mgar/pkg/cpan/Test-Manifest/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/Test-Manifest/trunk/checksums 2011-02-13 21:22:48 UTC (rev 13289) +++ csw/mgar/pkg/cpan/Test-Manifest/trunk/checksums 2011-02-13 21:42:44 UTC (rev 13290) @@ -1,2 +1 @@ -ad5ab85633c5eaead8a906d47a6c93c0 download/CSWpmtstmanif.gspec -6c4e391aab2a42e6edb0970c45da31cd download/Test-Manifest-1.17.tar.gz +81c8744987b67d35af05a74a3c7f1742 Test-Manifest-1.23.tar.gz Deleted: csw/mgar/pkg/cpan/Test-Manifest/trunk/files/CSWpmtstmanif.gspec =================================================================== --- csw/mgar/pkg/cpan/Test-Manifest/trunk/files/CSWpmtstmanif.gspec 2011-02-13 21:22:48 UTC (rev 13289) +++ csw/mgar/pkg/cpan/Test-Manifest/trunk/files/CSWpmtstmanif.gspec 2011-02-13 21:42:44 UTC (rev 13290) @@ -1,9 +0,0 @@ -%var bitname pm_tstmanif -%var pkgname CSWpmtstmanif -%var arch all -%include url file://%{PKGLIB}/csw_cpan.gspec -%copyright -Copyright 2002, C, All Rights Reserved - -You may use and distribute this module under the same terms -as Perl itself This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 13 23:00:04 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 13 Feb 2011 22:00:04 +0000 Subject: [csw-devel] SF.net SVN: gar:[13291] csw/mgar/pkg/cpan/Text-Quoted/trunk Message-ID: Revision: 13291 http://gar.svn.sourceforge.net/gar/?rev=13291&view=rev Author: wbonnet Date: 2011-02-13 22:00:03 +0000 (Sun, 13 Feb 2011) Log Message: ----------- Upgrade to 2.06 Modified Paths: -------------- csw/mgar/pkg/cpan/Text-Quoted/trunk/Makefile csw/mgar/pkg/cpan/Text-Quoted/trunk/checksums csw/mgar/pkg/cpan/Text-Quoted/trunk/files/CSWpmtxtquoted.depend Modified: csw/mgar/pkg/cpan/Text-Quoted/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Text-Quoted/trunk/Makefile 2011-02-13 21:42:44 UTC (rev 13290) +++ csw/mgar/pkg/cpan/Text-Quoted/trunk/Makefile 2011-02-13 22:00:03 UTC (rev 13291) @@ -1,7 +1,7 @@ NAME = Text-Quoted -VERSION = 1.10 +VERSION = 2.06 CATEGORIES = cpan -AUTHOR = JESSE +AUTHOR = RUZ DESCRIPTION = extract the structure of a quoted mail message define BLURB @@ -10,8 +10,15 @@ structure. endef -DISTFILES += CSWpmtxtquoted.gspec CSWpmtxtquoted.depend +RUNTIME_DEP_PKGS = CSWpmtxtautofmt +BUILD_DEP_PKGS = CSWpmtxtautofmt -DEPENDS += cpan/Text-Autoformat +CATALOGNAME = pm_txtquoted +PACKAGES = CSWpmtxtquoted +ARCHALL_CSWpmtxtquoted = 1 + +LICENSE = README + include gar/category.mk + Modified: csw/mgar/pkg/cpan/Text-Quoted/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/Text-Quoted/trunk/checksums 2011-02-13 21:42:44 UTC (rev 13290) +++ csw/mgar/pkg/cpan/Text-Quoted/trunk/checksums 2011-02-13 22:00:03 UTC (rev 13291) @@ -1,3 +1 @@ -a24c91c93bf598ec70c2f3c57676e535 download/CSWpmtxtquoted.gspec -1f47ca15329ab4b07db8cbcacf5326a8 download/CSWpmtxtquoted.depend -cfe3acfef95fc33b580b5cfdd5272196 download/Text-Quoted-1.10.tar.gz +6ae8d3aa3a54c5f05bcd0c2313ebfa4d Text-Quoted-2.06.tar.gz Modified: csw/mgar/pkg/cpan/Text-Quoted/trunk/files/CSWpmtxtquoted.depend =================================================================== --- csw/mgar/pkg/cpan/Text-Quoted/trunk/files/CSWpmtxtquoted.depend 2011-02-13 21:42:44 UTC (rev 13290) +++ csw/mgar/pkg/cpan/Text-Quoted/trunk/files/CSWpmtxtquoted.depend 2011-02-13 22:00:03 UTC (rev 13291) @@ -1 +1,5 @@ P CSWpmtxtautofmt pm_txtautofmt - automatic text wrapping and reformatting +P CSWcommon common - common files and dirs for CSW packages +P CSWperl perl - A high-level, general-purpose programming language +P CSWcommon common - common files and dirs for CSW packages +P CSWperl perl - A high-level, general-purpose programming language This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Sun Feb 13 23:07:58 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Sun, 13 Feb 2011 22:07:58 +0000 Subject: [csw-devel] SF.net SVN: gar:[13292] csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk Message-ID: Revision: 13292 http://gar.svn.sourceforge.net/gar/?rev=13292&view=rev Author: dmichelsen Date: 2011-02-13 22:07:58 +0000 (Sun, 13 Feb 2011) Log Message: ----------- cpan/CGI-SpeedyCGI: Update deprecated Perl API use Modified Paths: -------------- csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/files/0001-Use-Newx-instead-of-deprecated-New.patch Modified: csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/Makefile 2011-02-13 22:00:03 UTC (rev 13291) +++ csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/Makefile 2011-02-13 22:07:58 UTC (rev 13292) @@ -9,6 +9,8 @@ much more quickly. endef +PATCHFILES = 0001-Use-Newx-instead-of-deprecated-New.patch + PACKAGES = CSWpmspeedycgi CATALOGNAME = pm_speedycgi Added: csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/files/0001-Use-Newx-instead-of-deprecated-New.patch =================================================================== --- csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/files/0001-Use-Newx-instead-of-deprecated-New.patch (rev 0) +++ csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/files/0001-Use-Newx-instead-of-deprecated-New.patch 2011-02-13 22:07:58 UTC (rev 13292) @@ -0,0 +1,25 @@ +From ff3820573d05c622a7b3b31864ba4ae6e90ca0d2 Mon Sep 17 00:00:00 2001 +From: Dagobert Michelsen +Date: Sun, 13 Feb 2011 23:00:54 +0100 +Subject: [PATCH] Use Newx() instead of deprecated New() + +--- + src/speedy_backend_main.h | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/src/speedy_backend_main.h b/src/speedy_backend_main.h +index f139f29..6b9af44 100644 +--- a/src/speedy_backend_main.h ++++ b/src/speedy_backend_main.h +@@ -38,7 +38,7 @@ void * efence_realloc (void *ptr, size_t size); + + #else + +-#define speedy_new(s,n,t) New(123,s,n,t) ++#define speedy_new(s,n,t) Newx(s,n,t) + #define speedy_renew Renew + #define speedy_free Safefree + +-- +1.7.3.2 + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 13 23:10:31 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 13 Feb 2011 22:10:31 +0000 Subject: [csw-devel] SF.net SVN: gar:[13293] csw/mgar/pkg/cpan/Tree-Simple/trunk Message-ID: Revision: 13293 http://gar.svn.sourceforge.net/gar/?rev=13293&view=rev Author: wbonnet Date: 2011-02-13 22:10:31 +0000 (Sun, 13 Feb 2011) Log Message: ----------- Update build descriptions Modified Paths: -------------- csw/mgar/pkg/cpan/Tree-Simple/trunk/Makefile csw/mgar/pkg/cpan/Tree-Simple/trunk/checksums Modified: csw/mgar/pkg/cpan/Tree-Simple/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Tree-Simple/trunk/Makefile 2011-02-13 22:07:58 UTC (rev 13292) +++ csw/mgar/pkg/cpan/Tree-Simple/trunk/Makefile 2011-02-13 22:10:31 UTC (rev 13293) @@ -1,5 +1,5 @@ NAME = Tree-Simple -VERSION = 1.16 +VERSION = 1.18 CATEGORIES = cpan AUTHOR = STEVAN @@ -12,8 +12,13 @@ also has siblings, as they are just the children of their immediate parent. endef -DISTFILES += CSWpmtreesimple.gspec +RUNTIME_DEP_PKGS_CSWpmtreesimple = CSWpmtstexception +BUILD_DEP_PKGS_CSWpmtreesimple = CSWpmtstexception -BUILDDEPS += cpan/Test-Exception +PACKAGES = CSWpmtreesimple +CATALOGNAME = pm_treesimple +ARCHALL = 1 +LICENSE = README + include gar/category.mk Modified: csw/mgar/pkg/cpan/Tree-Simple/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/Tree-Simple/trunk/checksums 2011-02-13 22:07:58 UTC (rev 13292) +++ csw/mgar/pkg/cpan/Tree-Simple/trunk/checksums 2011-02-13 22:10:31 UTC (rev 13293) @@ -1,2 +1 @@ -abfbf57b9fdd84594f7104826ade2fbd download/CSWpmtreesimple.gspec -7f003a9af1aea6a9931c3de8fc49b3ab download/Tree-Simple-1.16.tar.gz +70462938108a8b8658b1b1d2f12dbeab Tree-Simple-1.18.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 13 23:19:19 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 13 Feb 2011 22:19:19 +0000 Subject: [csw-devel] SF.net SVN: gar:[13294] csw/mgar/pkg/cpan/Text-Wrapper/trunk/Makefile Message-ID: Revision: 13294 http://gar.svn.sourceforge.net/gar/?rev=13294&view=rev Author: wbonnet Date: 2011-02-13 22:19:18 +0000 (Sun, 13 Feb 2011) Log Message: ----------- Upgrade to 1.02 Modified Paths: -------------- csw/mgar/pkg/cpan/Text-Wrapper/trunk/Makefile Modified: csw/mgar/pkg/cpan/Text-Wrapper/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Text-Wrapper/trunk/Makefile 2011-02-13 22:10:31 UTC (rev 13293) +++ csw/mgar/pkg/cpan/Text-Wrapper/trunk/Makefile 2011-02-13 22:19:18 UTC (rev 13294) @@ -10,7 +10,7 @@ sophisticated text formatting, try the Text::Format module. endef -DISTFILES = COPYING +LICENSE = README PACKAGES = CSWpmtextwrapper CSWpmtextwrap This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 13 23:53:30 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 13 Feb 2011 22:53:30 +0000 Subject: [csw-devel] SF.net SVN: gar:[13295] csw/mgar/pkg/cpan/Test-Inline/trunk Message-ID: Revision: 13295 http://gar.svn.sourceforge.net/gar/?rev=13295&view=rev Author: wbonnet Date: 2011-02-13 22:53:30 +0000 (Sun, 13 Feb 2011) Log Message: ----------- Upgrade to 2.212 Modified Paths: -------------- csw/mgar/pkg/cpan/Test-Inline/trunk/Makefile csw/mgar/pkg/cpan/Test-Inline/trunk/checksums Modified: csw/mgar/pkg/cpan/Test-Inline/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Test-Inline/trunk/Makefile 2011-02-13 22:19:18 UTC (rev 13294) +++ csw/mgar/pkg/cpan/Test-Inline/trunk/Makefile 2011-02-13 22:53:30 UTC (rev 13295) @@ -1,7 +1,7 @@ NAME = Test-Inline -VERSION = 0.16 +VERSION = 2.212 CATEGORIES = cpan -AUTHOR = MSCHWERN +AUTHOR = ADAMK DESCRIPTION = inlining your tests next to the code being tested. define BLURB @@ -9,6 +9,11 @@ a nice supplement to the traditional .t files. It's like XUnit, Perl-style. endef -DISTFILES += CSWpmtestinline.gspec +CATALOGNAME = pm_testinline +PACKAGES = CSWpmtestinline +ARCHALL_CSWpmtestinline = 1 + +LICENSE = LICENSE + include gar/category.mk Modified: csw/mgar/pkg/cpan/Test-Inline/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/Test-Inline/trunk/checksums 2011-02-13 22:19:18 UTC (rev 13294) +++ csw/mgar/pkg/cpan/Test-Inline/trunk/checksums 2011-02-13 22:53:30 UTC (rev 13295) @@ -1,2 +1 @@ -355b39a95bcdb2a10890775d34b10067 download/CSWpmtestinline.gspec -91296ea0606489b1bc2d62bbf08e44eb download/Test-Inline-0.16.tar.gz +381fd25782370894d3335996527f6aef Test-Inline-2.212.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Mon Feb 14 00:10:46 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 13 Feb 2011 23:10:46 +0000 Subject: [csw-devel] SF.net SVN: gar:[13296] csw/mgar/pkg/cpan/PAR-Dist/trunk Message-ID: Revision: 13296 http://gar.svn.sourceforge.net/gar/?rev=13296&view=rev Author: wbonnet Date: 2011-02-13 23:10:46 +0000 (Sun, 13 Feb 2011) Log Message: ----------- Upgrade to 0.47 Modified Paths: -------------- csw/mgar/pkg/cpan/PAR-Dist/trunk/Makefile csw/mgar/pkg/cpan/PAR-Dist/trunk/checksums Modified: csw/mgar/pkg/cpan/PAR-Dist/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/PAR-Dist/trunk/Makefile 2011-02-13 22:53:30 UTC (rev 13295) +++ csw/mgar/pkg/cpan/PAR-Dist/trunk/Makefile 2011-02-13 23:10:46 UTC (rev 13296) @@ -1,7 +1,7 @@ NAME = PAR-Dist -VERSION = 0.07 +VERSION = 0.47 CATEGORIES = cpan -AUTHOR = AUTRIJUS +AUTHOR = SMUELLER DESCRIPTION = create and manipulate PAR distributions define BLURB @@ -13,6 +13,13 @@ SIGNATURE file. endef -DISTFILES += CSWpmpardist.gspec +CATALOGNAME = pm_pardist +PACKAGES = CSWpmpardist + +ARCHALL_CSWpmpardist = 1 + +LICENSE = README + + include gar/category.mk Modified: csw/mgar/pkg/cpan/PAR-Dist/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/PAR-Dist/trunk/checksums 2011-02-13 22:53:30 UTC (rev 13295) +++ csw/mgar/pkg/cpan/PAR-Dist/trunk/checksums 2011-02-13 23:10:46 UTC (rev 13296) @@ -1,2 +1 @@ -3d9b6a71985aa6e11ffc42b4c04d757d download/CSWpmpardist.gspec -3f708ad631d1dfaf2a7600d941eae808 download/PAR-Dist-0.07.tar.gz +ea5fd9791e40f7c2524a45139bea23a2 PAR-Dist-0.47.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Mon Feb 14 00:19:05 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 13 Feb 2011 23:19:05 +0000 Subject: [csw-devel] SF.net SVN: gar:[13297] csw/mgar/pkg/cpan/Net-DNS-Resolver-Programmable/ trunk/Makefile Message-ID: Revision: 13297 http://gar.svn.sourceforge.net/gar/?rev=13297&view=rev Author: wbonnet Date: 2011-02-13 23:19:05 +0000 (Sun, 13 Feb 2011) Log Message: ----------- Fix Makefile Modified Paths: -------------- csw/mgar/pkg/cpan/Net-DNS-Resolver-Programmable/trunk/Makefile Modified: csw/mgar/pkg/cpan/Net-DNS-Resolver-Programmable/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Net-DNS-Resolver-Programmable/trunk/Makefile 2011-02-13 23:10:46 UTC (rev 13296) +++ csw/mgar/pkg/cpan/Net-DNS-Resolver-Programmable/trunk/Makefile 2011-02-13 23:19:05 UTC (rev 13297) @@ -7,9 +7,11 @@ define BLURB endef -PACKAGES = CSWpmnetdnsresp -CATALOGNAME = pm_netdnsresp +PACKAGES = CSWpmnetdnsreslvprg +CATALOGNAME = pm_netdnsreslvprg ARCHALL = 1 +LICENSE = LICENSE + include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Mon Feb 14 04:06:17 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Mon, 14 Feb 2011 03:06:17 +0000 Subject: [csw-devel] SF.net SVN: gar:[13298] csw/mgar/gar/v2/gar.mk Message-ID: Revision: 13298 http://gar.svn.sourceforge.net/gar/?rev=13298&view=rev Author: bdwalton Date: 2011-02-14 03:06:17 +0000 (Mon, 14 Feb 2011) Log Message: ----------- gar/v2: make DYNSCRIPTS assignment non-recursive to match change in 11591 Modified Paths: -------------- csw/mgar/gar/v2/gar.mk Modified: csw/mgar/gar/v2/gar.mk =================================================================== --- csw/mgar/gar/v2/gar.mk 2011-02-13 23:19:05 UTC (rev 13297) +++ csw/mgar/gar/v2/gar.mk 2011-02-14 03:06:17 UTC (rev 13298) @@ -38,7 +38,7 @@ DISTNAME ?= $(NAME)-$(VERSION) -DYNSCRIPTS = $(foreach PKG,$(SPKG_SPECS),$(foreach SCR,$(ADMSCRIPTS),$(if $(value $(PKG)_$(SCR)), $(PKG).$(SCR)))) +DYNSCRIPTS := $(foreach PKG,$(SPKG_SPECS),$(foreach SCR,$(ADMSCRIPTS),$(if $(value $(PKG)_$(SCR)), $(PKG).$(SCR)))) _LOCALFILES = $(notdir $(wildcard files/*)) _NOCHECKSUM += $(DYNSCRIPTS) $(_LOCALFILES) $(foreach R,$(GIT_REPOS),$(call GITPROJ,$(R))) $(_EXTRA_GAR_NOCHECKSUM) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Mon Feb 14 04:07:31 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Mon, 14 Feb 2011 03:07:31 +0000 Subject: [csw-devel] SF.net SVN: gar:[13299] csw/mgar/gar/v2/gar.lib.mk Message-ID: Revision: 13299 http://gar.svn.sourceforge.net/gar/?rev=13299&view=rev Author: bdwalton Date: 2011-02-14 03:07:31 +0000 (Mon, 14 Feb 2011) Log Message: ----------- gar/v2: change the URLS construction to use newly non-recursive DYNURLS based on DYNSCRIPTS. this fixes a breakage introduced in 11591 wrt dynamic admscripts Modified Paths: -------------- csw/mgar/gar/v2/gar.lib.mk Modified: csw/mgar/gar/v2/gar.lib.mk =================================================================== --- csw/mgar/gar/v2/gar.lib.mk 2011-02-14 03:06:17 UTC (rev 13298) +++ csw/mgar/gar/v2/gar.lib.mk 2011-02-14 03:07:31 UTC (rev 13299) @@ -27,11 +27,11 @@ #################### FETCH RULES #################### -URLS := $(foreach SITE,$(FILE_SITES) $(MASTER_SITES),$(addprefix $(SITE),$(DISTFILES))) $(foreach SITE,$(FILE_SITES) $(PATCH_SITES) $(MASTER_SITES),$(addprefix $(SITE),$(ALLFILES_PATCHFILES))) +# if the caller has defined _postinstall, etc targets for a package, +# add these 'dynamic script' targets to our fetch list +DYNURLS := $(foreach DYN,$(DYNSCRIPTS),dynscr://$(DYN)) -# if the caller has defined _postinstall, etc targets for a package, add -# these 'dynamic script' targets to our fetch list -URLS += $(foreach DYN,$(DYNSCRIPTS),dynscr://$(DYN)) +URLS := $(foreach SITE,$(FILE_SITES) $(MASTER_SITES),$(addprefix $(SITE),$(DISTFILES))) $(foreach SITE,$(FILE_SITES) $(PATCH_SITES) $(MASTER_SITES),$(addprefix $(SITE),$(ALLFILES_PATCHFILES))) $(DYNURLS) define gitsubst $(subst git-git,git,$(if $(findstring $(1)://,$(2)),$(patsubst $(1)%,git-$(1)%,$(call URLSTRIP,$(2))))) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Mon Feb 14 10:33:17 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Mon, 14 Feb 2011 09:33:17 +0000 Subject: [csw-devel] SF.net SVN: gar:[13300] csw/mgar/pkg/msmtp/trunk/Makefile Message-ID: Revision: 13300 http://gar.svn.sourceforge.net/gar/?rev=13300&view=rev Author: dmichelsen Date: 2011-02-14 09:33:17 +0000 (Mon, 14 Feb 2011) Log Message: ----------- msmtp: Fix configuration locations Modified Paths: -------------- csw/mgar/pkg/msmtp/trunk/Makefile Modified: csw/mgar/pkg/msmtp/trunk/Makefile =================================================================== --- csw/mgar/pkg/msmtp/trunk/Makefile 2011-02-14 03:07:31 UTC (rev 13299) +++ csw/mgar/pkg/msmtp/trunk/Makefile 2011-02-14 09:33:17 UTC (rev 13300) @@ -25,6 +25,10 @@ MASTER_SITES = $(SF_MIRRORS) DISTFILES = $(NAME)-$(VERSION).tar.bz2 +PACKAGES += CSWmsmtp +CATALOGNAME_CSWmsmtp = msmtp +SPKG_DESC_CSWmsmtp = $(DESCRIPTION) + VENDOR_URL = http://msmtp.sourceforge.net/ # We define upstream file regex so we can be notifed of new upstream software release @@ -42,20 +46,27 @@ sysconfdir = /etc/opt/csw CONFIGURE_ARGS = $(DIRPATHS) +PRESERVECONF = $(sysconfdir)/msmtprc + TEST_TARGET = check include gar/category.mk +# The path in CA_CERTIFICATES is taken from CSWcacertificates post-install-modulated: DOCDIR=$(docdir)/msmtp +post-install-modulated: CA_CERTIFICATES=/opt/csw/etc/ca-certificates.conf post-install-modulated: ginstall -d $(DESTDIR)$(DOCDIR) ginstall $(WORKSRC)/doc/Mutt+msmtp.txt $(DESTDIR)$(DOCDIR) # ginstall $(WORKSRC)/doc/msmtp.html $(DESTDIR)$(DOCDIR) # ginstall $(WORKSRC)/doc/msmtp.pdf $(DESTDIR)$(DOCDIR) ginstall -d $(DESTDIR)$(sysconfdir) - ginstall $(WORKSRC)/doc/msmtprc-system.example \ - $(WORKSRC)/doc/msmtprc-user.example \ - $(DESTDIR)$(sysconfdir) + cat $(WORKSRC)/doc/msmtprc-system.example | \ + perl -np -e 's/^/#/ if( /^[^#]+/ );' \ + -e 's,(tls_trust_file\s+).*,\1$(CA_CERTIFICATES),;' \ + > $(DESTDIR)/etc/opt/csw/msmtprc + ginstall $(WORKSRC)/doc/msmtprc-user.example \ + $(DESTDIR)$(DOCDIR)/msmtprc-user.example perl -pi -e 's,/usr/local/etc,$(sysconfdir),;' \ -e 's,/usr/local/bin,$(bindir),;' \ $(DESTDIR)$(infodir)/msmtp.info \ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Mon Feb 14 17:55:23 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Mon, 14 Feb 2011 16:55:23 +0000 Subject: [csw-devel] SF.net SVN: gar:[13301] csw/mgar/gar/v2 Message-ID: Revision: 13301 http://gar.svn.sourceforge.net/gar/?rev=13301&view=rev Author: dmichelsen Date: 2011-02-14 16:55:23 +0000 (Mon, 14 Feb 2011) Log Message: ----------- mGAR v2: Automatically add README.CSW to the package docs if present Modified Paths: -------------- csw/mgar/gar/v2/gar.mk csw/mgar/gar/v2/gar.pkg.mk Modified: csw/mgar/gar/v2/gar.mk =================================================================== --- csw/mgar/gar/v2/gar.mk 2011-02-14 09:33:17 UTC (rev 13300) +++ csw/mgar/gar/v2/gar.mk 2011-02-14 16:55:23 UTC (rev 13301) @@ -803,13 +803,17 @@ # The basic merge merges the compiles for all ISAs on the current architecture -merge: checksum pre-merge merge-do merge-license merge-classutils merge-checkpkgoverrides merge-alternatives $(if $(COMPILE_ELISP),compile-elisp) $(if $(NOSOURCEPACKAGE),,merge-src) $(if $(AP2_MODS),post-merge-ap2mod) post-merge - @$(DONADA) +merge: checksum pre-merge merge-do merge-license merge-classutils merge-checkpkgoverrides merge-alternatives $(if $(COMPILE_ELISP),compile-elisp) $(if $(NOSOURCEPACKAGE),,merge-src) merge-README.CSW $(if $(AP2_MODS),post-merge-ap2mod) post-merge + banner merge + @$(MAKECOOKIE) +.PHONY: merge-do merge-do: $(if $(PARALLELMODULATIONS),merge-parallel,merge-sequential) +.PHONY: merge-sequential merge-sequential: $(addprefix merge-,$(MODULATIONS)) +.PHONY: merge-parallel merge-parallel: _PIDFILE=$(WORKROOTDIR)/build-global/multitail.pid merge-parallel: merge-watch $(_DBG_MERGE)trap "kill -9 `cat $(_PIDFILE) $(foreach M,$(MODULATIONS),$(WORKROOTDIR)/build-$M/build.pid) 2>/dev/null`;stty sane" INT;\ @@ -824,6 +828,7 @@ exit "Return code: `cat $(WORKROOTDIR)/build-$M/build.ret`"; \ fi;) +.PHONY: merge-watch merge-watch: _USEMULTITAIL=$(shell test -x $(MULTITAIL) && test -x $(TTY) && $(TTY) >/dev/null 2>&1; if [ $$? -eq 0 ]; then echo yes; fi) merge-watch: $(addprefix $(WORKROOTDIR)/build-,global $(MODULATIONS)) $(_DBG_MERGE)$(if $(_USEMULTITAIL),\ @@ -882,7 +887,7 @@ .PHONY: remerge reset-merge reset-merge-modulated remerge: reset-merge merge -reset-merge: reset-package $(addprefix reset-merge-,$(MODULATIONS)) reset-merge-license reset-merge-classutils reset-merge-checkpkgoverrides reset-merge-alternatives reset-merge-ap2mod reset-merge-src +reset-merge: reset-package $(addprefix reset-merge-,$(MODULATIONS)) reset-merge-license reset-merge-classutils reset-merge-checkpkgoverrides reset-merge-alternatives reset-merge-README.CSW reset-merge-ap2mod reset-merge-src @rm -f $(COOKIEDIR)/pre-merge $(foreach M,$(MODULATIONS),$(COOKIEDIR)/merge-$M) $(COOKIEDIR)/merge $(COOKIEDIR)/post-merge @rm -rf $(PKGROOT) Modified: csw/mgar/gar/v2/gar.pkg.mk =================================================================== --- csw/mgar/gar/v2/gar.pkg.mk 2011-02-14 09:33:17 UTC (rev 13300) +++ csw/mgar/gar/v2/gar.pkg.mk 2011-02-14 16:55:23 UTC (rev 13301) @@ -651,6 +651,16 @@ reset-merge-license: @rm -f $(COOKIEDIR)/merge-license $(foreach SPEC,$(_PKG_SPECS),$(COOKIEDIR)/merge-license-$(SPEC)) +merge-README.CSW: $(WORKDIR) + $(_DBG)if test -f $(WORKDIR)/README.CSW; then \ + $(foreach P,$(_PKG_SPECS),cp $(WORKDIR)/README.CSW $(PKGROOT)$(docdir)/$(call catalogname,$P)/README.CSW;) \ + fi + @$(MAKECOOKIE) + +.PHONY: reset-merge-README.CSW +reset-merge-README.CSW: + $(_DBG)rm -f $(COOKIEDIR)/merge-README.CSW $(foreach SPEC,$(_PKG_SPECS),$(PKGROOT)$(docdir)/$(call catalogname,$(SPEC))/README.CSW) + merge-classutils: merge-migrateconf merge-usergroup merge-inetdconf merge-etcservices reset-merge-classutils: reset-merge-migrateconf reset-merge-usergroup reset-merge-inetdconf reset-merge-etcservices This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Mon Feb 14 17:56:39 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Mon, 14 Feb 2011 16:56:39 +0000 Subject: [csw-devel] SF.net SVN: gar:[13302] csw/mgar/pkg/rdesktop/trunk Message-ID: Revision: 13302 http://gar.svn.sourceforge.net/gar/?rev=13302&view=rev Author: dmichelsen Date: 2011-02-14 16:56:39 +0000 (Mon, 14 Feb 2011) Log Message: ----------- rdesktop: Add README.CSW about functionality patch Modified Paths: -------------- csw/mgar/pkg/rdesktop/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/rdesktop/trunk/files/README.CSW Modified: csw/mgar/pkg/rdesktop/trunk/Makefile =================================================================== --- csw/mgar/pkg/rdesktop/trunk/Makefile 2011-02-14 16:55:23 UTC (rev 13301) +++ csw/mgar/pkg/rdesktop/trunk/Makefile 2011-02-14 16:56:39 UTC (rev 13302) @@ -12,6 +12,7 @@ MASTER_SITES = $(SF_MIRROR) DISTFILES = $(NAME)-$(VERSION).tar.gz +DISTFILES += README.CSW # Apply patch from # https://sourceforge.net/tracker/?func=detail&aid=2812158&group_id=24366&atid=381349 @@ -19,6 +20,9 @@ # http://csiuo.com/drupal/content/rdesktop-160-and-windows-server-2008-sp2 PATCHFILES += fix-2022945.patch +# The above is a functionality patch +VERSION_FLAG_PATCH = 1 + PACKAGES = CSWrdesktop CATALOGNAME_CSWrdesktop = rdesktop @@ -37,4 +41,7 @@ # No test/check target provided by rdesktop TEST_SCRIPTS = +# The path is just an example and nobody will probably look into it +CHECKPKG_OVERRIDES_CSWrdesktop += file-with-bad-content|/usr/local|root/opt/csw/share/rdesktop/keymaps/is + include gar/category.mk Added: csw/mgar/pkg/rdesktop/trunk/files/README.CSW =================================================================== --- csw/mgar/pkg/rdesktop/trunk/files/README.CSW (rev 0) +++ csw/mgar/pkg/rdesktop/trunk/files/README.CSW 2011-02-14 16:56:39 UTC (rev 13302) @@ -0,0 +1,12 @@ +README.CSW for rdesktop +----------------------- + +The following functionality patches have been applied: + +* Fix IRP Query Volume Information class: 0x07 problem + + The patch was taken from + http://sourceforge.net/tracker/?func=detail&aid=2812158&group_id=24366&atid=381349 + as referenced from + http://csiuo.com/drupal/content/rdesktop-160-and-windows-server-2008-sp2 + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Mon Feb 14 19:07:55 2011 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Mon, 14 Feb 2011 18:07:55 +0000 Subject: [csw-devel] SF.net SVN: gar:[13303] csw/mgar/pkg/lang-python Message-ID: Revision: 13303 http://gar.svn.sourceforge.net/gar/?rev=13303&view=rev Author: bonivart Date: 2011-02-14 18:07:55 +0000 (Mon, 14 Feb 2011) Log Message: ----------- terminator: using category python made it easy! Added Paths: ----------- csw/mgar/pkg/lang-python/terminator/ csw/mgar/pkg/lang-python/terminator/branches/ csw/mgar/pkg/lang-python/terminator/tags/ csw/mgar/pkg/lang-python/terminator/trunk/ csw/mgar/pkg/lang-python/terminator/trunk/Makefile csw/mgar/pkg/lang-python/terminator/trunk/checksums csw/mgar/pkg/lang-python/terminator/trunk/files/ Property changes on: csw/mgar/pkg/lang-python/terminator/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/lang-python/terminator/trunk/Makefile =================================================================== --- csw/mgar/pkg/lang-python/terminator/trunk/Makefile (rev 0) +++ csw/mgar/pkg/lang-python/terminator/trunk/Makefile 2011-02-14 18:07:55 UTC (rev 13303) @@ -0,0 +1,24 @@ +NAME = terminator +VERSION = 0.95 +CATEGORIES = python + +DESCRIPTION = Multiple GNOME terminals in one window +define BLURB + Multiple GNOME terminals in one window +endef + +MASTER_SITES = http://launchpad.net/terminator/trunk/$(VERSION)/+download/ +DISTFILES = $(NAME)-$(VERSION).tar.gz + +# Just a bunch of paths used as fallback +CHECKPKG_OVERRIDES += file-with-bad-content|/usr/local|root/opt/csw/lib/python/site-packages/terminatorlib/util.py + +# App well known as terminator +CHECKPKG_OVERRIDES += pkgname-does-not-start-with-CSWpy- +CHECKPKG_OVERRIDES += catalogname-does-not-start-with-py_ + +ARCHALL = 1 + +TEST_SCRIPTS = + +include gar/category.mk Added: csw/mgar/pkg/lang-python/terminator/trunk/checksums =================================================================== This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Mon Feb 14 19:11:09 2011 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Mon, 14 Feb 2011 18:11:09 +0000 Subject: [csw-devel] SF.net SVN: gar:[13304] csw/mgar/pkg/terminator Message-ID: Revision: 13304 http://gar.svn.sourceforge.net/gar/?rev=13304&view=rev Author: bonivart Date: 2011-02-14 18:11:09 +0000 (Mon, 14 Feb 2011) Log Message: ----------- terminator: remove as it is lang-python now Modified Paths: -------------- csw/mgar/pkg/terminator/trunk/Makefile Removed Paths: ------------- csw/mgar/pkg/terminator/branches/ csw/mgar/pkg/terminator/tags/ Modified: csw/mgar/pkg/terminator/trunk/Makefile =================================================================== --- csw/mgar/pkg/terminator/trunk/Makefile 2011-02-14 18:07:55 UTC (rev 13303) +++ csw/mgar/pkg/terminator/trunk/Makefile 2011-02-14 18:11:09 UTC (rev 13304) @@ -1,6 +1,6 @@ NAME = terminator VERSION = 0.95 -CATEGORIES = utils +CATEGORIES = python DESCRIPTION = Multiple GNOME terminals in one window define BLURB @@ -10,6 +10,15 @@ MASTER_SITES = http://launchpad.net/terminator/trunk/$(VERSION)/+download/ DISTFILES = $(NAME)-$(VERSION).tar.gz -CONFIGURE_ARGS = $(DIRPATHS) +# Just a bunch of paths used as fallback +CHECKPKG_OVERRIDES += file-with-bad-content|/usr/local|root/opt/csw/lib/python/site-packages/terminatorlib/util.py +# App well known as terminator +CHECKPKG_OVERRIDES += pkgname-does-not-start-with-CSWpy- +CHECKPKG_OVERRIDES += catalogname-does-not-start-with-py_ + +ARCHALL = 1 + +TEST_SCRIPTS = + include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Mon Feb 14 19:27:17 2011 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Mon, 14 Feb 2011 18:27:17 +0000 Subject: [csw-devel] SF.net SVN: gar:[13305] csw/mgar/pkg/lang-python/terminator/trunk/checksums Message-ID: Revision: 13305 http://gar.svn.sourceforge.net/gar/?rev=13305&view=rev Author: bonivart Date: 2011-02-14 18:27:17 +0000 (Mon, 14 Feb 2011) Log Message: ----------- terminator: checksums Modified Paths: -------------- csw/mgar/pkg/lang-python/terminator/trunk/checksums Modified: csw/mgar/pkg/lang-python/terminator/trunk/checksums =================================================================== --- csw/mgar/pkg/lang-python/terminator/trunk/checksums 2011-02-14 18:11:09 UTC (rev 13304) +++ csw/mgar/pkg/lang-python/terminator/trunk/checksums 2011-02-14 18:27:17 UTC (rev 13305) @@ -0,0 +1 @@ +ceae5c899c71b9c80e48083c17a631ad terminator-0.95.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Mon Feb 14 19:49:29 2011 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Mon, 14 Feb 2011 18:49:29 +0000 Subject: [csw-devel] SF.net SVN: gar:[13306] csw/mgar/pkg/terminator/ Message-ID: Revision: 13306 http://gar.svn.sourceforge.net/gar/?rev=13306&view=rev Author: bonivart Date: 2011-02-14 18:49:29 +0000 (Mon, 14 Feb 2011) Log Message: ----------- terminator: remove as it is lang-python now: part II Removed Paths: ------------- csw/mgar/pkg/terminator/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Mon Feb 14 21:26:36 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Mon, 14 Feb 2011 20:26:36 +0000 Subject: [csw-devel] SF.net SVN: gar:[13307] csw/mgar/gar/v2/lib Message-ID: Revision: 13307 http://gar.svn.sourceforge.net/gar/?rev=13307&view=rev Author: wahwah Date: 2011-02-14 20:26:36 +0000 (Mon, 14 Feb 2011) Log Message: ----------- csw-upload-pkg: OS-release-specific uploads Update to csw-upload-pkg based on a suggestion from Peter Felecan. When uploading a 5.9 file, for example, it'll look at the current state of the catalog, and if a 5.10-specific package is present, csw-upload-pkg will only upload the 5.9 package to the 5.9 catalog. If, on the other hand, there is the same version of the package in 5.10 (and 5.11), csw-upload-pkg will upload the package there as well. There's a new flag, --os-release, which makes csw-upload-pkg upload a package to one, specified, catalog only. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/csw_upload_pkg.py csw/mgar/gar/v2/lib/python/pkgdb.py csw/mgar/gar/v2/lib/python/rest.py csw/mgar/gar/v2/lib/python/struct_util.py csw/mgar/gar/v2/lib/python/struct_util_test.py csw/mgar/gar/v2/lib/web/pkgdb_web.py Added Paths: ----------- csw/mgar/gar/v2/lib/python/csw_upload_pkg_test.py Modified: csw/mgar/gar/v2/lib/python/csw_upload_pkg.py =================================================================== --- csw/mgar/gar/v2/lib/python/csw_upload_pkg.py 2011-02-14 18:49:29 UTC (rev 13306) +++ csw/mgar/gar/v2/lib/python/csw_upload_pkg.py 2011-02-14 20:26:36 UTC (rev 13307) @@ -16,22 +16,28 @@ import json import common_constants import socket +import rest BASE_URL = "http://buildfarm.opencsw.org/releases/" +DEFAULT_CATREL = "unstable" USAGE = """%prog [ options ] [ [ ... ] ] Uploads a set of packages to the unstable catalog in opencsw-future. - When an ARCH=all package is sent, it's added to both sparc and i386 catalogs - When a SunOS5.x package is sent, it's added to catalogs SunOS5.x, - SunOS5.(x+1), up to SunOS5.11. + SunOS5.(x+1), up to SunOS5.11, but only if there are no packages specific to + 5.10 (and/or 5.11). - If a package update is sent, the tool uses catalogname to identify the - package it's supposed to replace + package it's supposed to replace The --remove option affects the same catalogs as the regular use, except that it removes assignments of a given package to catalogs, instead of adding them. +The --os-release flag makes %prog only insert the package to catalog with the +given OS release. + For more information, see: http://wiki.opencsw.org/automated-release-process#toc0 """ @@ -54,10 +60,12 @@ class Srv4Uploader(object): - def __init__(self, filenames, debug=False): + def __init__(self, filenames, os_release=None, debug=False): self.filenames = filenames self.md5_by_filename = {} self.debug = debug + self._rest_client = rest.RestClient() + self.os_release = os_release def Upload(self): for filename in self.filenames: @@ -78,14 +86,16 @@ file_in_allpkgs, file_metadata = self._GetSrv4FileMetadata(md5_sum) osrel = file_metadata['osrel'] arch = file_metadata['arch'] - self._IterateOverCatalogs( - filename, file_metadata, - arch, osrel, self._RemoveFromCatalog) + catalogs = self._MatchSrv4ToCatalogs( + filename, DEFAULT_CATREL, arch, osrel, md5_sum) + for unused_catrel, cat_arch, cat_osrel in catalogs: + self._RemoveFromCatalog(filename, file_metadata, cat_arch, cat_osrel) def _RemoveFromCatalog(self, filename, arch, osrel, file_metadata): md5_sum = self._GetFileMd5sum(filename) basename = os.path.basename(filename) parsed_basename = opencsw.ParsePackageFileName(basename) + # TODO: Move this bit to a separate class (RestClient) url = ( "%scatalogs/unstable/%s/%s/%s/" % (BASE_URL, arch, osrel, md5_sum)) @@ -121,19 +131,47 @@ self.md5_by_filename[filename] = md5_sum return self.md5_by_filename[filename] - def _IterateOverCatalogs(self, filename, file_metadata, arch, osrel, callback): - # Implementing backward compatibility. A package for SunOS5.x is also - # inserted into SunOS5.(x+n) for n=(0, 1, ...) + def _MatchSrv4ToCatalogs(self, filename, + catrel, srv4_arch, srv4_osrel, + md5_sum): + """Compile a list of catalogs affected by the given file. + + If it's a 5.9 package, it can be matched to 5.9, 5.10 and 5.11. However, + if there already are specific 5.10 and/or 5.11 versions of the package, + don't overwrite them. + """ + basename = os.path.basename(filename) + parsed_basename = opencsw.ParsePackageFileName(basename) + osrels = None for idx, known_osrel in enumerate(common_constants.OS_RELS): - if osrel == known_osrel: + if srv4_osrel == known_osrel: osrels = common_constants.OS_RELS[idx:] - if arch == 'all': + assert osrels, "OS releases not found" + if srv4_arch == 'all': archs = ('sparc', 'i386') else: - archs = (arch,) + archs = (srv4_arch,) + catalogname = parsed_basename["catalogname"] + catalogs = [] for arch in archs: for osrel in osrels: - callback(filename, arch, osrel, file_metadata) + srv4_in_catalog = self._rest_client.Srv4ByCatalogAndCatalogname( + catrel, arch, osrel, catalogname) + if not srv4_in_catalog: + continue + if srv4_in_catalog["osrel"] == srv4_osrel: + # The same architecture as our package, meaning that we can insert + # the same architecture into the catalog. + if (not self.os_release + or (self.os_release and osrel == self.os_release)): + catalogs.append((catrel, arch, osrel)) + else: + if self.os_release and osrel == self.os_release: + catalogs.append((catrel, arch, osrel)) + logging.debug( + "Catalog %s %s %s has another version of %s.", + catrel, arch, osrel, catalogname) + return tuple(catalogs) def _UploadFile(self, filename): md5_sum = self._GetFileMd5sum(filename) @@ -149,9 +187,10 @@ raise DataError("file_metadata is empty: %s" % repr(file_metadata)) osrel = file_metadata['osrel'] arch = file_metadata['arch'] - self._IterateOverCatalogs( - filename, file_metadata, - arch, osrel, self._InsertIntoCatalog) + catalogs = self._MatchSrv4ToCatalogs( + filename, DEFAULT_CATREL, arch, osrel, md5_sum) + for unused_catrel, cat_arch, cat_osrel in catalogs: + self._InsertIntoCatalog(filename, file_metadata, cat_arch, cat_osrel) def _InsertIntoCatalog(self, filename, arch, osrel, file_metadata): logging.info( @@ -272,6 +311,9 @@ dest="remove", default=False, action="store_true", help="Remove packages from catalogs instead of adding them") + parser.add_option("--os-release", + dest="os_release", + help="If specified, only uploads to the specified OS release.") options, args = parser.parse_args() if options.debug: logging.basicConfig(level=logging.DEBUG) @@ -281,7 +323,12 @@ hostname = socket.gethostname() if not hostname.startswith('login'): logging.warning("This script is meant to be run on the login host.") - uploader = Srv4Uploader(args, debug=options.debug) + os_release = options.os_release + if os_release: + os_release = struct_util.OsReleaseToLong(os_release) + uploader = Srv4Uploader(args, + os_release=os_release, + debug=options.debug) if options.remove: uploader.Remove() else: Added: csw/mgar/gar/v2/lib/python/csw_upload_pkg_test.py =================================================================== --- csw/mgar/gar/v2/lib/python/csw_upload_pkg_test.py (rev 0) +++ csw/mgar/gar/v2/lib/python/csw_upload_pkg_test.py 2011-02-14 20:26:36 UTC (rev 13307) @@ -0,0 +1,151 @@ +#!/usr/bin/env python2.6 + +import unittest +import csw_upload_pkg +import mox +import rest +import copy + +GDB_STRUCT_9 = { + "arch": "sparc", + "basename": "gdb-7.2,REV=2011.01.21-SunOS5.9-sparc-CSW.pkg.gz", + "catalogname": "gdb", + "filename_arch": "sparc", + "maintainer_email": "pfele... at opencsw.org", + "maintainer_full_name": None, + "md5_sum": "7971e31461b53638d7813407fab4765b", + "mtime": "2011-01-24 03:09:54", + "osrel": "SunOS5.9", + "pkgname": "CSWgdb", + "rev": "2011.01.21", + "size": 7616184, + "version_string": "7.2,REV=2011.01.21", +} +GDB_STRUCT_10 = { + "arch": "sparc", + "basename": "gdb-7.2,REV=2011.01.21-SunOS5.10-sparc-CSW.pkg.gz", + "catalogname": "gdb", + "filename_arch": "sparc", + "maintainer_email": "pfele... at opencsw.org", + "maintainer_full_name": None, + "md5_sum": "09cccf8097e982dadbd717910963e378", + "mtime": "2011-01-24 03:10:05", + "osrel": "SunOS5.10", + "pkgname": "CSWgdb", + "rev": "2011.01.21", + "size": 7617270, + "version_string": "7.2,REV=2011.01.21", +} + +class Srv4UploaderUnitTest(mox.MoxTestBase): + + def test_MatchSrv4ToCatalogsSame(self): + rest_client_mock = self.mox.CreateMock(rest.RestClient) + self.mox.StubOutWithMock(rest, "RestClient") + rest.RestClient().AndReturn(rest_client_mock) + rest_client_mock.Srv4ByCatalogAndCatalogname( + 'unstable', 'sparc', u'SunOS5.9', 'gdb').AndReturn(GDB_STRUCT_9) + rest_client_mock.Srv4ByCatalogAndCatalogname( + 'unstable', 'sparc', u'SunOS5.10', 'gdb').AndReturn(GDB_STRUCT_9) + rest_client_mock.Srv4ByCatalogAndCatalogname( + 'unstable', 'sparc', u'SunOS5.11', 'gdb').AndReturn(GDB_STRUCT_9) + self.mox.ReplayAll() + su = csw_upload_pkg.Srv4Uploader(None) + result = su._MatchSrv4ToCatalogs( + "gdb-7.2,REV=2011.01.21-SunOS5.9-sparc-CSW.pkg.gz", + "unstable", "sparc", "SunOS5.9", + "deadbeef61b53638d7813407fab4765b") + expected = ( + ("unstable", "sparc", "SunOS5.9"), + ("unstable", "sparc", "SunOS5.10"), + ("unstable", "sparc", "SunOS5.11"), + ) + self.assertEquals(expected, result) + + def test_MatchSrv4ToCatalogsDifferent(self): + rest_client_mock = self.mox.CreateMock(rest.RestClient) + self.mox.StubOutWithMock(rest, "RestClient") + rest.RestClient().AndReturn(rest_client_mock) + rest_client_mock.Srv4ByCatalogAndCatalogname( + 'unstable', 'sparc', u'SunOS5.9', 'gdb').AndReturn(GDB_STRUCT_9) + rest_client_mock.Srv4ByCatalogAndCatalogname( + 'unstable', 'sparc', u'SunOS5.10', 'gdb').AndReturn(GDB_STRUCT_10) + rest_client_mock.Srv4ByCatalogAndCatalogname( + 'unstable', 'sparc', u'SunOS5.11', 'gdb').AndReturn(GDB_STRUCT_10) + self.mox.ReplayAll() + su = csw_upload_pkg.Srv4Uploader(None) + result = su._MatchSrv4ToCatalogs( + "gdb-7.2,REV=2011.01.21-SunOS5.9-sparc-CSW.pkg.gz", + "unstable", "sparc", "SunOS5.9", + "deadbeef61b53638d7813407fab4765b") + expected = ( + ("unstable", "sparc", "SunOS5.9"), + ) + self.assertEquals(expected, result) + + def test_MatchSrv4ToCatalogsSameSpecificOsrel(self): + rest_client_mock = self.mox.CreateMock(rest.RestClient) + self.mox.StubOutWithMock(rest, "RestClient") + rest.RestClient().AndReturn(rest_client_mock) + rest_client_mock.Srv4ByCatalogAndCatalogname( + 'unstable', 'sparc', u'SunOS5.9', 'gdb').AndReturn(GDB_STRUCT_9) + rest_client_mock.Srv4ByCatalogAndCatalogname( + 'unstable', 'sparc', u'SunOS5.10', 'gdb').AndReturn(GDB_STRUCT_9) + rest_client_mock.Srv4ByCatalogAndCatalogname( + 'unstable', 'sparc', u'SunOS5.11', 'gdb').AndReturn(GDB_STRUCT_9) + self.mox.ReplayAll() + su = csw_upload_pkg.Srv4Uploader(None, os_release="SunOS5.10") + result = su._MatchSrv4ToCatalogs( + "gdb-7.2,REV=2011.01.21-SunOS5.9-sparc-CSW.pkg.gz", + "unstable", "sparc", "SunOS5.9", + "deadbeef61b53638d7813407fab4765b") + expected = ( + ("unstable", "sparc", "SunOS5.10"), + ) + self.assertEquals(expected, result) + + def test_MatchSrv4ToCatalogsSameSpecificOsrelAlreadyPresent(self): + rest_client_mock = self.mox.CreateMock(rest.RestClient) + self.mox.StubOutWithMock(rest, "RestClient") + rest.RestClient().AndReturn(rest_client_mock) + rest_client_mock.Srv4ByCatalogAndCatalogname( + 'unstable', 'sparc', u'SunOS5.9', 'gdb').AndReturn(GDB_STRUCT_9) + rest_client_mock.Srv4ByCatalogAndCatalogname( + 'unstable', 'sparc', u'SunOS5.10', 'gdb').AndReturn(GDB_STRUCT_10) + rest_client_mock.Srv4ByCatalogAndCatalogname( + 'unstable', 'sparc', u'SunOS5.11', 'gdb').AndReturn(GDB_STRUCT_10) + self.mox.ReplayAll() + su = csw_upload_pkg.Srv4Uploader(None, os_release="SunOS5.10") + result = su._MatchSrv4ToCatalogs( + "gdb-7.2,REV=2011.01.21-SunOS5.9-sparc-CSW.pkg.gz", + "unstable", "sparc", "SunOS5.9", + "deadbeef61b53638d7813407fab4765b") + expected = ( + ("unstable", "sparc", "SunOS5.10"), + ) + self.assertEquals(expected, result) + + def test_MatchSrv4ToCatalogsNotPresent(self): + rest_client_mock = self.mox.CreateMock(rest.RestClient) + self.mox.StubOutWithMock(rest, "RestClient") + rest.RestClient().AndReturn(rest_client_mock) + rest_client_mock.Srv4ByCatalogAndCatalogname( + 'unstable', 'sparc', u'SunOS5.9', 'gdb').AndReturn(GDB_STRUCT_9) + rest_client_mock.Srv4ByCatalogAndCatalogname( + 'unstable', 'sparc', u'SunOS5.10', 'gdb').AndReturn(GDB_STRUCT_9) + rest_client_mock.Srv4ByCatalogAndCatalogname( + 'unstable', 'sparc', u'SunOS5.11', 'gdb').AndReturn(None) + self.mox.ReplayAll() + su = csw_upload_pkg.Srv4Uploader(None, os_release="SunOS5.10") + result = su._MatchSrv4ToCatalogs( + "gdb-7.2,REV=2011.01.21-SunOS5.9-sparc-CSW.pkg.gz", + "unstable", "sparc", "SunOS5.9", + "deadbeef61b53638d7813407fab4765b") + expected = ( + ("unstable", "sparc", "SunOS5.10"), + ) + self.assertEquals(expected, result) + + +if __name__ == '__main__': + unittest.main() Property changes on: csw/mgar/gar/v2/lib/python/csw_upload_pkg_test.py ___________________________________________________________________ Added: svn:executable + * Modified: csw/mgar/gar/v2/lib/python/pkgdb.py =================================================================== --- csw/mgar/gar/v2/lib/python/pkgdb.py 2011-02-14 18:49:29 UTC (rev 13306) +++ csw/mgar/gar/v2/lib/python/pkgdb.py 2011-02-14 20:26:36 UTC (rev 13307) @@ -507,8 +507,8 @@ m.Srv4FileInCatalog.q.catrel==sqo_catrel, m.Srv4FileStats.q.catalogname.contains(catalogname), m.Srv4FileStats.q.use_to_generate_catalogs==True), - join=join, - ).orderBy("catalogname") + join=join, + ).orderBy("catalogname") for sqo_srv4 in res: print "%s %s" % (sqo_srv4.basename, sqo_srv4.md5_sum) elif command == 'sync-cat-from-file': Modified: csw/mgar/gar/v2/lib/python/rest.py =================================================================== --- csw/mgar/gar/v2/lib/python/rest.py 2011-02-14 18:49:29 UTC (rev 13306) +++ csw/mgar/gar/v2/lib/python/rest.py 2011-02-14 20:26:36 UTC (rev 13307) @@ -31,3 +31,16 @@ logging.debug("GetCatalog(): GET %s", url) data = urllib2.urlopen(url).read() return json.loads(data) + + def Srv4ByCatalogAndCatalogname(self, catrel, arch, osrel, catalogname): + """Returns a srv4 data structure or None if not found.""" + url = BASE_URL + ( + "/catalogs/%s/%s/%s/%s/" + % (catrel, arch, osrel, catalogname)) + logging.debug("Srv4ByCatalogAndCatalogname(): GET %s", url) + try: + data = urllib2.urlopen(url).read() + return json.loads(data) + except urllib2.HTTPError, e: + logging.warning(e) + return None Modified: csw/mgar/gar/v2/lib/python/struct_util.py =================================================================== --- csw/mgar/gar/v2/lib/python/struct_util.py 2011-02-14 18:49:29 UTC (rev 13306) +++ csw/mgar/gar/v2/lib/python/struct_util.py 2011-02-14 20:26:36 UTC (rev 13307) @@ -18,6 +18,13 @@ return index +def OsReleaseToLong(osrel): + if osrel.startswith("SunOS"): + return osrel + else: + return "SunOS%s" % osrel + + def ResolveSymlink(link_from, link_to): target = os.path.normpath( os.path.join(os.path.dirname(link_from), link_to)) Modified: csw/mgar/gar/v2/lib/python/struct_util_test.py =================================================================== --- csw/mgar/gar/v2/lib/python/struct_util_test.py 2011-02-14 18:49:29 UTC (rev 13306) +++ csw/mgar/gar/v2/lib/python/struct_util_test.py 2011-02-14 20:26:36 UTC (rev 13307) @@ -46,6 +46,14 @@ "/libexec/foo-exec", struct_util.ResolveSymlink("/opt/csw/bin/foo", "/libexec/foo-exec")) +class OsReleaseToLongTest(unittest.TestCase): + def testLong(self): + self.assertEqual("SunOS5.9", struct_util.OsReleaseToLong("SunOS5.9")) + + def testShort(self): + self.assertEqual("SunOS5.9", struct_util.OsReleaseToLong("5.9")) + + if __name__ == '__main__': unittest.main() Modified: csw/mgar/gar/v2/lib/web/pkgdb_web.py =================================================================== --- csw/mgar/gar/v2/lib/web/pkgdb_web.py 2011-02-14 18:49:29 UTC (rev 13306) +++ csw/mgar/gar/v2/lib/web/pkgdb_web.py 2011-02-14 20:26:36 UTC (rev 13307) @@ -30,6 +30,8 @@ r'/rest/catalogs/([^/]+)/([^/]+)/([^/]+)/', 'Catalogs', r'/rest/catalogs/([^/]+)/([^/]+)/([^/]+)/pkgname-by-filename', 'PkgnameByFilename', + # Query by catalog release, arch, OS release and catalogname + r'/rest/catalogs/([^/]+)/([^/]+)/([^/]+)/catalognames/([^/]+)/', 'Srv4ByCatAndCatalogname', r'/rest/srv4/([0-9a-f]{32})/', 'RestSrv4Detail', ) @@ -268,6 +270,38 @@ raise web.notfound() +class Srv4ByCatAndCatalogname(object): + + def GET(self, catrel_name, arch_name, osrel_name, catalogname): + """Get a srv4 reference by catalog ane catalogname.""" + configuration.SetUpSqlobjectConnection() + sqo_osrel, sqo_arch, sqo_catrel = pkgdb.GetSqoTriad( + osrel_name, arch_name, catrel_name) + join = [ + sqlbuilder.INNERJOINOn(None, + models.Srv4FileInCatalog, + models.Srv4FileInCatalog.q.srv4file==models.Srv4FileStats.q.id), + ] + res = models.Srv4FileStats.select( + sqlobject.AND( + models.Srv4FileInCatalog.q.osrel==sqo_osrel, + models.Srv4FileInCatalog.q.arch==sqo_arch, + models.Srv4FileInCatalog.q.catrel==sqo_catrel, + models.Srv4FileStats.q.catalogname==catalogname, + models.Srv4FileStats.q.use_to_generate_catalogs==True), + join=join, + ) + try: + srv4 = res.getOne() + mimetype, data = srv4.GetRestRepr() + web.header('Content-type', mimetype) + return json.dumps(data) + except ( + sqlobject.main.SQLObjectNotFound, + sqlobject.dberrors.OperationalError), e: + raise web.notfound() + + web.webapi.internalerror = web.debugerror # app = web.application(urls, globals()) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Mon Feb 14 21:29:06 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Mon, 14 Feb 2011 20:29:06 +0000 Subject: [csw-devel] SF.net SVN: gar:[13308] csw/mgar/gar/v2/lib/python/struct_util_test.py Message-ID: Revision: 13308 http://gar.svn.sourceforge.net/gar/?rev=13308&view=rev Author: wahwah Date: 2011-02-14 20:29:05 +0000 (Mon, 14 Feb 2011) Log Message: ----------- checkpkg: Bugfix, removing a colliding test name Name of one testing class was shadowing the name of another class, effectively disabling it. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/struct_util_test.py Modified: csw/mgar/gar/v2/lib/python/struct_util_test.py =================================================================== --- csw/mgar/gar/v2/lib/python/struct_util_test.py 2011-02-14 20:26:36 UTC (rev 13307) +++ csw/mgar/gar/v2/lib/python/struct_util_test.py 2011-02-14 20:29:05 UTC (rev 13308) @@ -34,7 +34,7 @@ self.assertEquals(expected, struct_util.IndexDictsBy(list_of_dicts, "a")) -class IndexByUnitTest(unittest.TestCase): +class ResolveSymlinkUnitTest(unittest.TestCase): def testRelative(self): self.assertEquals( This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Mon Feb 14 21:29:42 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Mon, 14 Feb 2011 20:29:42 +0000 Subject: [csw-devel] SF.net SVN: gar:[13309] csw/mgar/gar/v2/lib/python Message-ID: Revision: 13309 http://gar.svn.sourceforge.net/gar/?rev=13309&view=rev Author: wahwah Date: 2011-02-14 20:29:41 +0000 (Mon, 14 Feb 2011) Log Message: ----------- checkpkg: soname must not equal filename Add a check for a failure mode that once happened to libnet, where the soname and the filename are identical, and the filename ends with .so. Such condition makes any subsequent updates very hard. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/package_checks.py csw/mgar/gar/v2/lib/python/package_checks_test.py Modified: csw/mgar/gar/v2/lib/python/package_checks.py =================================================================== --- csw/mgar/gar/v2/lib/python/package_checks.py 2011-02-14 20:29:05 UTC (rev 13308) +++ csw/mgar/gar/v2/lib/python/package_checks.py 2011-02-14 20:29:41 UTC (rev 13309) @@ -1225,7 +1225,24 @@ def CheckSonameMustNotBeEqualToFileNameIfFilenameEndsWithSo( pkg_data, error_mgr, logger, messenger): - pass + for binary_info in pkg_data["binaries_dump_info"]: + soname = binary_info["soname"] + base_name = binary_info["base_name"] + if (base_name.endswith(".so") + and soname == base_name): + msg = ("File /%s is a shared library. Its SONAME is equal to its " + "filename, and the filename ends with .so. " + "This is a serious problem. " + "If such shared library is released and any programs link " + "to it, it is very hard to do any subsequent updates to " + "that shared library. This problem has occurred with relation " + "to libnet. " + "For information how to update such library, please see: " + "http://wiki.opencsw.org/project-libnet") + messenger.Message(msg) + error_mgr.ReportError( + "soname-equals-filename", + "file=/%s" % binary_info["path"]) def CheckLinkableSoFileMustBeAsymlink( Modified: csw/mgar/gar/v2/lib/python/package_checks_test.py =================================================================== --- csw/mgar/gar/v2/lib/python/package_checks_test.py 2011-02-14 20:29:05 UTC (rev 13308) +++ csw/mgar/gar/v2/lib/python/package_checks_test.py 2011-02-14 20:29:41 UTC (rev 13309) @@ -1655,5 +1655,28 @@ self.RunCheckpkgTest(self.CheckpkgTest4) +class TestCheckPrefixDirs(CheckpkgUnitTestHelper, + unittest.TestCase): + FUNCTION_NAME = ('CheckSonameMustNotBeEqualToFileName' + 'IfFilenameEndsWithSo') + + def CheckpkgTest(self): + self.pkg_data = copy.deepcopy(neon_stats[0]) + self.pkg_data["binaries_dump_info"][0]["soname"] = "libfoo.so" + self.pkg_data["binaries_dump_info"][0]["base_name"] = "libfoo.so" + self.pkg_data["binaries_dump_info"][0]["path"] = "opt/csw/lib/libfoo.so" + self.error_mgr_mock.ReportError( + 'soname-equals-filename', + 'file=/opt/csw/lib/libfoo.so') + + def CheckpkgTest2(self): + self.pkg_data = copy.deepcopy(neon_stats[0]) + self.pkg_data["binaries_dump_info"][0]["soname"] = "libfoo.so.1" + self.pkg_data["binaries_dump_info"][0]["base_name"] = "libfoo.so.1" + + def testTwo(self): + self.RunCheckpkgTest(self.CheckpkgTest2) + + if __name__ == '__main__': unittest.main() This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Mon Feb 14 21:30:17 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Mon, 14 Feb 2011 20:30:17 +0000 Subject: [csw-devel] SF.net SVN: gar:[13310] csw/mgar/gar/v2/lib/python Message-ID: Revision: 13310 http://gar.svn.sourceforge.net/gar/?rev=13310&view=rev Author: wahwah Date: 2011-02-14 20:30:17 +0000 (Mon, 14 Feb 2011) Log Message: ----------- checkpkg: Adding MakeCatalognameByPkgname A function to transform pkgnames to a catalognames. One of its uses will be verifying that catalognames match pkgnames. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/struct_util.py csw/mgar/gar/v2/lib/python/struct_util_test.py Modified: csw/mgar/gar/v2/lib/python/struct_util.py =================================================================== --- csw/mgar/gar/v2/lib/python/struct_util.py 2011-02-14 20:29:41 UTC (rev 13309) +++ csw/mgar/gar/v2/lib/python/struct_util.py 2011-02-14 20:30:17 UTC (rev 13310) @@ -5,7 +5,10 @@ import re MD5_RE = re.compile(r"^[0123456789abcdef]{32}$") +PKGNAME_TICKER_RE = re.compile(r'^CSW') +PKGNAME_CHARS_RE = re.compile(r'[A-Za-z0-9\+]+') + def IndexDictsBy(list_of_dicts, field_key): """Creates an index of list of dictionaries by a field name. @@ -34,3 +37,9 @@ def IsMd5(s): # For optimization, moving the compilation to the top level. return MD5_RE.match(s) + + +def MakeCatalognameByPkgname(pkgname): + catalogname = re.sub(PKGNAME_TICKER_RE, '', pkgname) + catalogname = "_".join(re.findall(PKGNAME_CHARS_RE, catalogname)) + return catalogname Modified: csw/mgar/gar/v2/lib/python/struct_util_test.py =================================================================== --- csw/mgar/gar/v2/lib/python/struct_util_test.py 2011-02-14 20:29:41 UTC (rev 13309) +++ csw/mgar/gar/v2/lib/python/struct_util_test.py 2011-02-14 20:30:17 UTC (rev 13310) @@ -46,6 +46,7 @@ "/libexec/foo-exec", struct_util.ResolveSymlink("/opt/csw/bin/foo", "/libexec/foo-exec")) + class OsReleaseToLongTest(unittest.TestCase): def testLong(self): @@ -55,5 +56,25 @@ self.assertEqual("SunOS5.9", struct_util.OsReleaseToLong("5.9")) +class MakeCatalognameByPkgnameTest(unittest.TestCase): + + def testSimple(self): + self.assertEqual("foo", struct_util.MakeCatalognameByPkgname("CSWfoo")) + + def testWithDash(self): + self.assertEqual("foo_bar", struct_util.MakeCatalognameByPkgname("CSWfoo-bar")) + + def testCollapseSeparators(self): + self.assertEqual("foo_bar", struct_util.MakeCatalognameByPkgname("CSWfoo--bar")) + + def testWithDigits(self): + # This shouldn't be a typical case. + self.assertEqual("libfoo1_1", struct_util.MakeCatalognameByPkgname("CSWlibfoo1-1")) + + def testPluses(self): + # Pluses? Plusen? Plusi? + self.assertEqual("libnetcdf_c++5", struct_util.MakeCatalognameByPkgname("CSWlibnetcdf-c++5")) + + if __name__ == '__main__': unittest.main() This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Mon Feb 14 21:30:50 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Mon, 14 Feb 2011 20:30:50 +0000 Subject: [csw-devel] SF.net SVN: gar:[13311] csw/mgar/gar/v2/lib/python/struct_util.py Message-ID: Revision: 13311 http://gar.svn.sourceforge.net/gar/?rev=13311&view=rev Author: wahwah Date: 2011-02-14 20:30:50 +0000 (Mon, 14 Feb 2011) Log Message: ----------- checkpkg: Removed an extra line. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/struct_util.py Modified: csw/mgar/gar/v2/lib/python/struct_util.py =================================================================== --- csw/mgar/gar/v2/lib/python/struct_util.py 2011-02-14 20:30:17 UTC (rev 13310) +++ csw/mgar/gar/v2/lib/python/struct_util.py 2011-02-14 20:30:50 UTC (rev 13311) @@ -1,5 +1,4 @@ -"""A module for generic data structure processing functions. -""" +"""A module for generic data structure processing functions.""" import os import re This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Mon Feb 14 21:31:43 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Mon, 14 Feb 2011 20:31:43 +0000 Subject: [csw-devel] SF.net SVN: gar:[13312] csw/mgar/gar/v2/lib/python Message-ID: Revision: 13312 http://gar.svn.sourceforge.net/gar/?rev=13312&view=rev Author: wahwah Date: 2011-02-14 20:31:43 +0000 (Mon, 14 Feb 2011) Log Message: ----------- integrate-catalogs: A new tool integrate-catalogs allows to integrate one catalog into another, e.g. unstable into testing. It generates shell commands to execute, which can be reviewed and executed. ./integrate_catalogs.py --catrel-from unstable --catrel-to testing -o script.sh vim script.sh bash script.sh To see usage information: ./integrate_catalogs.py --help Modified Paths: -------------- csw/mgar/gar/v2/lib/python/catalog.py csw/mgar/gar/v2/lib/python/catalog_test.py csw/mgar/gar/v2/lib/python/models.py csw/mgar/gar/v2/lib/python/opencsw.py csw/mgar/gar/v2/lib/python/opencsw_test.py csw/mgar/gar/v2/lib/python/rest.py Added Paths: ----------- csw/mgar/gar/v2/lib/python/integrate_catalogs.py Modified: csw/mgar/gar/v2/lib/python/catalog.py =================================================================== --- csw/mgar/gar/v2/lib/python/catalog.py 2011-02-14 20:30:50 UTC (rev 13311) +++ csw/mgar/gar/v2/lib/python/catalog.py 2011-02-14 20:31:43 UTC (rev 13312) @@ -173,7 +173,11 @@ class CatalogComparator(object): def GetCatalogDiff(self, cat_a, cat_b): - """Returns a difference between two catalogs.""" + """Returns a difference between two catalogs. + + Catalogs need to be represented either as a OpencswCatalog() object, or as + a dictionary, as returned by OpencswCatalog.GetDataByCatalogname(). + """ if type(cat_a) == dict: bc_a = cat_a else: Modified: csw/mgar/gar/v2/lib/python/catalog_test.py =================================================================== --- csw/mgar/gar/v2/lib/python/catalog_test.py 2011-02-14 20:30:50 UTC (rev 13311) +++ csw/mgar/gar/v2/lib/python/catalog_test.py 2011-02-14 20:31:43 UTC (rev 13312) @@ -25,21 +25,31 @@ '145351cf6186fdcadcd169b66387f72f 214091 ' 'CSWcommon|CSWlibevent none none\n') +# Package as returned by the catalog file parser PKG_STRUCT_1 = { + 'catalogname': 'syslog_ng', 'category': 'none', + 'deps': ( + 'CSWcommon', + 'CSWcswclassutils', + 'CSWeventlog', + 'CSWgcc4corert', + 'CSWggettextrt', + 'CSWglib2', + 'CSWosslrt', + 'CSWpcrert', + 'CSWtcpwrap', + 'CSWzlib', + ), + 'file_basename': 'syslog_ng-3.0.4,REV=2009.08.30-SunOS5.8-i386-CSW.pkg.gz', 'i_deps': (), + 'md5sum': 'cfe40c06e994f6e8d3b191396d0365cb', 'pkgname': 'CSWsyslogng', - 'md5sum': 'cfe40c06e994f6e8d3b191396d0365cb', + 'size': '137550', 'version': '3.0.4,REV=2009.08.30', - 'deps': ('CSWgcc4corert', 'CSWeventlog', 'CSWosslrt', 'CSWzlib', - 'CSWpcrert', 'CSWggettextrt', 'CSWglib2', 'CSWtcpwrap', - 'CSWcswclassutils', 'CSWcommon'), - 'file_basename': 'syslog_ng-3.0.4,REV=2009.08.30-SunOS5.8-i386-CSW.pkg.gz', - 'size': '137550', - 'catalogname': 'syslog_ng'} +} - class OpencswCatalogUnitTest(unittest.TestCase): def test_ParseCatalogLine_1(self): Added: csw/mgar/gar/v2/lib/python/integrate_catalogs.py =================================================================== --- csw/mgar/gar/v2/lib/python/integrate_catalogs.py (rev 0) +++ csw/mgar/gar/v2/lib/python/integrate_catalogs.py 2011-02-14 20:31:43 UTC (rev 13312) @@ -0,0 +1,168 @@ +#!/usr/bin/env python2.6 + +"""Allows to integrate catalogs, e.g. unstable into testing. + +The script generated shell commands that perform the catalog integration. It +does not run them, because they need to be reviewed by a human before they can +be executed. + +The script does not understand package versions. It only displays commands +necessary to bring one catalog to the state of another catalog. +""" + +from Cheetah import Template +import cPickle +import catalog +import common_constants +import logging +import opencsw +import optparse +import pprint +import rest +import sys +import urllib2 + + +CATALOG_MOD_TMPL = """#!/bin/bash +# Catalog modification (not integration yet): $catrel_from -> $catrel_to +# Generated by $prog + +set -x + +PKGDB=bin/pkgdb + +#for catalogname in $sorted($diffs_by_catalogname): +#if "new_pkgs" in $diffs_by_catalogname[$catalogname]: +#for arch, osrel, new_pkg in $diffs_by_catalogname[$catalogname]["new_pkgs"]: +# adding $new_pkg["basename"] +\${PKGDB} add-to-cat $osrel $arch $catrel_to $new_pkg["md5_sum"] +#end for +#end if +#if "removed_pkgs" in $diffs_by_catalogname[$catalogname]: +#for arch, osrel, rem_pkg in $diffs_by_catalogname[$catalogname]["removed_pkgs"]: +# removing $rem_pkg["basename"] +\${PKGDB} del-from-cat $osrel $arch $catrel_to $rem_pkg["md5_sum"] +#end for +#end if +#if "updated_pkgs" in $diffs_by_catalogname[$catalogname]: +#for arch, osrel, up_pkg_pair in $diffs_by_catalogname[$catalogname]["updated_pkgs"]: +#if $up_pkg_pair["direction"] == "downgrade": +# WARNING: DOWNGRADE +#end if +# $catalogname $up_pkg_pair["direction"] from $up_pkg_pair["from"]["version"] to $up_pkg_pair["to"]["version"] +\${PKGDB} del-from-cat $osrel $arch $catrel_to $up_pkg_pair["from"]["md5_sum"] +\${PKGDB} add-to-cat $osrel $arch $catrel_to $up_pkg_pair["to"]["md5_sum"] +#end for +#end if + +#end for +""" + + +class Error(Exception): + """Generic error.""" + +class UsageError(Error): + """Wrong usage.""" + + +def IndexByCatalogname(catalog): + return dict((x["catalogname"], x) for x in catalog) + + +def GetDiffsByCatalogname(catrel_from, catrel_to, include_downgrades): + rest_client = rest.RestClient() + diffs_by_catalogname = {} + for arch in common_constants.PHYSICAL_ARCHITECTURES: + logging.debug("Architecture: %s", arch) + for osrel in common_constants.OS_RELS: + logging.debug("OS release: %s", osrel) + cat_from = rest_client.GetCatalog(catrel_from, arch, osrel) + cat_to = rest_client.GetCatalog(catrel_to, arch, osrel) + # Should use catalog comparator, but the data format is different + if cat_from is None: + cat_from = [] + if cat_to is None: + cat_to = [] + cat_from_by_c = IndexByCatalogname(cat_from) + cat_to_by_c = IndexByCatalogname(cat_to) + comparator = catalog.CatalogComparator() + new_pkgs, removed_pkgs, updated_pkgs = comparator.GetCatalogDiff( + cat_to_by_c, cat_from_by_c) + # By passing the catalogs (as arguments) in reverse order, we get + # packages to be updated in new_pkgs, and so forth. + for pkg in new_pkgs: + catalogname_d = diffs_by_catalogname.setdefault(pkg["catalogname"], {}) + catalogname_d.setdefault("new_pkgs", []).append((arch, osrel, pkg)) + for pkg in removed_pkgs: + catalogname_d = diffs_by_catalogname.setdefault(pkg["catalogname"], {}) + catalogname_d.setdefault("removed_pkgs", []).append((arch, osrel, pkg)) + for pkg_pair in updated_pkgs: + # Upgrade or downgrade? + cmp_result = opencsw.CompareVersions( + pkg_pair["from"]["version"], + pkg_pair["to"]["version"]) + if cmp_result < 0: + direction = "upgrade" + else: + direction = "downgrade" + pkg_pair["direction"] = direction + pkg = pkg_pair["from"] + if direction == "upgrade" or include_downgrades: + catalogname_d = diffs_by_catalogname.setdefault(pkg["catalogname"], {}) + catalogname_d.setdefault("updated_pkgs", []).append((arch, osrel, pkg_pair)) + return diffs_by_catalogname + + +def main(): + parser = optparse.OptionParser() + parser.add_option("--catrel-from", + dest="catrel_from", + default="unstable", + help="Catalog release to integrate from, e.g. 'unstable'.") + parser.add_option("--catrel-to", + dest="catrel_to", + default="testing", + help="Catalog release to integrate to, e.g. 'testing'.") + parser.add_option("--from-pickle", dest="from_pickle", + help=("If specified, loads data from a pickle file instead of polling " + "the database.")) + parser.add_option("--save-pickle", dest="save_pickle", + help="If specified, saves pickled data to a file.") + parser.add_option("-o", "--output-file", dest="output_file", + help="Filename to save output to.") + parser.add_option("--no-include-downgrades", dest="include_downgrades", + default=True, action="store_false", + help="Skip package downgrades.") + options, args = parser.parse_args() + logging.basicConfig(level=logging.DEBUG) + if not options.output_file: + raise UsageError("Please specify the output file. See --help.") + catrel_from = options.catrel_from + catrel_to = options.catrel_to + if options.from_pickle: + with open("tmp.pickle", "rb") as fd: + diffs_by_catalogname = cPickle.load(fd) + else: + diffs_by_catalogname = GetDiffsByCatalogname( + catrel_from, catrel_to, options.include_downgrades) + namespace = { + "diffs_by_catalogname": diffs_by_catalogname, + "catrel_to": catrel_to, + "catrel_from": catrel_from, + "prog": sys.argv[0], + } + if options.save_pickle: + with open(options.save_pickle, "wb") as fd: + cPickle.dump(diffs_by_catalogname, fd) + t = Template.Template(CATALOG_MOD_TMPL, searchList=[namespace]) + if options.output_file: + logging.info("Saving output to %s", options.output_file) + with open(options.output_file, "wb") as fd: + fd.write(unicode(t)) + else: + sys.stdout.write(unicode(t)) + + +if __name__ == '__main__': + main() Property changes on: csw/mgar/gar/v2/lib/python/integrate_catalogs.py ___________________________________________________________________ Added: svn:executable + * Modified: csw/mgar/gar/v2/lib/python/models.py =================================================================== --- csw/mgar/gar/v2/lib/python/models.py 2011-02-14 20:30:50 UTC (rev 13311) +++ csw/mgar/gar/v2/lib/python/models.py 2011-02-14 20:31:43 UTC (rev 13312) @@ -210,19 +210,23 @@ def GetRestRepr(self): mimetype = "application/x-vnd.opencsw.pkg;type=srv4-detail" data = { + 'arch': self.arch.name, + 'basename': self.basename, + # For compatibility with the catalog parser from catalog.py + 'file_basename': self.basename, 'catalogname': self.catalogname, - 'basename': self.basename, - 'md5_sum': self.md5_sum, - 'size': self.size, + 'filename_arch': self.filename_arch.name, 'maintainer_email': self.maintainer.email, 'maintainer_full_name': self.maintainer.full_name, - 'version_string': self.version_string, - 'arch': self.arch.name, - 'pkgname': self.pkginst.pkgname, + 'md5_sum': self.md5_sum, 'mtime': unicode(self.mtime), 'osrel': self.os_rel.short_name, + 'pkgname': self.pkginst.pkgname, 'rev': self.rev, - 'filename_arch': self.filename_arch.name, + 'size': self.size, + 'version_string': self.version_string, + # For compatibility with the catalog parser from catalog.py + 'version': self.version_string, # 'in_catalogs': unicode([unicode(x) for x in self.in_catalogs]), } return mimetype, data Modified: csw/mgar/gar/v2/lib/python/opencsw.py =================================================================== --- csw/mgar/gar/v2/lib/python/opencsw.py 2011-02-14 20:30:50 UTC (rev 13311) +++ csw/mgar/gar/v2/lib/python/opencsw.py 2011-02-14 20:31:43 UTC (rev 13312) @@ -165,6 +165,40 @@ return version_str, version_info, revision_info +def ParseRevisionInfo(revinfo): + if "REV" in revinfo: + rev = revinfo["REV"] + m = re.match(r"(\d+)\.(\d+)\.(\d+)", rev) + if m: + return tuple([int(x) for x in m.groups()]) + else: + return () + else: + return () + + +def CompareVersions(v1, v2): + """Compares two package versions represented as strings. + + This function should eventually converge with what pkgutil is doing. + """ + # ('1.8.1', {'minor version': '8', 'patchlevel': '1', 'major version': '1'}, + # {'REV': '2010.07.13'}) + logging.debug("CompareVersions(%s, %s)", repr(v1), repr(v2)) + bv1, sv1, ri1 = ParseVersionString(v1) + bv2, sv2, ri2 = ParseVersionString(v2) + vn1 = tuple([int(x) for x in re.findall(r"\d+", bv1)]) + vn2 = tuple([int(x) for x in re.findall(r"\d+", bv2)]) + pr1, pr2 = (), () + if "REV" in ri1: + pr1 = ParseRevisionInfo(ri1) + if "REV" in ri2: + pr2 = ParseRevisionInfo(ri2) + key1 = pr1 + vn1 + key2 = pr2 + vn2 + return cmp(key1, key2) + + class CatalogBasedOpencswPackage(object): catalog_downloaded = False Modified: csw/mgar/gar/v2/lib/python/opencsw_test.py =================================================================== --- csw/mgar/gar/v2/lib/python/opencsw_test.py 2011-02-14 20:30:50 UTC (rev 13311) +++ csw/mgar/gar/v2/lib/python/opencsw_test.py 2011-02-14 20:31:43 UTC (rev 13312) @@ -225,6 +225,44 @@ self.assertEqual(expected, opencsw.ParseVersionString(data)) +class CompareVersionsTest(unittest.TestCase): + + V1 = "1.8.1,REV=2010.07.13" + V2 = "1.8.2,REV=2011.01.17" + + def testLessThan(self): + self.assertEqual(-1, opencsw.CompareVersions(self.V1, self.V2)) + + def testGreaterThan(self): + self.assertEqual(1, opencsw.CompareVersions(self.V2, self.V1)) + + def testEquals(self): + self.assertEqual(0, opencsw.CompareVersions(self.V1, self.V1)) + + def testRevNoRev(self): + self.assertEqual(-1, opencsw.CompareVersions("1.8.1", self.V1)) + + def testRevNoRevIgnoreVersion(self): + self.assertEqual(-1, opencsw.CompareVersions("1.8.2", self.V1)) + + def testNoRev(self): + self.assertEqual(-1, opencsw.CompareVersions("1.8.1", "1.8.2")) + + def testNoRevLetter(self): + self.assertEqual(-1, opencsw.CompareVersions("1.8.1", "1.8.1b")) + + def testNoEqual(self): + self.assertEqual(0, opencsw.CompareVersions("1.8.1", "1.8.1")) + + def testParseRevisionInfo(self): + r1 = {"REV": "2010.07.13"} + self.assertEqual((2010, 07, 13), opencsw.ParseRevisionInfo(r1)) + + def testParseRevisionInfoEmpty(self): + r1 = {} + self.assertEqual((), opencsw.ParseRevisionInfo(r1)) + + class UpgradeTypeTest(unittest.TestCase): def testUpgradeType_1(self): Modified: csw/mgar/gar/v2/lib/python/rest.py =================================================================== --- csw/mgar/gar/v2/lib/python/rest.py 2011-02-14 20:30:50 UTC (rev 13311) +++ csw/mgar/gar/v2/lib/python/rest.py 2011-02-14 20:31:43 UTC (rev 13312) @@ -6,6 +6,15 @@ BASE_URL = "http://buildfarm.opencsw.org/pkgdb/rest" + +class Error(Exception): + """Generic error.""" + + +class ArgumentError(Error): + """Wrong arguments passed.""" + + class RestClient(object): def GetPkgByMd5(self, md5_sum): @@ -27,10 +36,16 @@ } def GetCatalog(self, catrel, arch, osrel): + if not catrel: + raise ArgumentError("Missing catalog release.") url = BASE_URL + "/catalogs/%s/%s/%s/" % (catrel, arch, osrel) logging.debug("GetCatalog(): GET %s", url) - data = urllib2.urlopen(url).read() - return json.loads(data) + try: + data = urllib2.urlopen(url).read() + return json.loads(data) + except urllib2.HTTPError, e: + logging.warning(e) + return None def Srv4ByCatalogAndCatalogname(self, catrel, arch, osrel, catalogname): """Returns a srv4 data structure or None if not found.""" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Mon Feb 14 21:48:39 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Mon, 14 Feb 2011 20:48:39 +0000 Subject: [csw-devel] SF.net SVN: gar:[13313] csw/mgar/gar/v2/lib/python/csw_upload_pkg.py Message-ID: Revision: 13313 http://gar.svn.sourceforge.net/gar/?rev=13313&view=rev Author: wahwah Date: 2011-02-14 20:48:38 +0000 (Mon, 14 Feb 2011) Log Message: ----------- csw-upload-pkg: Add an error message When a user tries to upload a package which was never seen by the database, display a helpful error message. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/csw_upload_pkg.py Modified: csw/mgar/gar/v2/lib/python/csw_upload_pkg.py =================================================================== --- csw/mgar/gar/v2/lib/python/csw_upload_pkg.py 2011-02-14 20:31:43 UTC (rev 13312) +++ csw/mgar/gar/v2/lib/python/csw_upload_pkg.py 2011-02-14 20:48:38 UTC (rev 13313) @@ -184,6 +184,12 @@ file_in_allpkgs, file_metadata = self._GetSrv4FileMetadata(md5_sum) logging.debug("file_metadata %s", repr(file_metadata)) if not file_metadata: + logging.error( + "File metadata was not found in the database. " + "This happens when the package you're trying to upload was never " + "unpacked and imported into the database. " + "To fix the problem, run checkpkg against your package and try " + "importing again.") raise DataError("file_metadata is empty: %s" % repr(file_metadata)) osrel = file_metadata['osrel'] arch = file_metadata['arch'] This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From rthurner at users.sourceforge.net Tue Feb 15 02:00:54 2011 From: rthurner at users.sourceforge.net (rthurner at users.sourceforge.net) Date: Tue, 15 Feb 2011 01:00:54 +0000 Subject: [csw-devel] SF.net SVN: gar:[13314] csw/mgar/pkg/mercurial/trunk Message-ID: Revision: 13314 http://gar.svn.sourceforge.net/gar/?rev=13314&view=rev Author: rthurner Date: 2011-02-15 01:00:54 +0000 (Tue, 15 Feb 2011) Log Message: ----------- mercurial: upgrade to hg-1.7.5 Modified Paths: -------------- csw/mgar/pkg/mercurial/trunk/Makefile csw/mgar/pkg/mercurial/trunk/checksums Modified: csw/mgar/pkg/mercurial/trunk/Makefile =================================================================== --- csw/mgar/pkg/mercurial/trunk/Makefile 2011-02-14 20:48:38 UTC (rev 13313) +++ csw/mgar/pkg/mercurial/trunk/Makefile 2011-02-15 01:00:54 UTC (rev 13314) @@ -1,5 +1,5 @@ NAME = mercurial -VERSION = 1.7.3 +VERSION = 1.7.5 CATEGORIES = python DESCRIPTION = Fast, lightweight Source Control Management system Modified: csw/mgar/pkg/mercurial/trunk/checksums =================================================================== --- csw/mgar/pkg/mercurial/trunk/checksums 2011-02-14 20:48:38 UTC (rev 13313) +++ csw/mgar/pkg/mercurial/trunk/checksums 2011-02-15 01:00:54 UTC (rev 13314) @@ -1 +1 @@ -1d635ad307fa20a5e9c6afba6145a73b mercurial-1.7.3.tar.gz +269e924b3770535cf72049db01c35afa mercurial-1.7.5.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From rthurner at users.sourceforge.net Tue Feb 15 02:24:14 2011 From: rthurner at users.sourceforge.net (rthurner at users.sourceforge.net) Date: Tue, 15 Feb 2011 01:24:14 +0000 Subject: [csw-devel] SF.net SVN: gar:[13315] csw/mgar/pkg/php5/trunk Message-ID: Revision: 13315 http://gar.svn.sourceforge.net/gar/?rev=13315&view=rev Author: rthurner Date: 2011-02-15 01:24:14 +0000 (Tue, 15 Feb 2011) Log Message: ----------- php5: upgrade to php-5.3.5 Modified Paths: -------------- csw/mgar/pkg/php5/trunk/Makefile csw/mgar/pkg/php5/trunk/checksums Modified: csw/mgar/pkg/php5/trunk/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/Makefile 2011-02-15 01:00:54 UTC (rev 13314) +++ csw/mgar/pkg/php5/trunk/Makefile 2011-02-15 01:24:14 UTC (rev 13315) @@ -5,7 +5,7 @@ # Details documented below. # NAME = php5 -VERSION = 5.3.3 +VERSION = 5.3.5 CATEGORIES = lang SF_PROJ = $(shell echo $(NAME) | sed -e 's/[0-9]//g') DISTNAME = $(SF_PROJ)-$(VERSION) Modified: csw/mgar/pkg/php5/trunk/checksums =================================================================== --- csw/mgar/pkg/php5/trunk/checksums 2011-02-15 01:00:54 UTC (rev 13314) +++ csw/mgar/pkg/php5/trunk/checksums 2011-02-15 01:24:14 UTC (rev 13315) @@ -1 +1 @@ -21ceeeb232813c10283a5ca1b4c87b48 php-5.3.3.tar.bz2 +8aaf20c95e91f25c5b6a591e5d6d61b9 php-5.3.5.tar.bz2 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Tue Feb 15 02:56:32 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Tue, 15 Feb 2011 01:56:32 +0000 Subject: [csw-devel] SF.net SVN: gar:[13316] csw/mgar/gar/v2/gar.pkg.mk Message-ID: Revision: 13316 http://gar.svn.sourceforge.net/gar/?rev=13316&view=rev Author: bdwalton Date: 2011-02-15 01:56:32 +0000 (Tue, 15 Feb 2011) Log Message: ----------- gar/v2: complete the integration of cas cswcptemplates Modified Paths: -------------- csw/mgar/gar/v2/gar.pkg.mk Modified: csw/mgar/gar/v2/gar.pkg.mk =================================================================== --- csw/mgar/gar/v2/gar.pkg.mk 2011-02-15 01:24:14 UTC (rev 13315) +++ csw/mgar/gar/v2/gar.pkg.mk 2011-02-15 01:56:32 UTC (rev 13316) @@ -202,7 +202,6 @@ # - set class for all config files _CSWCLASS_FILTER = | perl -ane '\ - $(foreach FILE,$(CPTEMPLATES),$$F[1] = "cswcptemplates" if( $$F[2] =~ m(^$(FILE)$$) );)\ $(foreach FILE,$(MIGRATECONF),$$F[1] = "cswmigrateconf" if( $$F[2] =~ m(^$(FILE)$$) );)\ $(foreach FILE,$(SAMPLECONF:%\.CSW=%),$$F[1] = "cswcpsampleconf" if ( $$F[2] =~ m(^$(FILE)\.CSW$$) );)\ $(foreach FILE,$(PRESERVECONF:%\.CSW=%),$$F[1] = "cswpreserveconf" if( $$F[2] =~ m(^$(FILE)\.CSW$$) );)\ @@ -214,6 +213,7 @@ $(if $(PYCOMPILE),$(foreach FILE,$(_PYCOMPILE_FILES),$$F[1] = "cswpycompile" if( $$F[2] =~ m(^$(FILE)$$) );))\ $(foreach FILE,$(TEXINFO),$$F[1] = "cswtexinfo" if( $$F[2] =~ m(^$(FILE)$$) );)\ $(if $(AP2_MODS), at F = ("e", "build", $$F[2], "?", "?", "?") if ($$F[2] =~ m(^/opt/csw/apache2/ap2mod/.*));) \ + $$F[1] = "cswcptemplates" if( $$F[2] =~ m(^/opt/csw/etc/templates/.+$$) and $$F[0] eq "f" ); \ print join(" ", at F),"\n";' # If you add another filter above, also add the class to this list. It is used @@ -225,7 +225,7 @@ # you need to ensure any binaries and config files are already on disk # and able to be consumed by a service that might be started. -_CSWCLASSES = cswmigrateconf cswcpsampleconf cswpreserveconf +_CSWCLASSES = cswmigrateconf cswcpsampleconf cswpreserveconf cswcptemplates _CSWCLASSES += cswetcservices _CSWCLASSES += cswusergroup ugfiles _CSWCLASSES += cswcrontab This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Tue Feb 15 09:22:57 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Tue, 15 Feb 2011 08:22:57 +0000 Subject: [csw-devel] SF.net SVN: gar:[13317] csw/mgar/gar/v2/lib/python Message-ID: Revision: 13317 http://gar.svn.sourceforge.net/gar/?rev=13317&view=rev Author: wahwah Date: 2011-02-15 08:22:56 +0000 (Tue, 15 Feb 2011) Log Message: ----------- checkpkg: Bugfix for shared libraries checking Two issues: 1. Some shared libraries aren't public (a.k.a. linkable) 2. Some shared libraries don't have defined sonames Adding mercurial package stats, which triggered the bug. Thanks go to Rupert for reporting the issue. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/package_checks.py csw/mgar/gar/v2/lib/python/package_checks_test.py Added Paths: ----------- csw/mgar/gar/v2/lib/python/testdata/mercurial_stats.py Modified: csw/mgar/gar/v2/lib/python/package_checks.py =================================================================== --- csw/mgar/gar/v2/lib/python/package_checks.py 2011-02-15 01:56:32 UTC (rev 13316) +++ csw/mgar/gar/v2/lib/python/package_checks.py 2011-02-15 08:22:56 UTC (rev 13317) @@ -1225,9 +1225,17 @@ def CheckSonameMustNotBeEqualToFileNameIfFilenameEndsWithSo( pkg_data, error_mgr, logger, messenger): + shared_libs = set(su.GetSharedLibs(pkg_data)) for binary_info in pkg_data["binaries_dump_info"]: - soname = binary_info["soname"] + if binary_info["path"] not in shared_libs: + continue + if not su.IsLibraryLinkable(binary_info["path"]): + continue base_name = binary_info["base_name"] + if "soname" in binary_info: + soname = binary_info["soname"] + else: + soname = base_name if (base_name.endswith(".so") and soname == base_name): msg = ("File /%s is a shared library. Its SONAME is equal to its " Modified: csw/mgar/gar/v2/lib/python/package_checks_test.py =================================================================== --- csw/mgar/gar/v2/lib/python/package_checks_test.py 2011-02-15 01:56:32 UTC (rev 13316) +++ csw/mgar/gar/v2/lib/python/package_checks_test.py 2011-02-15 08:22:56 UTC (rev 13317) @@ -24,6 +24,7 @@ from testdata.javasvn_stats import pkgstats as javasvn_stats from testdata.neon_stats import pkgstats as neon_stats from testdata.bdb48_stats import pkgstat_objs as bdb48_stats +from testdata.mercurial_stats import pkgstat_objs as mercurial_stats from testdata import stubs DEFAULT_PKG_STATS = None @@ -1643,8 +1644,8 @@ 'bad-location-of-file', 'file=/var/foo') - # These three utility functions allow to run 3 tests in a single - # class. + # These three utility functions allow to run 3 tests in a single + # class. def testTwo(self): self.RunCheckpkgTest(self.CheckpkgTest2) @@ -1655,16 +1656,24 @@ self.RunCheckpkgTest(self.CheckpkgTest4) -class TestCheckPrefixDirs(CheckpkgUnitTestHelper, - unittest.TestCase): +class TestCheckSonameMustNotBeEqualToFileNameIfFilenameEndsWithSo( + CheckpkgUnitTestHelper, unittest.TestCase): FUNCTION_NAME = ('CheckSonameMustNotBeEqualToFileName' 'IfFilenameEndsWithSo') + FOO_METADATA = { + 'endian': 'Little endian', + 'machine_id': 3, + 'mime_type': 'application/x-sharedlib; charset=binary', + 'mime_type_by_hachoir': u'application/x-executable', + 'path': 'opt/csw/lib/libfoo.so', + } def CheckpkgTest(self): self.pkg_data = copy.deepcopy(neon_stats[0]) self.pkg_data["binaries_dump_info"][0]["soname"] = "libfoo.so" self.pkg_data["binaries_dump_info"][0]["base_name"] = "libfoo.so" self.pkg_data["binaries_dump_info"][0]["path"] = "opt/csw/lib/libfoo.so" + self.pkg_data["files_metadata"].append(self.FOO_METADATA) self.error_mgr_mock.ReportError( 'soname-equals-filename', 'file=/opt/csw/lib/libfoo.so') @@ -1673,10 +1682,17 @@ self.pkg_data = copy.deepcopy(neon_stats[0]) self.pkg_data["binaries_dump_info"][0]["soname"] = "libfoo.so.1" self.pkg_data["binaries_dump_info"][0]["base_name"] = "libfoo.so.1" + self.pkg_data["files_metadata"].append(self.FOO_METADATA) def testTwo(self): self.RunCheckpkgTest(self.CheckpkgTest2) + def testThree(self): + self.RunCheckpkgTest(self.CheckpkgTest3) + def CheckpkgTest3(self): + self.pkg_data = mercurial_stats[0] + + if __name__ == '__main__': unittest.main() Added: csw/mgar/gar/v2/lib/python/testdata/mercurial_stats.py =================================================================== --- csw/mgar/gar/v2/lib/python/testdata/mercurial_stats.py (rev 0) +++ csw/mgar/gar/v2/lib/python/testdata/mercurial_stats.py 2011-02-15 08:22:56 UTC (rev 13317) @@ -0,0 +1,3503 @@ +import datetime +pkgstat_objs = [{'bad_paths': {}, + 'basic_stats': {'catalogname': 'mercurial', + 'md5_sum': '0783020e5628f432b92d1f97903fd15e', + 'parsed_basename': {'arch': 'sparc', + 'catalogname': 'mercurial', + 'full_version_string': '1.7.3,REV=2011.02.15', + 'osrel': 'SunOS5.9', + 'revision_info': {'REV': '2011.02.15'}, + 'vendortag': 'CSW', + 'version': '1.7.3', + 'version_info': {'major version': '1', + 'minor version': '7', + 'patchlevel': '3'}}, + 'pkg_basename': 'mercurial-1.7.3,REV=2011.02.15-SunOS5.9-sparc-CSW.pkg.gz', + 'pkg_path': '/tmp/pkg_f8FoY9/mercurial-1.7.3,REV=2011.02.15-SunOS5.9-sparc-CSW.pkg.gz', + 'pkgname': 'CSWmercurial', + 'size': 1326062L, + 'stats_version': 10L}, + 'binaries': ['opt/csw/lib/python/site-packages/mercurial/base85.so', + 'opt/csw/lib/python/site-packages/mercurial/bdiff.so', + 'opt/csw/lib/python/site-packages/mercurial/diffhelpers.so', + 'opt/csw/lib/python/site-packages/mercurial/mpatch.so', + 'opt/csw/lib/python/site-packages/mercurial/osutil.so', + 'opt/csw/lib/python/site-packages/mercurial/parsers.so'], + 'binaries_dump_info': [{'RPATH set': True, + 'RUNPATH RPATH the same': True, + 'RUNPATH set': True, + 'base_name': 'base85.so', + 'needed sonames': ('libpython2.6.so.1.0',), + 'path': 'opt/csw/lib/python/site-packages/mercurial/base85.so', + 'runpath': ('/opt/csw/lib/$ISALIST', + '/opt/csw/lib')}, + {'RPATH set': True, + 'RUNPATH RPATH the same': True, + 'RUNPATH set': True, + 'base_name': 'bdiff.so', + 'needed sonames': ('libpython2.6.so.1.0',), + 'path': 'opt/csw/lib/python/site-packages/mercurial/bdiff.so', + 'runpath': ('/opt/csw/lib/$ISALIST', + '/opt/csw/lib')}, + {'RPATH set': True, + 'RUNPATH RPATH the same': True, + 'RUNPATH set': True, + 'base_name': 'diffhelpers.so', + 'needed sonames': ('libpython2.6.so.1.0',), + 'path': 'opt/csw/lib/python/site-packages/mercurial/diffhelpers.so', + 'runpath': ('/opt/csw/lib/$ISALIST', + '/opt/csw/lib')}, + {'RPATH set': True, + 'RUNPATH RPATH the same': True, + 'RUNPATH set': True, + 'base_name': 'mpatch.so', + 'needed sonames': ('libpython2.6.so.1.0',), + 'path': 'opt/csw/lib/python/site-packages/mercurial/mpatch.so', + 'runpath': ('/opt/csw/lib/$ISALIST', + '/opt/csw/lib')}, + {'RPATH set': True, + 'RUNPATH RPATH the same': True, + 'RUNPATH set': True, + 'base_name': 'osutil.so', + 'needed sonames': ('libpython2.6.so.1.0',), + 'path': 'opt/csw/lib/python/site-packages/mercurial/osutil.so', + 'runpath': ('/opt/csw/lib/$ISALIST', + '/opt/csw/lib')}, + {'RPATH set': True, + 'RUNPATH RPATH the same': True, + 'RUNPATH set': True, + 'base_name': 'parsers.so', + 'needed sonames': ('libpython2.6.so.1.0',), + 'path': 'opt/csw/lib/python/site-packages/mercurial/parsers.so', + 'runpath': ('/opt/csw/lib/$ISALIST', + '/opt/csw/lib')}], + 'depends': [('CSWcas-pycompile', + 'CSWcas-pycompile cas_pycompile - Class action script pycompile '), + ('CSWcommon', + 'CSWcommon common - common files and dirs for CSW packages '), + ('CSWpython', + 'CSWpython python - A high-level scripting language. '), + ('CSWlibpython2-6-1-0', + 'CSWlibpython2-6-1-0 libpython2_6_1_0 - Python shared library (2.6) ')], + 'files_metadata': [{'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial-1.7.3-py2.6.egg-info'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/error.py'}, + {'endian': 'Big endian', + 'machine_id': 2, + 'mime_type': 'application/x-sharedlib; charset=binary', + 'mime_type_by_hachoir': u'application/x-executable', + 'path': 'opt/csw/lib/python/site-packages/mercurial/bdiff.so'}, + {'mime_type': 'text/x-c++; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templatefilters.py'}, + {'mime_type': 'text/x-c++; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/manifest.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/fancyopts.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/pushkey.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/copies.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/mail.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/similar.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/encoding.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/minirst.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/win32.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/mdiff.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/py3kcompat.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/util.py'}, + {'endian': 'Big endian', + 'machine_id': 2, + 'mime_type': 'application/x-sharedlib; charset=binary', + 'mime_type_by_hachoir': u'application/x-executable', + 'path': 'opt/csw/lib/python/site-packages/mercurial/parsers.so'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/hg.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/changegroup.py'}, + {'mime_type': 'text/x-c++; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/filelog.py'}, + {'endian': 'Big endian', + 'machine_id': 2, + 'mime_type': 'application/x-sharedlib; charset=binary', + 'mime_type_by_hachoir': u'application/x-executable', + 'path': 'opt/csw/lib/python/site-packages/mercurial/mpatch.so'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/subrepo.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/patch.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/repair.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/dispatch.py'}, + {'mime_type': 'text/x-c++; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/sshrepo.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/hook.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/windows.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/archival.py'}, + {'endian': 'Big endian', + 'machine_id': 2, + 'mime_type': 'application/x-sharedlib; charset=binary', + 'mime_type_by_hachoir': u'application/x-executable', + 'path': 'opt/csw/lib/python/site-packages/mercurial/diffhelpers.so'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/cmdutil.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/dagparser.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/commands.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/url.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/store.py'}, + {'mime_type': 'text/x-c++; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templater.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/posix.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/keepalive.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/context.py'}, + {'mime_type': 'text/x-c++; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/bundlerepo.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/lock.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/__version__.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/extensions.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/repo.py'}, + {'mime_type': 'text/x-c++; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/localrepo.py'}, + {'endian': 'Big endian', + 'machine_id': 2, + 'mime_type': 'application/x-sharedlib; charset=binary', + 'mime_type_by_hachoir': u'application/x-executable', + 'path': 'opt/csw/lib/python/site-packages/mercurial/base85.so'}, + {'mime_type': 'text/x-c++; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/changelog.py'}, + {'mime_type': 'text/x-c++; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templatekw.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/ancestor.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/filemerge.py'}, + {'endian': 'Big endian', + 'machine_id': 2, + 'mime_type': 'application/x-sharedlib; charset=binary', + 'mime_type_by_hachoir': u'application/x-executable', + 'path': 'opt/csw/lib/python/site-packages/mercurial/osutil.so'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/graphmod.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/node.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/byterange.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/sshserver.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/hbisect.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/match.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/merge.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/httprepo.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/parser.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/discovery.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/revlog.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/strutil.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/verify.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/demandimport.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/help.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/wireproto.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/config.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/tags.py'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/lsprof.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/ui.py'}, + {'mime_type': 'text/x-pascal; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/simplemerge.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/i18n.py'}, + {'mime_type': 'text/x-c++; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/statichttprepo.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/dirstate.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/lsprofcalltree.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/revset.py'}, + {'mime_type': 'text/x-pascal; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/transaction.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/ignore.py'}, + {'mime_type': 'application/x-empty; charset=binary', + 'path': 'opt/csw/lib/python/site-packages/mercurial/__init__.py'}, + {'mime_type': 'application/octet-stream; charset=binary', + 'path': 'opt/csw/lib/python/site-packages/mercurial/locale/zh_CN/LC_MESSAGES/hg.mo'}, + {'mime_type': 'application/octet-stream; charset=binary', + 'path': 'opt/csw/lib/python/site-packages/mercurial/locale/zh_TW/LC_MESSAGES/hg.mo'}, + {'mime_type': 'application/octet-stream; charset=binary', + 'path': 'opt/csw/lib/python/site-packages/mercurial/locale/fr/LC_MESSAGES/hg.mo'}, + {'mime_type': 'application/octet-stream; charset=binary', + 'path': 'opt/csw/lib/python/site-packages/mercurial/locale/it/LC_MESSAGES/hg.mo'}, + {'mime_type': 'application/octet-stream; charset=binary', + 'path': 'opt/csw/lib/python/site-packages/mercurial/locale/ro/LC_MESSAGES/hg.mo'}, + {'mime_type': 'application/octet-stream; charset=binary', + 'path': 'opt/csw/lib/python/site-packages/mercurial/locale/pt_BR/LC_MESSAGES/hg.mo'}, + {'mime_type': 'application/octet-stream; charset=binary', + 'path': 'opt/csw/lib/python/site-packages/mercurial/locale/da/LC_MESSAGES/hg.mo'}, + {'mime_type': 'application/octet-stream; charset=binary', + 'path': 'opt/csw/lib/python/site-packages/mercurial/locale/el/LC_MESSAGES/hg.mo'}, + {'mime_type': 'application/octet-stream; charset=binary', + 'path': 'opt/csw/lib/python/site-packages/mercurial/locale/ja/LC_MESSAGES/hg.mo'}, + {'mime_type': 'application/octet-stream; charset=binary', + 'path': 'opt/csw/lib/python/site-packages/mercurial/locale/de/LC_MESSAGES/hg.mo'}, + {'mime_type': 'application/octet-stream; charset=binary', + 'path': 'opt/csw/lib/python/site-packages/mercurial/locale/sv/LC_MESSAGES/hg.mo'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/help/urls.txt'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/help/hgweb.txt'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/help/diffs.txt'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/help/subrepos.txt'}, + {'mime_type': 'text/x-c++; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/help/templates.txt'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/help/revisions.txt'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/help/extensions.txt'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/help/environment.txt'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/help/revsets.txt'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/help/merge-tools.txt'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/help/glossary.txt'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/help/config.txt'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/help/multirevs.txt'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/help/patterns.txt'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/help/dates.txt'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/hgweb/__init__.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/hgweb/common.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/hgweb/webcommands.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/hgweb/wsgicgi.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/hgweb/request.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/hgweb/webutil.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/hgweb/hgweb_mod.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/hgweb/server.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/hgweb/hgwebdir_mod.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/hgweb/protocol.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/map-cmdline.xml'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/map-cmdline.default'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/map-cmdline.changelog'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/template-vars.txt'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/map-cmdline.compact'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/rss/filelog.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/rss/changelog.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/rss/changelogentry.tmpl'}, + {'mime_type': 'application/xml; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/rss/header.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/rss/tagentry.tmpl'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/rss/map'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/rss/tags.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/rss/error.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/rss/filelogentry.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/coal/header.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/coal/map'}, + {'mime_type': 'application/xml; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/atom/header.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/atom/tagentry.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/atom/filelog.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/atom/changelogentry.tmpl'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/atom/map'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/atom/tags.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/atom/error.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/atom/changelog.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/paper/graph.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/paper/search.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/paper/manifest.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/paper/helptopics.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/paper/fileannotate.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/paper/shortlog.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/paper/filelog.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/paper/filelogentry.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/paper/filerevision.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/paper/notfound.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/paper/header.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/paper/branches.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/paper/index.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/paper/filediff.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/paper/shortlogentry.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/paper/error.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/paper/tags.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/paper/help.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/paper/map'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/paper/footer.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/paper/changeset.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/spartan/footer.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/spartan/changelog.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/spartan/branches.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/spartan/filediff.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/spartan/shortlogentry.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/spartan/tags.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/spartan/map'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/spartan/error.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/spartan/index.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/spartan/header.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/spartan/manifest.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/spartan/filelogentry.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/spartan/filerevision.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/spartan/shortlog.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/spartan/changeset.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/spartan/graph.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/spartan/filelog.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/spartan/changelogentry.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/spartan/notfound.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/spartan/search.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/spartan/fileannotate.tmpl'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/static/excanvas.js'}, + {'mime_type': 'image/png; charset=binary', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/static/hglogo.png'}, + {'mime_type': 'image/png; charset=binary', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/static/coal-file.png'}, + {'mime_type': 'image/png; charset=binary', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/static/background.png'}, + {'mime_type': 'text/x-c; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/static/style-monoblue.css'}, + {'mime_type': 'text/x-c; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/static/style-gitweb.css'}, + {'mime_type': 'text/x-c; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/static/style.css'}, + {'mime_type': 'image/png; charset=binary', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/static/coal-folder.png'}, + {'mime_type': 'text/x-c; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/static/style-coal.css'}, + {'mime_type': 'text/x-c++; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/static/graph.js'}, + {'mime_type': 'text/x-c; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/static/style-paper.css'}, + {'mime_type': 'image/png; charset=binary', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/static/hgicon.png'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/gitweb/filediff.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/gitweb/helptopics.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/gitweb/branches.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/gitweb/search.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/gitweb/fileannotate.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/gitweb/header.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/gitweb/changelog.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/gitweb/filerevision.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/gitweb/index.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/gitweb/error.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/gitweb/shortlog.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/gitweb/changelogentry.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/gitweb/summary.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/gitweb/help.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/gitweb/tags.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/gitweb/manifest.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/gitweb/filelog.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/gitweb/graph.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/gitweb/notfound.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/gitweb/footer.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/gitweb/map'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/gitweb/changeset.tmpl'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/raw/changeset.tmpl'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/raw/filediff.tmpl'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/raw/map'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/raw/notfound.tmpl'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/raw/index.tmpl'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/raw/error.tmpl'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/raw/fileannotate.tmpl'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/raw/manifest.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/monoblue/fileannotate.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/monoblue/manifest.tmpl'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/monoblue/changelogentry.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/monoblue/index.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/monoblue/error.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/monoblue/changeset.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/monoblue/shortlog.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/monoblue/filerevision.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/monoblue/footer.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/monoblue/notfound.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/monoblue/search.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/monoblue/changelog.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/monoblue/branches.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/monoblue/tags.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/monoblue/help.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/monoblue/graph.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/monoblue/filediff.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/monoblue/filelog.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/monoblue/map'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/monoblue/helptopics.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/monoblue/summary.tmpl'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/mercurial/templates/monoblue/header.tmpl'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/transplant.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/patchbomb.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/keyword.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/rebase.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/eol.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/notify.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/win32text.py'}, + {'mime_type': 'text/x-pascal; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/extdiff.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/schemes.py'}, + {'mime_type': 'text/x-pascal; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/purge.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/bugzilla.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/parentrevspec.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/hgk.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/__init__.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/mq.py'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/interhg.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/acl.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/children.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/graphlog.py'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/record.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/relink.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/bookmarks.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/color.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/fetch.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/gpg.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/pager.py'}, + {'mime_type': 'text/x-c++; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/churn.py'}, + {'mime_type': 'text/x-pascal; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/progress.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/hgcia.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/share.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/win32mbcs.py'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/highlight/__init__.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/highlight/highlight.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/convert/transport.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/convert/monotone.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/convert/darcs.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/convert/bzr.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/convert/filemap.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/convert/git.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/convert/gnuarch.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/convert/common.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/convert/hg.py'}, + {'mime_type': 'text/x-java; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/convert/subversion.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/convert/p4.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/convert/convcmd.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/convert/cvs.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/convert/__init__.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/convert/cvsps.py'}, + {'mime_type': 'text/html; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/zeroconf/Zeroconf.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/lib/python/site-packages/hgext/zeroconf/__init__.py'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/bin/hg'}, + {'mime_type': 'text/plain; charset=us-ascii', + 'path': 'opt/csw/share/doc/mercurial/license'}], + 'isalist': frozenset(['sparc', + 'sparcv7', + 'sparcv8', + 'sparcv8-fsmuld', + 'sparcv8plus', + 'sparcv8plus+vis', + 'sparcv8plus+vis2', + 'sparcv9', + 'sparcv9+vis', + 'sparcv9+vis2']), + 'mtime': datetime.datetime(2011, 2, 15, 7, 46, 49), + 'overrides': [{'pkgname': 'CSWmercurial', + 'tag_info': None, + 'tag_name': 'pkgname-does-not-start-with-CSWpy-'}, + {'pkgname': 'CSWmercurial', + 'tag_info': None, + 'tag_name': 'catalogname-does-not-start-with-py_'}], + 'pkgchk': {'return_code': 0, + 'stderr_lines': ['rm: Cannot remove any directory in the path of the current working directory', + '/var/tmp/aaaQjaGcU/CSWmercurial'], + 'stdout_lines': ['Checking uninstalled stream format package from ', + '## Checking control scripts.', + '## Checking package objects.', + '## Checking is complete.']}, + 'pkginfo': {'ARCH': 'sparc', + 'CATEGORY': 'application', + 'CLASSES': 'none cswpycompile', + 'EMAIL': 'maciej at opencsw.org', + 'HOTLINE': 'http://www.opencsw.org/bugtrack/', + 'NAME': 'mercurial - Mercurial', + 'OPENCSW_BUNDLE': 'mercurial', + 'OPENCSW_CATALOGNAME': 'mercurial', + 'OPENCSW_MODE64': '32', + 'OPENCSW_REPOSITORY': 'https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/pkg/mercurial/trunk at 13242', + 'PKG': 'CSWmercurial', + 'PSTAMP': 'maciej at current9s-20110215084642', + 'VENDOR': 'http://selenic.com/mercurial/release/ packaged for CSW by Maciej Blizinski', + 'VERSION': '1.7.3,REV=2011.02.15', + 'WORKDIR_FIRSTMOD': '../build-isa-sparcv8'}, + 'pkgmap': [{'class': None, + 'group': None, + 'line': ': 1 0', + 'mode': None, + 'path': None, + 'target': None, + 'type': '1', + 'user': None}, + {'class': None, + 'group': None, + 'line': '1 i checkpkg_override 99 9314 1297755995', + 'mode': None, + 'path': None, + 'target': None, + 'type': 'i', + 'user': None}, + {'class': None, + 'group': None, + 'line': '1 i copyright 73 6889 1297755995', + 'mode': None, + 'path': None, + 'target': None, + 'type': 'i', + 'user': None}, + {'class': None, + 'group': None, + 'line': '1 i depend 248 21915 1297756001', + 'mode': None, + 'path': None, + 'target': None, + 'type': 'i', + 'user': None}, + {'class': None, + 'group': None, + 'line': '1 i pkginfo 527 44735 1297756008', + 'mode': None, + 'path': None, + 'target': None, + 'type': 'i', + 'user': None}, + {'class': 'none', + 'group': 'bin', + 'line': '1 f none /opt/csw/bin/hg 0755 root bin 1077 23870 1297755991', + 'mode': '0755', + 'path': '/opt/csw/bin/hg', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'none', + 'group': 'bin', + 'line': '1 d none /opt/csw/lib/python 0755 root bin', + 'mode': '0755', + 'path': '/opt/csw/lib/python', + 'target': None, + 'type': 'd', + 'user': 'root'}, + {'class': 'none', + 'group': 'bin', + 'line': '1 d none /opt/csw/lib/python/site-packages 0755 root bin', + 'mode': '0755', + 'path': '/opt/csw/lib/python/site-packages', + 'target': None, + 'type': 'd', + 'user': 'root'}, + {'class': 'none', + 'group': 'bin', + 'line': '1 d none /opt/csw/lib/python/site-packages/hgext 0755 root bin', + 'mode': '0755', + 'path': '/opt/csw/lib/python/site-packages/hgext', + 'target': None, + 'type': 'd', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/__init__.py 0644 root bin 14 1232 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/__init__.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/acl.py 0644 root bin 8347 27128 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/acl.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/bookmarks.py 0644 root bin 20829 48386 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/bookmarks.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/bugzilla.py 0644 root bin 15753 40250 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/bugzilla.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/children.py 0644 root bin 1389 49606 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/children.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/churn.py 0644 root bin 6816 51303 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/churn.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/color.py 0644 root bin 11661 28637 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/color.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'none', + 'group': 'bin', + 'line': '1 d none /opt/csw/lib/python/site-packages/hgext/convert 0755 root bin', + 'mode': '0755', + 'path': '/opt/csw/lib/python/site-packages/hgext/convert', + 'target': None, + 'type': 'd', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/convert/__init__.py 0644 root bin 13756 25589 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/convert/__init__.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/convert/bzr.py 0644 root bin 10065 40477 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/convert/bzr.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/convert/common.py 0644 root bin 12255 7721 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/convert/common.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/convert/convcmd.py 0644 root bin 15156 11294 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/convert/convcmd.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/convert/cvs.py 0644 root bin 10059 27298 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/convert/cvs.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/convert/cvsps.py 0644 root bin 30586 53652 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/convert/cvsps.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/convert/darcs.py 0644 root bin 7693 43009 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/convert/darcs.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/convert/filemap.py 0644 root bin 13070 59437 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/convert/filemap.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/convert/git.py 0644 root bin 5777 12223 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/convert/git.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/convert/gnuarch.py 0644 root bin 12723 14651 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/convert/gnuarch.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/convert/hg.py 0644 root bin 13797 39488 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/convert/hg.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/convert/monotone.py 0644 root bin 8258 60129 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/convert/monotone.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/convert/p4.py 0644 root bin 6787 21007 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/convert/p4.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/convert/subversion.py 0644 root bin 45717 49583 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/convert/subversion.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/convert/transport.py 0644 root bin 5147 12823 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/convert/transport.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/eol.py 0644 root bin 10218 2774 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/eol.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/extdiff.py 0644 root bin 12405 49853 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/extdiff.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/fetch.py 0644 root bin 5894 52256 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/fetch.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/gpg.py 0644 root bin 9278 14420 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/gpg.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/graphlog.py 0644 root bin 11317 16367 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/graphlog.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/hgcia.py 0644 root bin 7938 12471 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/hgcia.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/hgk.py 0644 root bin 11713 57909 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/hgk.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'none', + 'group': 'bin', + 'line': '1 d none /opt/csw/lib/python/site-packages/hgext/highlight 0755 root bin', + 'mode': '0755', + 'path': '/opt/csw/lib/python/site-packages/hgext/highlight', + 'target': None, + 'type': 'd', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/highlight/__init__.py 0644 root bin 2406 12599 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/highlight/__init__.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/highlight/highlight.py 0644 root bin 2133 49689 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/highlight/highlight.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/interhg.py 0644 root bin 2811 28082 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/interhg.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/keyword.py 0644 root bin 25151 35684 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/keyword.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/mq.py 0644 root bin 118260 55754 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/mq.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/notify.py 0644 root bin 11556 43021 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/notify.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/pager.py 0644 root bin 3507 18626 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/pager.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/parentrevspec.py 0644 root bin 3167 15484 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/parentrevspec.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/patchbomb.py 0644 root bin 20908 1224 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/patchbomb.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/progress.py 0644 root bin 7522 32819 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/progress.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/purge.py 0644 root bin 4014 55557 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/purge.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/rebase.py 0644 root bin 22714 20349 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/rebase.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/record.py 0644 root bin 18661 16124 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/record.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/relink.py 0644 root bin 5939 64153 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/relink.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/schemes.py 0644 root bin 2588 17135 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/schemes.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/share.py 0644 root bin 1336 47620 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/share.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/transplant.py 0644 root bin 23626 9759 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/transplant.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/win32mbcs.py 0644 root bin 5490 60374 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/win32mbcs.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/win32text.py 0644 root bin 5685 56381 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/win32text.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'none', + 'group': 'bin', + 'line': '1 d none /opt/csw/lib/python/site-packages/hgext/zeroconf 0755 root bin', + 'mode': '0755', + 'path': '/opt/csw/lib/python/site-packages/hgext/zeroconf', + 'target': None, + 'type': 'd', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/zeroconf/Zeroconf.py 0644 root bin 46151 63064 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/zeroconf/Zeroconf.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/hgext/zeroconf/__init__.py 0644 root bin 5841 58163 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/hgext/zeroconf/__init__.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'none', + 'group': 'bin', + 'line': '1 d none /opt/csw/lib/python/site-packages/mercurial 0755 root bin', + 'mode': '0755', + 'path': '/opt/csw/lib/python/site-packages/mercurial', + 'target': None, + 'type': 'd', + 'user': 'root'}, + {'class': 'none', + 'group': 'bin', + 'line': '1 f none /opt/csw/lib/python/site-packages/mercurial-1.7.3-py2.6.egg-info 0644 root bin 238 20672 1297755991', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial-1.7.3-py2.6.egg-info', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/__init__.py 0644 root bin 0 0 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/__init__.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/__version__.py 0644 root bin 59 4980 1293927870', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/__version__.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/ancestor.py 0644 root bin 2494 43567 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/ancestor.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/archival.py 0644 root bin 8833 62412 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/archival.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'none', + 'group': 'bin', + 'line': '1 f none /opt/csw/lib/python/site-packages/mercurial/base85.so 0755 root bin 8812 22256 1297755976', + 'mode': '0755', + 'path': '/opt/csw/lib/python/site-packages/mercurial/base85.so', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'none', + 'group': 'bin', + 'line': '1 f none /opt/csw/lib/python/site-packages/mercurial/bdiff.so 0755 root bin 12644 37241 1297755978', + 'mode': '0755', + 'path': '/opt/csw/lib/python/site-packages/mercurial/bdiff.so', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/bundlerepo.py 0644 root bin 11318 62745 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/bundlerepo.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/byterange.py 0644 root bin 16789 17578 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/byterange.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/changegroup.py 0644 root bin 6224 63322 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/changegroup.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/changelog.py 0644 root bin 8050 1955 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/changelog.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/cmdutil.py 0644 root bin 48517 59269 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/cmdutil.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/commands.py 0644 root bin 166196 7352 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/commands.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/config.py 0644 root bin 5032 28760 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/config.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/context.py 0644 root bin 35653 33030 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/context.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/copies.py 0644 root bin 8271 344 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/copies.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/dagparser.py 0644 root bin 14631 3639 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/dagparser.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/demandimport.py 0644 root bin 4973 52869 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/demandimport.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'none', + 'group': 'bin', + 'line': '1 f none /opt/csw/lib/python/site-packages/mercurial/diffhelpers.so 0755 root bin 8896 11814 1297755978', + 'mode': '0755', + 'path': '/opt/csw/lib/python/site-packages/mercurial/diffhelpers.so', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/dirstate.py 0644 root bin 22410 54936 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/dirstate.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/discovery.py 0644 root bin 11671 311 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/discovery.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/dispatch.py 0644 root bin 22765 46554 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/dispatch.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/encoding.py 0644 root bin 3708 40738 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/encoding.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/error.py 0644 root bin 2283 60156 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/error.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/extensions.py 0644 root bin 9230 62696 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/extensions.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/fancyopts.py 0644 root bin 3343 59595 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/fancyopts.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/filelog.py 0644 root bin 2417 47728 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/filelog.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/filemerge.py 0644 root bin 9386 36223 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/filemerge.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/graphmod.py 0644 root bin 3956 47224 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/graphmod.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/hbisect.py 0644 root bin 5171 1583 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/hbisect.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'none', + 'group': 'bin', + 'line': '1 d none /opt/csw/lib/python/site-packages/mercurial/help 0755 root bin', + 'mode': '0755', + 'path': '/opt/csw/lib/python/site-packages/mercurial/help', + 'target': None, + 'type': 'd', + 'user': 'root'}, + {'class': 'cswpycompile', + 'group': 'bin', + 'line': '1 f cswpycompile /opt/csw/lib/python/site-packages/mercurial/help.py 0644 root bin 3706 24714 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/help.py', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'none', + 'group': 'bin', + 'line': '1 f none /opt/csw/lib/python/site-packages/mercurial/help/config.txt 0644 root bin 1805 29968 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/help/config.txt', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'none', + 'group': 'bin', + 'line': '1 f none /opt/csw/lib/python/site-packages/mercurial/help/dates.txt 0644 root bin 1215 32074 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/help/dates.txt', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'none', + 'group': 'bin', + 'line': '1 f none /opt/csw/lib/python/site-packages/mercurial/help/diffs.txt 0644 root bin 1358 59956 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/help/diffs.txt', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'none', + 'group': 'bin', + 'line': '1 f none /opt/csw/lib/python/site-packages/mercurial/help/environment.txt 0644 root bin 3491 36267 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/help/environment.txt', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'none', + 'group': 'bin', + 'line': '1 f none /opt/csw/lib/python/site-packages/mercurial/help/extensions.txt 0644 root bin 1183 42274 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/help/extensions.txt', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'none', + 'group': 'bin', + 'line': '1 f none /opt/csw/lib/python/site-packages/mercurial/help/glossary.txt 0644 root bin 13515 56764 1293927846', + 'mode': '0644', + 'path': '/opt/csw/lib/python/site-packages/mercurial/help/glossary.txt', + 'target': None, + 'type': 'f', + 'user': 'root'}, + {'class': 'none', + 'group': 'bin', @@ Diff output truncated at 100000 characters. @@ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Tue Feb 15 09:57:21 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Tue, 15 Feb 2011 08:57:21 +0000 Subject: [csw-devel] SF.net SVN: gar:[13318] csw/mgar/gar/v2/lib/python/rest.py Message-ID: Revision: 13318 http://gar.svn.sourceforge.net/gar/?rev=13318&view=rev Author: wahwah Date: 2011-02-15 08:57:20 +0000 (Tue, 15 Feb 2011) Log Message: ----------- pkgdb: More informative warnings from RestClient When warning about a HTTP error, display the URL. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/rest.py Modified: csw/mgar/gar/v2/lib/python/rest.py =================================================================== --- csw/mgar/gar/v2/lib/python/rest.py 2011-02-15 08:22:56 UTC (rev 13317) +++ csw/mgar/gar/v2/lib/python/rest.py 2011-02-15 08:57:20 UTC (rev 13318) @@ -24,7 +24,7 @@ data = urllib2.urlopen(url).read() return json.loads(data) except urllib2.HTTPError, e: - logging.warning(e) + logging.warning("%s -- %s", url, e) return { "maintainer_email": "Unknown", } @@ -44,7 +44,7 @@ data = urllib2.urlopen(url).read() return json.loads(data) except urllib2.HTTPError, e: - logging.warning(e) + logging.warning("%s -- %s", url, e) return None def Srv4ByCatalogAndCatalogname(self, catrel, arch, osrel, catalogname): @@ -57,5 +57,5 @@ data = urllib2.urlopen(url).read() return json.loads(data) except urllib2.HTTPError, e: - logging.warning(e) + logging.warning("%s -- %s", url, e) return None This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Tue Feb 15 09:57:55 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Tue, 15 Feb 2011 08:57:55 +0000 Subject: [csw-devel] SF.net SVN: gar:[13319] csw/mgar/gar/v2/lib/python Message-ID: Revision: 13319 http://gar.svn.sourceforge.net/gar/?rev=13319&view=rev Author: wahwah Date: 2011-02-15 08:57:55 +0000 (Tue, 15 Feb 2011) Log Message: ----------- csw-upload-pkg: Upload bugfix Fix a bug in logic, when uploading a new package. Trigger package upload not only when the version is the same, but also if the package is not in the catalog. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/csw_upload_pkg.py csw/mgar/gar/v2/lib/python/csw_upload_pkg_test.py Modified: csw/mgar/gar/v2/lib/python/csw_upload_pkg.py =================================================================== --- csw/mgar/gar/v2/lib/python/csw_upload_pkg.py 2011-02-15 08:57:20 UTC (rev 13318) +++ csw/mgar/gar/v2/lib/python/csw_upload_pkg.py 2011-02-15 08:57:55 UTC (rev 13319) @@ -155,11 +155,10 @@ catalogs = [] for arch in archs: for osrel in osrels: + logging.debug("%s %s %s", catrel, arch, osrel) srv4_in_catalog = self._rest_client.Srv4ByCatalogAndCatalogname( catrel, arch, osrel, catalogname) - if not srv4_in_catalog: - continue - if srv4_in_catalog["osrel"] == srv4_osrel: + if not srv4_in_catalog or srv4_in_catalog["osrel"] == srv4_osrel: # The same architecture as our package, meaning that we can insert # the same architecture into the catalog. if (not self.os_release Modified: csw/mgar/gar/v2/lib/python/csw_upload_pkg_test.py =================================================================== --- csw/mgar/gar/v2/lib/python/csw_upload_pkg_test.py 2011-02-15 08:57:20 UTC (rev 13318) +++ csw/mgar/gar/v2/lib/python/csw_upload_pkg_test.py 2011-02-15 08:57:55 UTC (rev 13319) @@ -104,6 +104,29 @@ ) self.assertEquals(expected, result) + def test_MatchSrv4ToCatalogsAbsentFromAll(self): + rest_client_mock = self.mox.CreateMock(rest.RestClient) + self.mox.StubOutWithMock(rest, "RestClient") + rest.RestClient().AndReturn(rest_client_mock) + rest_client_mock.Srv4ByCatalogAndCatalogname( + 'unstable', 'sparc', u'SunOS5.9', 'gdb').AndReturn(None) + rest_client_mock.Srv4ByCatalogAndCatalogname( + 'unstable', 'sparc', u'SunOS5.10', 'gdb').AndReturn(None) + rest_client_mock.Srv4ByCatalogAndCatalogname( + 'unstable', 'sparc', u'SunOS5.11', 'gdb').AndReturn(None) + self.mox.ReplayAll() + su = csw_upload_pkg.Srv4Uploader(None) + result = su._MatchSrv4ToCatalogs( + "gdb-7.2,REV=2011.01.21-SunOS5.9-sparc-CSW.pkg.gz", + "unstable", "sparc", "SunOS5.9", + "deadbeef61b53638d7813407fab4765b") + expected = ( + ("unstable", "sparc", "SunOS5.9"), + ("unstable", "sparc", "SunOS5.10"), + ("unstable", "sparc", "SunOS5.11"), + ) + self.assertEquals(expected, result) + def test_MatchSrv4ToCatalogsSameSpecificOsrelAlreadyPresent(self): rest_client_mock = self.mox.CreateMock(rest.RestClient) self.mox.StubOutWithMock(rest, "RestClient") This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Tue Feb 15 09:58:25 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Tue, 15 Feb 2011 08:58:25 +0000 Subject: [csw-devel] SF.net SVN: gar:[13320] csw/mgar/gar/v2/lib/python/csw_upload_pkg.py Message-ID: Revision: 13320 http://gar.svn.sourceforge.net/gar/?rev=13320&view=rev Author: wahwah Date: 2011-02-15 08:58:24 +0000 (Tue, 15 Feb 2011) Log Message: ----------- csw-upload-pkg: Internal API bugfix Fix argument order in two function calls. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/csw_upload_pkg.py Modified: csw/mgar/gar/v2/lib/python/csw_upload_pkg.py =================================================================== --- csw/mgar/gar/v2/lib/python/csw_upload_pkg.py 2011-02-15 08:57:55 UTC (rev 13319) +++ csw/mgar/gar/v2/lib/python/csw_upload_pkg.py 2011-02-15 08:58:24 UTC (rev 13320) @@ -89,7 +89,7 @@ catalogs = self._MatchSrv4ToCatalogs( filename, DEFAULT_CATREL, arch, osrel, md5_sum) for unused_catrel, cat_arch, cat_osrel in catalogs: - self._RemoveFromCatalog(filename, file_metadata, cat_arch, cat_osrel) + self._RemoveFromCatalog(filename, cat_arch, cat_osrel, file_metadata) def _RemoveFromCatalog(self, filename, arch, osrel, file_metadata): md5_sum = self._GetFileMd5sum(filename) @@ -195,7 +195,7 @@ catalogs = self._MatchSrv4ToCatalogs( filename, DEFAULT_CATREL, arch, osrel, md5_sum) for unused_catrel, cat_arch, cat_osrel in catalogs: - self._InsertIntoCatalog(filename, file_metadata, cat_arch, cat_osrel) + self._InsertIntoCatalog(filename, cat_arch, cat_osrel, file_metadata) def _InsertIntoCatalog(self, filename, arch, osrel, file_metadata): logging.info( This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Tue Feb 15 12:00:33 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Tue, 15 Feb 2011 11:00:33 +0000 Subject: [csw-devel] SF.net SVN: gar:[13321] csw/mgar/pkg/cvs/trunk Message-ID: Revision: 13321 http://gar.svn.sourceforge.net/gar/?rev=13321&view=rev Author: dmichelsen Date: 2011-02-15 11:00:32 +0000 (Tue, 15 Feb 2011) Log Message: ----------- cvs: Add patch to reenable extssh for Eclipse again Modified Paths: -------------- csw/mgar/pkg/cvs/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/cvs/trunk/files/README.CSW csw/mgar/pkg/cvs/trunk/files/cvs-1.12.13-extssh.diff Modified: csw/mgar/pkg/cvs/trunk/Makefile =================================================================== --- csw/mgar/pkg/cvs/trunk/Makefile 2011-02-15 08:58:24 UTC (rev 13320) +++ csw/mgar/pkg/cvs/trunk/Makefile 2011-02-15 11:00:32 UTC (rev 13321) @@ -18,8 +18,16 @@ MASTER_SITES = http://ftp.gnu.org/non-gnu/cvs/source/feature/$(VERSION)/ UPSTREAM_MASTER_SITES = http://ftp.gnu.org/non-gnu/cvs/source/feature/ -DISTFILES = $(DISTNAME).tar.bz2 +DISTFILES += $(DISTNAME).tar.bz2 +DISTFILES += README.CSW +# Allow extssh as connection method by patch taken from +# http://lists.gnu.org/archive/html/bug-cvs/2008-01/msg00007.html +PATCHFILES += cvs-1.12.13-extssh.diff + +# The above is a functionality patch +VERSION_FLAG_PATCH = 1 + PACKAGES += CSWcvs CATALOGNAME_CSWcvs = cvs SPKG_DESC_CSWcvs = $(DESCRIPTION) Added: csw/mgar/pkg/cvs/trunk/files/README.CSW =================================================================== --- csw/mgar/pkg/cvs/trunk/files/README.CSW (rev 0) +++ csw/mgar/pkg/cvs/trunk/files/README.CSW 2011-02-15 11:00:32 UTC (rev 13321) @@ -0,0 +1,11 @@ +README.CSW for cvs +------------------ + +The following functionality patches have been applied: + +* Eclipse, cvs, and extssh: cvs-1.12.13-extssh.diff + + The patch was taken from + http://lists.gnu.org/archive/html/bug-cvs/2008-01/msg00007.html + + Added: csw/mgar/pkg/cvs/trunk/files/cvs-1.12.13-extssh.diff =================================================================== --- csw/mgar/pkg/cvs/trunk/files/cvs-1.12.13-extssh.diff (rev 0) +++ csw/mgar/pkg/cvs/trunk/files/cvs-1.12.13-extssh.diff 2011-02-15 11:00:32 UTC (rev 13321) @@ -0,0 +1,181 @@ +diff -r -c3 cvs-1.12.13/src/client.c cvs-1.12.13+extssh/src/client.c +*** cvs-1.12.13/src/client.c Sun Oct 2 17:17:20 2005 +--- cvs-1.12.13+extssh/src/client.c Tue Jan 22 16:45:57 2008 +*************** +*** 3904,3910 **** + error (1, 0, "try :server: instead"); + #else /* ! NO_EXT_METHOD */ + start_rsh_server (root, to_server_p, +! from_server_p); + #endif /* NO_EXT_METHOD */ + break; + +--- 3904,3920 ---- + error (1, 0, "try :server: instead"); + #else /* ! NO_EXT_METHOD */ + start_rsh_server (root, to_server_p, +! from_server_p, RSH_DFLT); +! #endif /* NO_EXT_METHOD */ +! break; +! +! case extssh_method: +! #ifdef NO_EXT_METHOD +! error (0, 0, ":extssh: method not supported by this port of CVS"); +! error (1, 0, "try :server: instead"); +! #else /* ! NO_EXT_METHOD */ +! start_rsh_server (root, to_server_p, +! from_server_p, "ssh"); + #endif /* NO_EXT_METHOD */ + break; + +diff -r -c3 cvs-1.12.13/src/root.c cvs-1.12.13+extssh/src/root.c +*** cvs-1.12.13/src/root.c Sun Sep 25 02:38:29 2005 +--- cvs-1.12.13+extssh/src/root.c Tue Jan 22 16:37:32 2008 +*************** +*** 19,29 **** + #include "getline.h" + + /* Printable names for things in the current_parsed_root->method enum variable. +! Watch out if the enum is changed in cvs.h! */ + + const char method_names[][16] = { + "undefined", "local", "server (rsh)", "pserver", +! "kserver", "gserver", "ext", "fork" + }; + + #ifndef DEBUG +--- 19,29 ---- + #include "getline.h" + + /* Printable names for things in the current_parsed_root->method enum variable. +! Watch out if the enum is changed in root.h! */ + + const char method_names[][16] = { + "undefined", "local", "server (rsh)", "pserver", +! "kserver", "gserver", "ext", "extssh", "fork" + }; + + #ifndef DEBUG +*************** +*** 549,554 **** +--- 549,556 ---- + newroot->method = server_method; + else if (!strcasecmp (method, "ext")) + newroot->method = ext_method; ++ else if (!strcasecmp (method, "extssh")) ++ newroot->method = extssh_method; + else if (!strcasecmp (method, "fork")) + newroot->method = fork_method; + else +*************** +*** 827,832 **** +--- 829,835 ---- + break; + case server_method: + case ext_method: ++ case extssh_method: + no_port = 1; + /* no_password already set */ + check_hostname = 1; +diff -r -c3 cvs-1.12.13/src/root.h cvs-1.12.13+extssh/src/root.h +*** cvs-1.12.13/src/root.h Sun Sep 25 02:38:29 2005 +--- cvs-1.12.13+extssh/src/root.h Tue Jan 22 16:35:13 2008 +*************** +*** 22,27 **** +--- 22,28 ---- + kserver_method, + gserver_method, + ext_method, ++ extssh_method, + fork_method + } CVSmethod; + extern const char method_names[][16]; /* change this in root.c if you change +diff -r -c3 cvs-1.12.13/src/rsh-client.c cvs-1.12.13+extssh/src/rsh-client.c +*** cvs-1.12.13/src/rsh-client.c Sun Oct 2 17:17:21 2005 +--- cvs-1.12.13+extssh/src/rsh-client.c Tue Jan 22 16:47:43 2008 +*************** +*** 40,46 **** + up and running, and that's most important. */ + void + start_rsh_server (cvsroot_t *root, struct buffer **to_server_p, +! struct buffer **from_server_p) + { + int pipes[2]; + int child_pid; +--- 40,46 ---- + up and running, and that's most important. */ + void + start_rsh_server (cvsroot_t *root, struct buffer **to_server_p, +! struct buffer **from_server_p, const char *rsh_default) + { + int pipes[2]; + int child_pid; +*************** +*** 78,84 **** + example in CVS_RSH or other such mechanisms to be devised, + if that is what they want (the manual already tells them + that). */ +! cvs_rsh = RSH_DFLT; + if (!cvs_server) + cvs_server = "cvs"; + +--- 78,84 ---- + example in CVS_RSH or other such mechanisms to be devised, + if that is what they want (the manual already tells them + that). */ +! cvs_rsh = rsh_default; + if (!cvs_server) + cvs_server = "cvs"; + +*************** +*** 126,132 **** + + void + start_rsh_server (cvsroot_t *root, struct buffer **to_server_p, +! struct buffer **from_server_p) + { + /* If you're working through firewalls, you can set the + CVS_RSH environment variable to a script which uses rsh to +--- 126,132 ---- + + void + start_rsh_server (cvsroot_t *root, struct buffer **to_server_p, +! struct buffer **from_server_p, const char *rsh_default) + { + /* If you're working through firewalls, you can set the + CVS_RSH environment variable to a script which uses rsh to +*************** +*** 140,146 **** + int child_pid; + + if (!cvs_rsh) +! cvs_rsh = RSH_DFLT; + if (!cvs_server) + cvs_server = "cvs"; + +--- 140,146 ---- + int child_pid; + + if (!cvs_rsh) +! cvs_rsh = rsh_default; + if (!cvs_server) + cvs_server = "cvs"; + +diff -r -c3 cvs-1.12.13/src/rsh-client.h cvs-1.12.13+extssh/src/rsh-client.h +*** cvs-1.12.13/src/rsh-client.h Wed Jul 23 22:42:26 2003 +--- cvs-1.12.13+extssh/src/rsh-client.h Tue Jan 22 16:43:22 2008 +*************** +*** 14,19 **** + #ifndef RSH_CLIENT_H__ + #define RSH_CLIENT_H__ + +! void start_rsh_server (cvsroot_t *, struct buffer **, struct buffer **); + + #endif +--- 14,19 ---- + #ifndef RSH_CLIENT_H__ + #define RSH_CLIENT_H__ + +! void start_rsh_server (cvsroot_t *, struct buffer **, struct buffer **, const char *); + + #endif This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Tue Feb 15 12:48:10 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Tue, 15 Feb 2011 11:48:10 +0000 Subject: [csw-devel] SF.net SVN: gar:[13322] csw/mgar/pkg/cvs/trunk/Makefile Message-ID: Revision: 13322 http://gar.svn.sourceforge.net/gar/?rev=13322&view=rev Author: dmichelsen Date: 2011-02-15 11:48:10 +0000 (Tue, 15 Feb 2011) Log Message: ----------- cvs: Add overrides Modified Paths: -------------- csw/mgar/pkg/cvs/trunk/Makefile Modified: csw/mgar/pkg/cvs/trunk/Makefile =================================================================== --- csw/mgar/pkg/cvs/trunk/Makefile 2011-02-15 11:00:32 UTC (rev 13321) +++ csw/mgar/pkg/cvs/trunk/Makefile 2011-02-15 11:48:10 UTC (rev 13322) @@ -55,6 +55,16 @@ # The testsuite runs for more than one hour! # SKIPTEST ?= 1 +# This is for GNATS. We don't have GNATS at OpenCSW +CHECKPKG_OVERRIDES_CSWcvs += file-with-bad-content|/usr/local|root/opt/csw/bin/cvsbug + +# This is to find sccs and does no harm +CHECKPKG_OVERRIDES_CSWcvs += file-with-bad-content|/usr/local|root/opt/csw/share/cvs/contrib/sccs2rcs + +# Here the pathes are for user-specific examples +CHECKPKG_OVERRIDES_CSWcvs += file-with-bad-content|/usr/local|root/opt/csw/share/info/cvs.info-1 +CHECKPKG_OVERRIDES_CSWcvs += file-with-bad-content|/usr/local|root/opt/csw/share/info/cvs.info-2 + include gar/category.mk # Only GNU 'id' understands option '-u' This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Tue Feb 15 13:14:23 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Tue, 15 Feb 2011 12:14:23 +0000 Subject: [csw-devel] SF.net SVN: gar:[13323] csw/mgar/pkg/libgpg_error/trunk/Makefile Message-ID: Revision: 13323 http://gar.svn.sourceforge.net/gar/?rev=13323&view=rev Author: dmichelsen Date: 2011-02-15 12:14:22 +0000 (Tue, 15 Feb 2011) Log Message: ----------- libgpg_error: Split package Modified Paths: -------------- csw/mgar/pkg/libgpg_error/trunk/Makefile Modified: csw/mgar/pkg/libgpg_error/trunk/Makefile =================================================================== --- csw/mgar/pkg/libgpg_error/trunk/Makefile 2011-02-15 11:48:10 UTC (rev 13322) +++ csw/mgar/pkg/libgpg_error/trunk/Makefile 2011-02-15 12:14:22 UTC (rev 13323) @@ -11,9 +11,33 @@ MASTER_SITES = ftp://ftp.gnupg.org/gcrypt/libgpg-error/ DISTFILES = $(NAME)-$(VERSION).tar.bz2 -PACKAGES = CSWgpgerr -CATALOGNAME = libgpg_error +PACKAGES += CSWgpgerr +CATALOGNAME_CSWgpgerr = gpgerr +SPKG_DESC_CSWgpgerr = Transitional package as contents moved to CSWlibgpg-error and CSWlibgpg-error0 +RUNTIME_DEP_PKGS_CSWgpgerr = CSWgpg-error CSWlibgpg-error0 +CHECKPKG_OVERRIDES_CSWgpgerr += surplus-dependency|CSWgpg-error +CHECKPKG_OVERRIDES_CSWgpgerr += surplus-dependency|CSWlibgpg-error0 +PKGFILES_CSWgpgerr = NOFILES +ARCHALL_CSWgpgerr = 1 +PACKAGES += CSWgpg-error +CATALOGNAME_CSWgpg-error = gpg_error +SPKG_DESC_CSWgpg-error = Tools for libgpg-error.so +RUNTIME_DEP_PKGS_CSWgpg-error = CSWlibgpg-error0 +RUNTIME_DEP_PKGS_CSWgpg-error += CSWggettextrt + +PACKAGES += CSWlibgpg-error0 +CATALOGNAME_CSWlibgpg-error0 = libgpg_error0 +SPKG_DESC_CSWlibgpg-error0 = GNU gpg related library providing libgpg-error.so.0 +PKGFILES_CSWlibgpg-error0 = $(call baseisadirs,$(libdir),libgpg-error\.so\.0(\.\d+)*) + +PACKAGES += CSWlibgpg-error-dev +CATALOGNAME_CSWlibgpg-error-dev = libgpg_error_dev +SPKG_DESC_CSWlibgpg-error-dev = Development files for libgpg-error.so +PKGFILES_CSWlibgpg-error-dev += $(PKGFILES_DEVEL) +PKGFILES_CSWlibgpg-error-dev += $(sharedstatedir)/common-lisp/.* +RUNTIME_DEP_PKGS_CSWlibgpg-error-dev += CSWlibgpg-error0 + UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.bz2 VENDOR_URL = http://www.gnupg.org/download/ @@ -25,6 +49,8 @@ CONFIGURE_ARGS = $(DIRPATHS) +MERGE_DIRS_isa-extra = $(libdir) + TEST_TARGET = check include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Tue Feb 15 13:41:50 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Tue, 15 Feb 2011 12:41:50 +0000 Subject: [csw-devel] SF.net SVN: gar:[13324] csw/mgar/pkg/libcairo/trunk Message-ID: Revision: 13324 http://gar.svn.sourceforge.net/gar/?rev=13324&view=rev Author: dmichelsen Date: 2011-02-15 12:41:50 +0000 (Tue, 15 Feb 2011) Log Message: ----------- libcairo: Update to 1.10.2, still does not compile Modified Paths: -------------- csw/mgar/pkg/libcairo/trunk/Makefile csw/mgar/pkg/libcairo/trunk/checksums Modified: csw/mgar/pkg/libcairo/trunk/Makefile =================================================================== --- csw/mgar/pkg/libcairo/trunk/Makefile 2011-02-15 12:14:22 UTC (rev 13323) +++ csw/mgar/pkg/libcairo/trunk/Makefile 2011-02-15 12:41:50 UTC (rev 13324) @@ -1,5 +1,5 @@ NAME = libcairo -VERSION = 1.8.8 +VERSION = 1.10.2 CATEGORIES = lib DESCRIPTION = The Cairo 2D Graphics Library @@ -14,60 +14,63 @@ # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz -PACKAGES = CSWlibcairo CSWlibcairodevel CSWlibcairodoc -CATALOGNAME_CSWlibcairo = libcairo +PACKAGES += CSWlibcairo +CATALOGNAME_CSWlibcairo = libcairo +SPKG_DESC_CSWlibcairo = $(DESCRIPTION) +RUNTIME_DEP_PKGS_CSWlibcairo += CSWfconfig +RUNTIME_DEP_PKGS_CSWlibcairo += CSWftype2 +RUNTIME_DEP_PKGS_CSWlibcairo += CSWpixman +RUNTIME_DEP_PKGS_CSWlibcairo += CSWpng +RUNTIME_DEP_PKGS_CSWlibcairo += CSWzlib +RUNTIME_DEP_PKGS_CSWlibcairo += CSWexpat +RUNTIME_DEP_PKGS_CSWlibcairo += CSWiconv + +PACKAGES += CSWlibcairodevel CATALOGNAME_CSWlibcairodevel = libcairo_devel -CATALOGNAME_CSWlibcairodoc = libcairo_doc - -SPKG_DESC_CSWlibcairo = $(DESCRIPTION) -SPKG_DESC_CSWlibcairodevel = $(DESCRIPTION) development package -SPKG_DESC_CSWlibcairodoc = $(DESCRIPTION) documentation - +SPKG_DESC_CSWlibcairodevel = $(DESCRIPTION) development package PKGFILES_CSWlibcairodevel = $(PKGFILES_DEVEL) PKGFILES_CSWlibcairodevel += $(docdir)/libcairo_devel/.* +RUNTIME_DEP_PKGS_CSWlibcairodevel = CSWlibcairo + +PACKAGES += CSWlibcairodoc +CATALOGNAME_CSWlibcairodoc = libcairo_doc +SPKG_DESC_CSWlibcairodoc = $(DESCRIPTION) documentation PKGFILES_CSWlibcairodoc = $(sharedstatedir)/gtk-doc.* PKGFILES_CSWlibcairodoc += $(docdir)/libcairo_doc/.* +ARCHALL_CSWlibcairodoc = 1 -BUILD_DEP_PKGS += CSWlibxrenderdevel CSWkbproto CSWrenderproto -BUILD_DEP_PKGS += CSWlibspectre +BUILD_DEP_PKGS = CSWlibspectre -RUNTIME_DEP_PKGS_CSWlibcairo = CSWfconfig -RUNTIME_DEP_PKGS_CSWlibcairo += CSWftype2 -RUNTIME_DEP_PKGS_CSWlibcairo += CSWlibxrender -RUNTIME_DEP_PKGS_CSWlibcairo += CSWpixman -RUNTIME_DEP_PKGS_CSWlibcairo += CSWpng -RUNTIME_DEP_PKGS_CSWlibcairo += CSWzlib -RUNTIME_DEP_PKGS_CSWlibcairo += CSWexpat -RUNTIME_DEP_PKGS_CSWlibcairo += CSWiconv -RUNTIME_DEP_PKGS_CSWlibcairo += CSWlibx11 -RUNTIME_DEP_PKGS_CSWlibcairo += CSWlibxcb -RUNTIME_DEP_PKGS_CSWlibcairo += CSWxcbutil +# imagediff in testsuite needs -lsocket +# EXTRA_LDFLAGS = -lsocket -lnsl -RUNTIME_DEP_PKGS_CSWlibcairodevel = CSWlibcairo -RUNTIME_DEP_PKGS_CSWlibcairodoc = +# We don't need it and if defined linking breaks if an old Cairo is installed +LD_OPTIONS = +EXTRA_LINKER_FLAGS = $(RUNPATH_LINKER_FLAGS) -ARCHALL_CSWlibcairodoc = 1 - BUILD64 = 1 -EXTRA_INC = $(prefix)/X11/include -EXTRA_LIB = $(prefix)/X11/lib -EXTRA_PKG_CONFIG_DIRS = $(prefix)/X11/lib -# We want libcairo to be linked with Xrender from $(prefix)/X11/lib not -# $(prefix)/lib since the latter is linked to /usr/openwin/lib/libX11.so.4 -EXTRA_SOS_LD_FLAGS = -L$(abspath $(prefix)/X11/lib/$(MM_LIBDIR)) -EXTRA_SOS_LD_OPTIONS = -R$(abspath $(prefix)/X11/lib/$(MM_LIBDIR)) -# imagediff in testsuite needs -lsocket -EXTRA_LDFLAGS = -lsocket -lnsl +CONFIGURE_ARGS += $(DIRPATHS) +CONFIGURE_ARGS += --disable-full-testing +CONFIGURE_ARGS += --enable-xlib=yes +CONFIGURE_ARGS += --enable-xlib-xrender=yes +CONFIGURE_ARGS += --enable-ft=yes +CONFIGURE_ARGS += --with-x +CONFIGURE_ARGS += --enable-png=yes +CONFIGURE_ARGS += --enable-ps=yes +CONFIGURE_ARGS += --enable-pdf=yes +CONFIGURE_ARGS += --enable-svg=yes +CONFIGURE_ARGS += --enable-xcb=no +CONFIGURE_ARGS += --enable-gtk-doc +CONFIGURE_ARGS += --enable-test-surfaces=yes -CONFIGURE_ARGS = $(DIRPATHS) -CONFIGURE_ARGS += --disable-full-testing --enable-xlib=yes --enable-xlib-xrender=yes --enable-ft=yes --with-x -CONFIGURE_ARGS += --enable-png=yes --enable-ps=yes --enable-pdf=yes --enable-svg=yes --enable-xcb=yes -CONFIGURE_ARGS += --enable-gtk-doc --enable-test-surfaces=yes -CONFIGURE_ARGS += --x-includes=$(prefix)/X11/include -CONFIGURE_ARGS += --x-libraries=$(abspath $(prefix)/X11/lib/$(MM_LIBDIR)) +# Use custom lroundf at least on Solaris 9 as it does not provide its own +CONFIGURE_ARGS += --disable-some-floating-point +# This is broken due to missing stdint.h and use of setenv(3c) +CONFIGURE_ARGS += --enable-trace=no + include gar/category.mk -# configure have problems with non-gnu utilities +# configure has problems with non-gnu utilities PATH := /opt/csw/gnu:$(PATH) Modified: csw/mgar/pkg/libcairo/trunk/checksums =================================================================== --- csw/mgar/pkg/libcairo/trunk/checksums 2011-02-15 12:14:22 UTC (rev 13323) +++ csw/mgar/pkg/libcairo/trunk/checksums 2011-02-15 12:41:50 UTC (rev 13324) @@ -1 +1 @@ -d3e1a1035ae563812d4dd44a74fb0dd0 download/cairo-1.8.8.tar.gz +f101a9e88b783337b20b2e26dfd26d5f cairo-1.10.2.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Tue Feb 15 15:27:47 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Tue, 15 Feb 2011 14:27:47 +0000 Subject: [csw-devel] SF.net SVN: gar:[13325] csw/mgar/pkg/libebml/trunk Message-ID: Revision: 13325 http://gar.svn.sourceforge.net/gar/?rev=13325&view=rev Author: dmichelsen Date: 2011-02-15 14:27:47 +0000 (Tue, 15 Feb 2011) Log Message: ----------- libebml: Update to 1.2.0 and split packages Modified Paths: -------------- csw/mgar/pkg/libebml/trunk/Makefile csw/mgar/pkg/libebml/trunk/checksums Added Paths: ----------- csw/mgar/pkg/libebml/trunk/files/0001-Adjust-for-Solaris-shared-library.patch Removed Paths: ------------- csw/mgar/pkg/libebml/trunk/files/libebml-shared-library.diff Modified: csw/mgar/pkg/libebml/trunk/Makefile =================================================================== --- csw/mgar/pkg/libebml/trunk/Makefile 2011-02-15 12:41:50 UTC (rev 13324) +++ csw/mgar/pkg/libebml/trunk/Makefile 2011-02-15 14:27:47 UTC (rev 13325) @@ -1,5 +1,5 @@ NAME = libebml -VERSION = 0.7.8 +VERSION = 1.2.0 CATEGORIES = lib DESCRIPTION = Library for Extensible Binary Meta Language @@ -8,13 +8,34 @@ MASTER_SITES = http://dl.matroska.org/downloads/libebml/ DISTFILES = $(NAME)-$(VERSION).tar.bz2 -PATCHFILES = libebml-shared-library.diff +PATCHFILES += 0001-Adjust-for-Solaris-shared-library.patch + # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.bz2 -SPKG_SOURCEURL = http://www.matroska.org/ +VENDOR_URL = http://www.matroska.org/ +PACKAGES += CSWlibebml +CATALOGNAME_CSWlibebml = libebml +SPKG_DESC_CSWlibebml = Transitional package as contents moved to CSWlibebml3 +RUNTIME_DEP_PKGS_CSWlibebml += CSWlibebml3 +CHECKPKG_OVERRIDES_CSWlibebml += surplus-dependency|CSWlibebml3 +PKGFILES_CSWlibebml = NOFILES +ARCHALL_CSWlibebml = 1 + +PACKAGES += CSWlibebml-dev +CATALOGNAME_CSWlibebml-dev = libebml_dev +SPKG_DESC_CSWlibebml-dev = Development files for libebml +RUNTIME_DEP_PKGS_CSWlibebml-dev = CSWlibebml3 + +PACKAGES += CSWlibebml3 +CATALOGNAME_CSWlibebml3 = libebml3 +SPKG_DESC_CSWlibebml3 = Library for Extensible Binary Meta Language providing libebml.so.3 +PKGFILES_CSWlibebml3 = $(call baseisadirs,$(libdir),libebml\.so\.3(\.\d+)*) + +LICENSE = LICENSE.LGPL + BUILD64 = 1 NOISALIST = 1 @@ -24,6 +45,8 @@ EXTRA_CFLAGS = -xcode=pic32 EXTRA_CXXFLAGS = -xcode=pic32 +EXTRA_LINKER_FLAGS = -norunpath + WARNINGFLAGS = BUILD_OVERRIDE_DIRS = CC CXX LD CFLAGS WARNINGFLAGS BUILD_SCRIPTS = $(WORKSRC)/make/linux/Makefile Modified: csw/mgar/pkg/libebml/trunk/checksums =================================================================== --- csw/mgar/pkg/libebml/trunk/checksums 2011-02-15 12:41:50 UTC (rev 13324) +++ csw/mgar/pkg/libebml/trunk/checksums 2011-02-15 14:27:47 UTC (rev 13325) @@ -1,2 +1 @@ -6278109f52e4f9d2c8a8dfc0d668b587 libebml-0.7.8.tar.bz2 -da5e2aaafdcba2c1bc83dba1e8ce2721 libebml-shared-library.diff +26fbaa556bb497c1134d33b84ab34443 libebml-1.2.0.tar.bz2 Added: csw/mgar/pkg/libebml/trunk/files/0001-Adjust-for-Solaris-shared-library.patch =================================================================== --- csw/mgar/pkg/libebml/trunk/files/0001-Adjust-for-Solaris-shared-library.patch (rev 0) +++ csw/mgar/pkg/libebml/trunk/files/0001-Adjust-for-Solaris-shared-library.patch 2011-02-15 14:27:47 UTC (rev 13325) @@ -0,0 +1,25 @@ +From af6f42624cedec3056e50aa7a8841e216023d267 Mon Sep 17 00:00:00 2001 +From: Dagobert Michelsen +Date: Tue, 15 Feb 2011 14:14:28 +0100 +Subject: [PATCH] Adjust for Solaris shared library + +--- + make/linux/Makefile | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/make/linux/Makefile b/make/linux/Makefile +index 8f86b59..989bd13 100644 +--- a/make/linux/Makefile ++++ b/make/linux/Makefile +@@ -91,7 +91,7 @@ $(LIBRARY): $(objects) + $(RANLIB) $@ + + $(LIBRARY_SO): $(objects_so) +- $(CXX) -shared -Wl,-soname,$(LIBRARY_SO_VER) -o $(LIBRARY_SO_VER) $(objects_so) ++ $(CXX) -G $(LDFLAGS) -h $(LIBRARY_SO_VER) -o $(LIBRARY_SO_VER) $(objects_so) + rm -f $(LIBRARY_SO) + ln -s $(LIBRARY_SO_VER) $(LIBRARY_SO) + +-- +1.7.3.2 + Deleted: csw/mgar/pkg/libebml/trunk/files/libebml-shared-library.diff =================================================================== --- csw/mgar/pkg/libebml/trunk/files/libebml-shared-library.diff 2011-02-15 12:41:50 UTC (rev 13324) +++ csw/mgar/pkg/libebml/trunk/files/libebml-shared-library.diff 2011-02-15 14:27:47 UTC (rev 13325) @@ -1,12 +0,0 @@ -diff -Naur libebml-0.7.8.orig/make/linux/Makefile libebml-0.7.8.patched/make/linux/Makefile ---- libebml-0.7.8.orig/make/linux/Makefile 2006-06-02 16:32:15.000000000 +0200 -+++ libebml-0.7.8.patched/make/linux/Makefile 2009-10-08 10:49:26.151491509 +0200 -@@ -94,7 +94,7 @@ - $(RANLIB) $@ - - $(LIBRARY_SO): $(objects_so) -- $(CXX) -shared -Wl,-soname,$(LIBRARY_SO_VER) -o $(LIBRARY_SO_VER) $(objects_so) -+ $(CXX) -G $(LDFLAGS) -o $(LIBRARY_SO_VER) $(objects_so) - rm -f $(LIBRARY_SO) - ln -s $(LIBRARY_SO_VER) $(LIBRARY_SO) - This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Tue Feb 15 16:04:11 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Tue, 15 Feb 2011 15:04:11 +0000 Subject: [csw-devel] SF.net SVN: gar:[13326] csw/mgar/pkg/libmatroska/trunk Message-ID: Revision: 13326 http://gar.svn.sourceforge.net/gar/?rev=13326&view=rev Author: dmichelsen Date: 2011-02-15 15:04:11 +0000 (Tue, 15 Feb 2011) Log Message: ----------- libmatroska: Update to 1.1.0 and split package Modified Paths: -------------- csw/mgar/pkg/libmatroska/trunk/Makefile csw/mgar/pkg/libmatroska/trunk/checksums Added Paths: ----------- csw/mgar/pkg/libmatroska/trunk/files/0001-Adjust-for-Solaris-shared-library.patch Removed Paths: ------------- csw/mgar/pkg/libmatroska/trunk/files/libmatroska-shared-library.diff Modified: csw/mgar/pkg/libmatroska/trunk/Makefile =================================================================== --- csw/mgar/pkg/libmatroska/trunk/Makefile 2011-02-15 14:27:47 UTC (rev 13325) +++ csw/mgar/pkg/libmatroska/trunk/Makefile 2011-02-15 15:04:11 UTC (rev 13326) @@ -1,21 +1,62 @@ NAME = libmatroska -VERSION = 0.8.1 +VERSION = 1.1.0 CATEGORIES = lib DESCRIPTION = A C++ libary to parse Matroska files (.mkv and .mka) define BLURB endef -MASTER_SITES = http://dl.matroska.org/downloads/libmatroska/libmatroska-0.8.1.tar.bz2 -DISTFILES = $(NAME)-$(VERSION).tar.bz2 -PATCHFILES = libmatroska-shared-library.diff +MASTER_SITES = http://dl.matroska.org/downloads/libmatroska/ +DISTFILES += $(NAME)-$(VERSION).tar.bz2 +PATCHFILES += 0001-Adjust-for-Solaris-shared-library.patch + # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.bz2 -SPKG_SOURCEURL = http://www.matroska.org/ +VENDOR_URL = http://www.matroska.org/ -RUNTIME_DEP_PKGS = CSWlibebml +PACKAGES += CSWlibmatroska +CATALOGNAME_CSWlibmatroska = libmatroska +SPKG_DESC_CSWlibmatroska = Transitional package as contents moved to CSWlibmatroska3 +RUNTIME_DEP_PKGS_CSWlibmatroska += CSWlibmatroska3 +CHECKPKG_OVERRIDES_CSWlibmatroska += surplus-dependency|CSWlibmatroska3 +PKGFILES_CSWlibmatroska = NOFILES +ARCHALL_CSWlibmatroska = 1 + +PACKAGES += CSWlibmatroska-dev +CATALOGNAME_CSWlibmatroska-dev = libmatroska_dev +SPKG_DESC_CSWlibmatroska-dev = Development files for libmatroska +RUNTIME_DEP_PKGS_CSWlibmatroska-dev = CSWlibmatroska3 + +PACKAGES += CSWlibmatroska3 +CATALOGNAME_CSWlibmatroska3 = libmatroska3 +SPKG_DESC_CSWlibmatroska3 = Library for Extensible Binary Meta Language providing libmatroska.so.3 +PKGFILES_CSWlibmatroska3 = $(call baseisadirs,$(libdir),libmatroska\.so\.3(\.\d+)*) + +# These will go away after libebml has been released. We must release +# matroska and ebml at the same time as I missed out setting a SONAME in libebml +# which is references as simple .so by matroska ATM +CHECKPKG_OVERRIDES_CSWlibmatroska3 += unidentified-dependency|CSWlibebml3 +CHECKPKG_OVERRIDES_CSWlibmatroska3 += soname-not-found|libebml.so.3|is|needed|by|opt/csw/lib/libmatroska.so.3 +CHECKPKG_OVERRIDES_CSWlibmatroska3 += soname-not-found|libebml.so.3|is|needed|by|opt/csw/lib/amd64/libmatroska.so.3 +CHECKPKG_OVERRIDES_CSWlibmatroska3 += surplus-dependency|CSWlibebml3 + +LICENSE = LICENSE.LGPL + +BUILD64 = 1 +NOISALIST = 1 + +CONFIGURE_SCRIPTS = + +# Needed for shared library +EXTRA_CFLAGS = -xcode=pic32 +EXTRA_CXXFLAGS = -xcode=pic32 + +EXTRA_LINKER_FLAGS = -norunpath + + +RUNTIME_DEP_PKGS = CSWlibebml3 BUILD_DEP_PKGS = $(RUNTIME_DEP_PKGS) BUILD64 = 1 Modified: csw/mgar/pkg/libmatroska/trunk/checksums =================================================================== --- csw/mgar/pkg/libmatroska/trunk/checksums 2011-02-15 14:27:47 UTC (rev 13325) +++ csw/mgar/pkg/libmatroska/trunk/checksums 2011-02-15 15:04:11 UTC (rev 13326) @@ -1,2 +1 @@ -20cf624ace0c58a54c7752eebfbc0b19 libmatroska-0.8.1.tar.bz2 -154440024a5596dc63e4ec24ded01f24 libmatroska-shared-library.diff +21e5ee3e2573f0ae99db195348bdfb98 libmatroska-1.1.0.tar.bz2 Added: csw/mgar/pkg/libmatroska/trunk/files/0001-Adjust-for-Solaris-shared-library.patch =================================================================== --- csw/mgar/pkg/libmatroska/trunk/files/0001-Adjust-for-Solaris-shared-library.patch (rev 0) +++ csw/mgar/pkg/libmatroska/trunk/files/0001-Adjust-for-Solaris-shared-library.patch 2011-02-15 15:04:11 UTC (rev 13326) @@ -0,0 +1,25 @@ +From 9fb15795d72adaee45cb3e09fc2533c45769672c Mon Sep 17 00:00:00 2001 +From: Dagobert Michelsen +Date: Tue, 15 Feb 2011 15:42:11 +0100 +Subject: [PATCH] Adjust for Solaris shared library + +--- + make/linux/Makefile | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/make/linux/Makefile b/make/linux/Makefile +index 7685094..e58e378 100644 +--- a/make/linux/Makefile ++++ b/make/linux/Makefile +@@ -99,7 +99,7 @@ $(LIBRARY): $(objects) + $(RANLIB) $@ + + $(LIBRARY_SO): $(objects_so) +- $(CXX) -shared -Wl,-soname,$(LIBRARY_SO_VER) -o $(LIBRARY_SO_VER) $(objects_so) -lebml ++ $(CXX) -G $(LDFLAGS) -h $(LIBRARY_SO_VER) -o $(LIBRARY_SO_VER) $(objects_so) -lebml + rm -f $(LIBRARY_SO) + ln -s $(LIBRARY_SO_VER) $(LIBRARY_SO) + +-- +1.7.3.2 + Deleted: csw/mgar/pkg/libmatroska/trunk/files/libmatroska-shared-library.diff =================================================================== --- csw/mgar/pkg/libmatroska/trunk/files/libmatroska-shared-library.diff 2011-02-15 14:27:47 UTC (rev 13325) +++ csw/mgar/pkg/libmatroska/trunk/files/libmatroska-shared-library.diff 2011-02-15 15:04:11 UTC (rev 13326) @@ -1,12 +0,0 @@ -diff -Naur libmatroska-0.8.1.orig/make/linux/Makefile libmatroska-0.8.1.patched/make/linux/Makefile ---- libmatroska-0.8.1.orig/make/linux/Makefile 2006-06-02 16:32:52.000000000 +0200 -+++ libmatroska-0.8.1.patched/make/linux/Makefile 2009-10-08 14:19:53.080322384 +0200 -@@ -102,7 +102,7 @@ - $(RANLIB) $@ - - $(LIBRARY_SO): $(objects_so) -- $(CXX) -shared -Wl,-soname,$(LIBRARY_SO_VER) -o $(LIBRARY_SO_VER) $(objects_so) -lebml -+ $(CXX) -G $(LDFLAGS) -o $(LIBRARY_SO_VER) $(objects_so) -lebml - rm -f $(LIBRARY_SO) - ln -s $(LIBRARY_SO_VER) $(LIBRARY_SO) - This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Wed Feb 16 05:08:06 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Wed, 16 Feb 2011 04:08:06 +0000 Subject: [csw-devel] SF.net SVN: gar:[13327] csw/mgar/pkg/cswclassutils/trunk/files/ CSWcswclassutils.i.cswetcservices Message-ID: Revision: 13327 http://gar.svn.sourceforge.net/gar/?rev=13327&view=rev Author: bdwalton Date: 2011-02-16 04:08:06 +0000 (Wed, 16 Feb 2011) Log Message: ----------- cswclassutils/trunk/files: use standard grep instead of xpg4 in cswetcservices registration Modified Paths: -------------- csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.i.cswetcservices Modified: csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.i.cswetcservices =================================================================== --- csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.i.cswetcservices 2011-02-15 15:04:11 UTC (rev 13326) +++ csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.i.cswetcservices 2011-02-16 04:08:06 UTC (rev 13327) @@ -19,7 +19,7 @@ svcfile=/etc/services - /usr/xpg4/bin/grep -v "^#" $dest | while read svc; do + /usr/bin/grep -v "^#" $dest | while read svc; do set -- $svc svcname=$1 port_proto=$2 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 16 09:43:31 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 16 Feb 2011 08:43:31 +0000 Subject: [csw-devel] SF.net SVN: gar:[13328] csw/mgar/pkg/xz/trunk Message-ID: Revision: 13328 http://gar.svn.sourceforge.net/gar/?rev=13328&view=rev Author: dmichelsen Date: 2011-02-16 08:43:31 +0000 (Wed, 16 Feb 2011) Log Message: ----------- xz: Update to 5.0.1 Modified Paths: -------------- csw/mgar/pkg/xz/trunk/Makefile csw/mgar/pkg/xz/trunk/checksums Modified: csw/mgar/pkg/xz/trunk/Makefile =================================================================== --- csw/mgar/pkg/xz/trunk/Makefile 2011-02-16 04:08:06 UTC (rev 13327) +++ csw/mgar/pkg/xz/trunk/Makefile 2011-02-16 08:43:31 UTC (rev 13328) @@ -1,5 +1,5 @@ NAME = xz -VERSION = 4.999.9beta +VERSION = 5.0.1 CATEGORIES = utils DESCRIPTION = XZ Utils is free data compression software with high compression ratio @@ -11,23 +11,38 @@ endef MASTER_SITES = http://tukaani.org/xz/ -DISTFILES = $(NAME)-$(VERSION).tar.gz +DISTFILES = $(NAME)-$(VERSION).tar.bz2 PATCHFILES = 0001-Do-not-force-inclusion-of-stdint.h.patch # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz -PACKAGES = CSWxz CSWlzma +PACKAGES += CSWxz +CATALOGNAME_CSWxz = xz +SPKG_DESC_CSWxz = $(DESCRIPTION) +RUNTIME_DEP_PKGS_CSWxz += CSWggettextrt +RUNTIME_DEP_PKGS_CSWxz += CSWliblzma5 -CATALOGNAME_CSWxz = xz +PACKAGES += CSWlzma CATALOGNAME_CSWlzma = lzma - -SPKG_DESC_CSWxz = $(DESCRIPTION) SPKG_DESC_CSWlzma = Stub to the successor xz - -RUNTIME_DEP_PKGS_CSWxz = CSWggettextrt CSWgcc4corert RUNTIME_DEP_PKGS_CSWlzma = CSWxz +CHECKPKG_OVERRIDES_CSWlzma += surplus-dependency|CSWxz +PKGFILES_CSWlzma = NOFILES +ARCHALL_CSWlzma = 1 +PACKAGES += CSWliblzma5 +CATALOGNAME_CSWliblzma5 = liblzma5 +SPKG_DESC_CSWliblzma5 = LZMA Compression Library providing liblzma.so.5 +PKGFILES_CSWliblzma5 = $(call baseisadirs,$(libdir),liblzma\.so\.5(\.\d+)*) +RUNTIME_DEP_PKGS_CSWliblzma5 += CSWgcc4corert + +PACKAGES += CSWliblzma-dev +CATALOGNAME_CSWliblzma-dev = liblzma_dev +SPKG_DESC_CSWliblzma-dev = Development Files for liblzma +PKGFILES_CSWliblzma-dev = $(PKGFILES_DEVEL) +RUNTIME_DEP_PKGS_CSWliblzma-dev += CSWliblzma5 + GARCOMPILER = GNU BUILD64 = 1 @@ -48,7 +63,4 @@ # not able to figure out which target runs the tests in "tests" TEST_TARGET = check -ARCHALL_CSWlzma = 1 -PKGFILES_CSWlzma = NOMATCH - include gar/category.mk Modified: csw/mgar/pkg/xz/trunk/checksums =================================================================== --- csw/mgar/pkg/xz/trunk/checksums 2011-02-16 04:08:06 UTC (rev 13327) +++ csw/mgar/pkg/xz/trunk/checksums 2011-02-16 08:43:31 UTC (rev 13328) @@ -1,2 +1 @@ -013b623b0f4f46adf992e44123cec1bc 0001-Do-not-force-inclusion-of-stdint.h.patch -f2073579b6da2fe35d453adee1aaf1b2 xz-4.999.9beta.tar.gz +cb6c7a58cec4d663a395c54d186ca0c6 xz-5.0.1.tar.bz2 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 16 11:09:37 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 16 Feb 2011 10:09:37 +0000 Subject: [csw-devel] SF.net SVN: gar:[13329] csw/mgar/pkg/ncftp/trunk Message-ID: Revision: 13329 http://gar.svn.sourceforge.net/gar/?rev=13329&view=rev Author: dmichelsen Date: 2011-02-16 10:09:37 +0000 (Wed, 16 Feb 2011) Log Message: ----------- ncftp: Update to 3.2.5 Modified Paths: -------------- csw/mgar/pkg/ncftp/trunk/Makefile csw/mgar/pkg/ncftp/trunk/checksums Modified: csw/mgar/pkg/ncftp/trunk/Makefile =================================================================== --- csw/mgar/pkg/ncftp/trunk/Makefile 2011-02-16 08:43:31 UTC (rev 13328) +++ csw/mgar/pkg/ncftp/trunk/Makefile 2011-02-16 10:09:37 UTC (rev 13329) @@ -1,5 +1,5 @@ NAME = ncftp -VERSION = 3.2.4 +VERSION = 3.2.5 CATEGORIES = net DESCRIPTION = File Transfer Protocol (FTP) client applications. @@ -29,4 +29,7 @@ # gtar *is* needed CHECKPKG_OVERRIDES_CSWncftp += surplus-dependency|CSWgtar +# The occurrence of /usr/local is an example location of a tarfile and therefore ok +CHECKPKG_OVERRIDES_CSWncftp += file-with-bad-content|/usr/local|root/opt/csw/share/man/man1/ncftpput.1 + include gar/category.mk Modified: csw/mgar/pkg/ncftp/trunk/checksums =================================================================== --- csw/mgar/pkg/ncftp/trunk/checksums 2011-02-16 08:43:31 UTC (rev 13328) +++ csw/mgar/pkg/ncftp/trunk/checksums 2011-02-16 10:09:37 UTC (rev 13329) @@ -1 +1 @@ -bfb7c5a29d769cc1054ae9cbbabd9e94 ncftp-3.2.4-src.tar.bz2 +b05c7a6d5269c04891f02f43d4312b30 ncftp-3.2.5-src.tar.bz2 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 16 13:16:43 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 16 Feb 2011 12:16:43 +0000 Subject: [csw-devel] SF.net SVN: gar:[13330] csw/mgar/pkg/lzo/trunk Message-ID: Revision: 13330 http://gar.svn.sourceforge.net/gar/?rev=13330&view=rev Author: dmichelsen Date: 2011-02-16 12:16:43 +0000 (Wed, 16 Feb 2011) Log Message: ----------- lzo: Update to 2.04 and split packages Modified Paths: -------------- csw/mgar/pkg/lzo/trunk/Makefile csw/mgar/pkg/lzo/trunk/checksums Modified: csw/mgar/pkg/lzo/trunk/Makefile =================================================================== --- csw/mgar/pkg/lzo/trunk/Makefile 2011-02-16 10:09:37 UTC (rev 13329) +++ csw/mgar/pkg/lzo/trunk/Makefile 2011-02-16 12:16:43 UTC (rev 13330) @@ -1,5 +1,5 @@ NAME = lzo -VERSION = 2.03 +VERSION = 2.04 CATEGORIES = utils DESCRIPTION = LZO compression library @@ -13,6 +13,24 @@ # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES += CSWlzo +CATALOGNAME_CSWlzo = lzo +SPKG_DESC_CSWlzo = Transitional package as contents moved to CSWliblzo2-2 +CHECKPKG_OVERRIDES_CSWlzo += surplus-dependency|CSWliblzo2-2 +PKGFILES_CSWlzo = NOFILES +ARCHALL_CSWlzo = 1 + +PACKAGES += CSWlzo-dev +CATALOGNAME_CSWlzo-dev = lzo_dev +SPKG_DESC_CSWlzo-dev = Development files for liblzo2.so.2 +RUNTIME_DEP_PKGS_CSWlzo-dev = CSWliblzo2-2 +# PKGFILES is catchall + +PACKAGES += CSWliblzo2-2 +CATALOGNAME_CSWliblzo2-2 = liblzo2_2 +SPKG_DESC_CSWliblzo2-2 = Library for LZO compression providing liblzo2.so.2 +PKGFILES_CSWliblzo2-2 = $(call baseisadirs,$(libdir),liblzo2\.so\.2(\.\d+)*) + VENDOR_URL = http://www.oberhumer.com/opensource/lzo/ CONFIGURE_ARGS_isa-amd64 = --disable-asm Modified: csw/mgar/pkg/lzo/trunk/checksums =================================================================== --- csw/mgar/pkg/lzo/trunk/checksums 2011-02-16 10:09:37 UTC (rev 13329) +++ csw/mgar/pkg/lzo/trunk/checksums 2011-02-16 12:16:43 UTC (rev 13330) @@ -1 +1 @@ -0c3d078c2e8ea5a88971089a2f02a726 lzo-2.03.tar.gz +a383c7055a310e2a71b9ecd19cfea238 lzo-2.04.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 16 13:28:40 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 16 Feb 2011 12:28:40 +0000 Subject: [csw-devel] SF.net SVN: gar:[13331] csw/mgar/pkg/lzo/trunk/Makefile Message-ID: Revision: 13331 http://gar.svn.sourceforge.net/gar/?rev=13331&view=rev Author: dmichelsen Date: 2011-02-16 12:28:40 +0000 (Wed, 16 Feb 2011) Log Message: ----------- lzo: Adjust name of development package to match library package Modified Paths: -------------- csw/mgar/pkg/lzo/trunk/Makefile Modified: csw/mgar/pkg/lzo/trunk/Makefile =================================================================== --- csw/mgar/pkg/lzo/trunk/Makefile 2011-02-16 12:16:43 UTC (rev 13330) +++ csw/mgar/pkg/lzo/trunk/Makefile 2011-02-16 12:28:40 UTC (rev 13331) @@ -20,10 +20,10 @@ PKGFILES_CSWlzo = NOFILES ARCHALL_CSWlzo = 1 -PACKAGES += CSWlzo-dev -CATALOGNAME_CSWlzo-dev = lzo_dev -SPKG_DESC_CSWlzo-dev = Development files for liblzo2.so.2 -RUNTIME_DEP_PKGS_CSWlzo-dev = CSWliblzo2-2 +PACKAGES += CSWliblzo-dev +CATALOGNAME_CSWliblzo-dev = liblzo_dev +SPKG_DESC_CSWliblzo-dev = Development files for liblzo2.so.2 +RUNTIME_DEP_PKGS_CSWliblzo-dev = CSWliblzo2-2 # PKGFILES is catchall PACKAGES += CSWliblzo2-2 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 16 13:30:34 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 16 Feb 2011 12:30:34 +0000 Subject: [csw-devel] SF.net SVN: gar:[13332] csw/mgar/pkg/sqlite3/trunk Message-ID: Revision: 13332 http://gar.svn.sourceforge.net/gar/?rev=13332&view=rev Author: dmichelsen Date: 2011-02-16 12:30:34 +0000 (Wed, 16 Feb 2011) Log Message: ----------- sqlite3: Update to 3070500 and split package Modified Paths: -------------- csw/mgar/pkg/sqlite3/trunk/Makefile csw/mgar/pkg/sqlite3/trunk/checksums Removed Paths: ------------- csw/mgar/pkg/sqlite3/trunk/files/gar-base.diff csw/mgar/pkg/sqlite3/trunk/files/shell.c.diff Modified: csw/mgar/pkg/sqlite3/trunk/Makefile =================================================================== --- csw/mgar/pkg/sqlite3/trunk/Makefile 2011-02-16 12:28:40 UTC (rev 13331) +++ csw/mgar/pkg/sqlite3/trunk/Makefile 2011-02-16 12:30:34 UTC (rev 13332) @@ -1,6 +1,6 @@ -NAME = sqlite3 -VERSION = 3.7.2 -CATEGORIES = lib +NAME = sqlite3 +VERSION = 3070500 +CATEGORIES = lib DESCRIPTION = An embeddable SQL engine in a C library define BLURB @@ -10,46 +10,54 @@ # Download informations MASTER_SITES = http://sqlite.org/ -DISTNAME = sqlite-$(VERSION) -DISTFILES = $(DISTNAME).tar.gz +DISTNAME = sqlite-autoconf-$(VERSION) +DISTFILES += $(DISTNAME).tar.gz DISTFILES += copyright-release.html LICENSE = copyright-release.html -PATCHFILES = gar-base.diff -PATCHFILES += shell.c.diff - # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = sqlite-(\d+(?:\.\d+)*).tar.gz -PACKAGES = CSWsqlite3 CSWsqlite3rt CSWsqlite3devel - +PACKAGES += CSWsqlite3 CATALOGNAME_CSWsqlite3 = sqlite3 -CATALOGNAME_CSWsqlite3rt = sqlite3_rt -CATALOGNAME_CSWsqlite3devel = sqlite3_devel - SPKG_DESC_CSWsqlite3 = $(DESCRIPTION) -SPKG_DESC_CSWsqlite3rt = $(SPKG_DESC_CSWsqlite3) runtime -SPKG_DESC_CSWsqlite3devel = $(SPKG_DESC_CSWsqlite3) development package - PKGFILES_CSWsqlite3 = $(bindir)/.* -PKGFILES_CSWsqlite3devel = $(PKGFILES_DEVEL) - -RUNTIME_DEP_PKGS_CSWsqlite3 = CSWsqlite3rt +RUNTIME_DEP_PKGS_CSWsqlite3 += CSWlibsqlite3-0 RUNTIME_DEP_PKGS_CSWsqlite3 += CSWreadline -RUNTIME_DEP_PKGS_CSWsqlite3 += CSWncurses -BUILD_DEP_PKGS = CSWreadline CSWncurses +PACKAGES += CSWlibsqlite3-0 +CATALOGNAME_CSWlibsqlite3-0 = libsqlite3_0 +SPKG_DESC_CSWlibsqlite3-0 = SQLite library providing libsqlite3.so.0 +PKGFILES_CSWlibsqlite3-0 = $(call baseisadirs,$(libdir),libsqlite3\.so\.0(\.\d+)*) +PACKAGES += CSWlibsqlite3-dev +CATALOGNAME_CSWlibsqlite3-dev = libsqlite3_dev +SPKG_DESC_CSWlibsqlite3-dev = Development files for libsqlite3.so +PKGFILES_CSWlibsqlite3-dev = $(PKGFILES_DEVEL) +RUNTIME_DEP_PKGS_CSWlibsqlite3-dev = CSWlibsqlite3-0 + +PACKAGES += CSWsqlite3rt +CATALOGNAME_CSWsqlite3rt = sqlite3_rt +SPKG_DESC_CSWsqlite3rt = Transitional package as contents moved to CSWlibsqlite3-0 +RUNTIME_DEP_PKGS_CSWsqlite3rt = CSWlibsqlite3-0 +CHECKPKG_OVERRIDES_CSWsqlite3rt += surplus-dependency|CSWlibsqlite3-0 +PKGFILES_CSWsqlite3rt = NOFILES +ARCHALL_CSWsqlite3rt = 1 + +PACKAGES += CSWsqlite3devel +CATALOGNAME_CSWsqlite3devel = sqlite3_devel +SPKG_DESC_CSWsqlite3devel = Transitional package as contents moved to CSWlibsqlite3-dev +PKGFILES_CSWsqlite3devel = NOFILES + +BUILD_DEP_PKGS += CSWreadline + BUILD64 = 1 NOISAEXEC = 1 -# Make configure options CONFIGURE_ARGS = $(DIRPATHS) -CONFIGURE_ARGS += --enable-threadsafe --disable-debug --disable-tcl -CONFIGURE_ARGS += --with-readline-inc="-I/opt/csw/include/readline" -TEST_SCRIPTS = +TEST_TARGET = check include gar/category.mk Modified: csw/mgar/pkg/sqlite3/trunk/checksums =================================================================== --- csw/mgar/pkg/sqlite3/trunk/checksums 2011-02-16 12:28:40 UTC (rev 13331) +++ csw/mgar/pkg/sqlite3/trunk/checksums 2011-02-16 12:30:34 UTC (rev 13332) @@ -1,4 +1,2 @@ fc9432136482bcde03102bc3e06dd413 copyright-release.html -80d638505872be7ffa238d43f0e268b2 gar-base.diff -1a2be927ceacfa534501b9f4675bce83 shell.c.diff -5f1853c4c1eba3330b6104f274918673 sqlite-3.7.2.tar.gz +a9604a82613ade2e7f4c303f233e477f sqlite-autoconf-3070500.tar.gz Deleted: csw/mgar/pkg/sqlite3/trunk/files/gar-base.diff =================================================================== --- csw/mgar/pkg/sqlite3/trunk/files/gar-base.diff 2011-02-16 12:28:40 UTC (rev 13331) +++ csw/mgar/pkg/sqlite3/trunk/files/gar-base.diff 2011-02-16 12:30:34 UTC (rev 13332) @@ -1,11 +0,0 @@ -diff -Naur sqlite3.orig/src/tclsqlite.c sqlite3.patched/src/tclsqlite.c ---- sqlite3.orig/src/tclsqlite.c 2008-10-14 20:07:41.000000000 +0200 -+++ sqlite3.patched/src/tclsqlite.c 2008-11-07 23:14:32.334719000 +0100 -@@ -16,6 +16,7 @@ - */ - #include "tcl.h" - #include -+#include "../tsrc/sqlite3.h" - - /* - ** Some additional include files are needed if this file is not Deleted: csw/mgar/pkg/sqlite3/trunk/files/shell.c.diff =================================================================== --- csw/mgar/pkg/sqlite3/trunk/files/shell.c.diff 2011-02-16 12:28:40 UTC (rev 13331) +++ csw/mgar/pkg/sqlite3/trunk/files/shell.c.diff 2011-02-16 12:30:34 UTC (rev 13332) @@ -1,12 +0,0 @@ -diff -Naur sqlite3.orig/src/shell.c sqlite3/src/shell.c ---- sqlite3.orig/src/shell.c 2009-07-16 21:40:17.209832620 +0200 -+++ sqlite3/src/shell.c 2009-07-16 21:44:23.666390427 +0200 -@@ -23,7 +23,7 @@ - #include - #include - #include --#include "sqlite3.h" -+#include "../sqlite3.h" - #include - #include - This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Wed Feb 16 17:32:04 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Wed, 16 Feb 2011 16:32:04 +0000 Subject: [csw-devel] SF.net SVN: gar:[13333] csw/mgar/gar/v2/lib/python/rest.py Message-ID: Revision: 13333 http://gar.svn.sourceforge.net/gar/?rev=13333&view=rev Author: wahwah Date: 2011-02-16 16:32:03 +0000 (Wed, 16 Feb 2011) Log Message: ----------- csw-upload-pkg: Rest client url bugfix There was a wrong URL that the rest client was using, and it was causing it to think that packages are always missing from the catalogs. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/rest.py Modified: csw/mgar/gar/v2/lib/python/rest.py =================================================================== --- csw/mgar/gar/v2/lib/python/rest.py 2011-02-16 12:30:34 UTC (rev 13332) +++ csw/mgar/gar/v2/lib/python/rest.py 2011-02-16 16:32:03 UTC (rev 13333) @@ -50,7 +50,7 @@ def Srv4ByCatalogAndCatalogname(self, catrel, arch, osrel, catalogname): """Returns a srv4 data structure or None if not found.""" url = BASE_URL + ( - "/catalogs/%s/%s/%s/%s/" + "/catalogs/%s/%s/%s/catalognames/%s/" % (catrel, arch, osrel, catalogname)) logging.debug("Srv4ByCatalogAndCatalogname(): GET %s", url) try: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Wed Feb 16 17:33:25 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Wed, 16 Feb 2011 16:33:25 +0000 Subject: [csw-devel] SF.net SVN: gar:[13334] csw/mgar/gar/v2/lib Message-ID: Revision: 13334 http://gar.svn.sourceforge.net/gar/?rev=13334&view=rev Author: wahwah Date: 2011-02-16 16:33:25 +0000 (Wed, 16 Feb 2011) Log Message: ----------- pkgdb-web: Return 'null' when package not found This way, we can distinguish the case of a package not in catalog from a case of using a wrong URL. A JSON 'null' translates to Python None, which evaluates as boolean false. This way we know there's no package. When a HTTP 404 error is thrown, it means that the URL used is wrong. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/rest.py csw/mgar/gar/v2/lib/web/pkgdb_web.py Modified: csw/mgar/gar/v2/lib/python/rest.py =================================================================== --- csw/mgar/gar/v2/lib/python/rest.py 2011-02-16 16:32:03 UTC (rev 13333) +++ csw/mgar/gar/v2/lib/python/rest.py 2011-02-16 16:33:25 UTC (rev 13334) @@ -53,9 +53,7 @@ "/catalogs/%s/%s/%s/catalognames/%s/" % (catrel, arch, osrel, catalogname)) logging.debug("Srv4ByCatalogAndCatalogname(): GET %s", url) - try: - data = urllib2.urlopen(url).read() - return json.loads(data) - except urllib2.HTTPError, e: - logging.warning("%s -- %s", url, e) - return None + # The server is no longer returning 404 when the package is absent. If + # a HTTP error code is returned, we're letting the application fail. + data = urllib2.urlopen(url).read() + return json.loads(data) Modified: csw/mgar/gar/v2/lib/web/pkgdb_web.py =================================================================== --- csw/mgar/gar/v2/lib/web/pkgdb_web.py 2011-02-16 16:32:03 UTC (rev 13333) +++ csw/mgar/gar/v2/lib/web/pkgdb_web.py 2011-02-16 16:33:25 UTC (rev 13334) @@ -296,10 +296,10 @@ mimetype, data = srv4.GetRestRepr() web.header('Content-type', mimetype) return json.dumps(data) - except ( - sqlobject.main.SQLObjectNotFound, - sqlobject.dberrors.OperationalError), e: - raise web.notfound() + except sqlobject.main.SQLObjectNotFound: + return json.dumps(None) + except sqlobject.dberrors.OperationalError, e: + raise web.internalerror(e) web.webapi.internalerror = web.debugerror This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Wed Feb 16 17:33:58 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Wed, 16 Feb 2011 16:33:58 +0000 Subject: [csw-devel] SF.net SVN: gar:[13335] csw/mgar/gar/v2/lib/python/csw_upload_pkg.py Message-ID: Revision: 13335 http://gar.svn.sourceforge.net/gar/?rev=13335&view=rev Author: wahwah Date: 2011-02-16 16:33:58 +0000 (Wed, 16 Feb 2011) Log Message: ----------- csw-upload-pkg: Added a missing import Modified Paths: -------------- csw/mgar/gar/v2/lib/python/csw_upload_pkg.py Modified: csw/mgar/gar/v2/lib/python/csw_upload_pkg.py =================================================================== --- csw/mgar/gar/v2/lib/python/csw_upload_pkg.py 2011-02-16 16:33:25 UTC (rev 13334) +++ csw/mgar/gar/v2/lib/python/csw_upload_pkg.py 2011-02-16 16:33:58 UTC (rev 13335) @@ -17,6 +17,7 @@ import common_constants import socket import rest +import struct_util BASE_URL = "http://buildfarm.opencsw.org/releases/" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Wed Feb 16 17:34:31 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Wed, 16 Feb 2011 16:34:31 +0000 Subject: [csw-devel] SF.net SVN: gar:[13336] csw/mgar/gar/v2/lib/python/csw_upload_pkg.py Message-ID: Revision: 13336 http://gar.svn.sourceforge.net/gar/?rev=13336&view=rev Author: wahwah Date: 2011-02-16 16:34:31 +0000 (Wed, 16 Feb 2011) Log Message: ----------- csw-upload-pkg: Better on-screen messages Providing an information about not inserting a package into a specific catalog. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/csw_upload_pkg.py Modified: csw/mgar/gar/v2/lib/python/csw_upload_pkg.py =================================================================== --- csw/mgar/gar/v2/lib/python/csw_upload_pkg.py 2011-02-16 16:33:58 UTC (rev 13335) +++ csw/mgar/gar/v2/lib/python/csw_upload_pkg.py 2011-02-16 16:34:31 UTC (rev 13336) @@ -159,6 +159,13 @@ logging.debug("%s %s %s", catrel, arch, osrel) srv4_in_catalog = self._rest_client.Srv4ByCatalogAndCatalogname( catrel, arch, osrel, catalogname) + if srv4_in_catalog: + logging.debug("Catalog %s %s contains version %s of the %s package", + arch, osrel, srv4_in_catalog["osrel"], catalogname) + else: + logging.debug( + "Catalog %a %s does not contain any version of the % package.", + arch, osrel, catalogname) if not srv4_in_catalog or srv4_in_catalog["osrel"] == srv4_osrel: # The same architecture as our package, meaning that we can insert # the same architecture into the catalog. @@ -166,11 +173,16 @@ or (self.os_release and osrel == self.os_release)): catalogs.append((catrel, arch, osrel)) else: - if self.os_release and osrel == self.os_release: - catalogs.append((catrel, arch, osrel)) logging.debug( "Catalog %s %s %s has another version of %s.", catrel, arch, osrel, catalogname) + if self.os_release and osrel == self.os_release: + logging.debug("OS release specified and matches %s.", osrel) + catalogs.append((catrel, arch, osrel)) + else: + logging.info( + "Not inserting %s package into %s containing a %s package", + srv4_osrel, osrel, srv4_in_catalog["osrel"]) return tuple(catalogs) def _UploadFile(self, filename): This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Wed Feb 16 17:35:03 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Wed, 16 Feb 2011 16:35:03 +0000 Subject: [csw-devel] SF.net SVN: gar:[13337] csw/mgar/gar/v2/lib/python/opencsw_test.py Message-ID: Revision: 13337 http://gar.svn.sourceforge.net/gar/?rev=13337&view=rev Author: wahwah Date: 2011-02-16 16:35:03 +0000 (Wed, 16 Feb 2011) Log Message: ----------- submitpkg: A test for the 'p' flag in version Modified Paths: -------------- csw/mgar/gar/v2/lib/python/opencsw_test.py Modified: csw/mgar/gar/v2/lib/python/opencsw_test.py =================================================================== --- csw/mgar/gar/v2/lib/python/opencsw_test.py 2011-02-16 16:34:31 UTC (rev 13336) +++ csw/mgar/gar/v2/lib/python/opencsw_test.py 2011-02-16 16:35:03 UTC (rev 13337) @@ -224,7 +224,19 @@ hash(result[2]['extra_strings']) self.assertEqual(expected, opencsw.ParseVersionString(data)) + def testThePflag(self): + data = "1.6.0,p,REV=2011.02.14" + expected = ( + '1.6.0', + { + 'minor version': '6', + 'patchlevel': '0', + 'major version': '1'}, + {'extra_strings': ('p',), + 'REV': '2011.02.14'}) + self.assertEqual(expected, opencsw.ParseVersionString(data)) + class CompareVersionsTest(unittest.TestCase): V1 = "1.8.1,REV=2010.07.13" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Wed Feb 16 17:35:37 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Wed, 16 Feb 2011 16:35:37 +0000 Subject: [csw-devel] SF.net SVN: gar:[13338] csw/mgar/gar/v2/lib/python/pkgdb.py Message-ID: Revision: 13338 http://gar.svn.sourceforge.net/gar/?rev=13338&view=rev Author: wahwah Date: 2011-02-16 16:35:36 +0000 (Wed, 16 Feb 2011) Log Message: ----------- pkgdb: Don't die on a pkg insert problem When insertion of a package into a catalog errors out, don't die, but catch the exception and log it. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/pkgdb.py Modified: csw/mgar/gar/v2/lib/python/pkgdb.py =================================================================== --- csw/mgar/gar/v2/lib/python/pkgdb.py 2011-02-16 16:35:03 UTC (rev 13337) +++ csw/mgar/gar/v2/lib/python/pkgdb.py 2011-02-16 16:35:36 UTC (rev 13338) @@ -298,9 +298,15 @@ sqo_srv4.basename) stats = sqo_srv4.GetStatsStruct() package_stats.PackageStats.ImportPkg(stats, True) - db_catalog.AddSrv4ToCatalog( - sqo_srv4, osrel, arch, catrel) + try: + db_catalog.AddSrv4ToCatalog( + sqo_srv4, osrel, arch, catrel) + except checkpkg_lib.CatalogDatabaseError, e: + logging.warning( + "Could not insert %s (%s) into the database. %s", + sqo_srv4.basename, sqo_srv4.md5_sum, e) + def SyncFromCatalogTree(self, catrel, base_dir, force_unpack=False): logging.debug("SyncFromCatalogTree(%s, %s, force_unpack=%s)", repr(catrel), repr(base_dir), force_unpack) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Wed Feb 16 17:36:10 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Wed, 16 Feb 2011 16:36:10 +0000 Subject: [csw-devel] SF.net SVN: gar:[13339] csw/mgar/gar/v2/lib/python/pkgdb.py Message-ID: Revision: 13339 http://gar.svn.sourceforge.net/gar/?rev=13339&view=rev Author: wahwah Date: 2011-02-16 16:36:09 +0000 (Wed, 16 Feb 2011) Log Message: ----------- pkgdb: Don't display a warning on autoregistering Redice warning inflation, by moving a message to debug level. When importing a catalog tree, implicit imports are normal. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/pkgdb.py Modified: csw/mgar/gar/v2/lib/python/pkgdb.py =================================================================== --- csw/mgar/gar/v2/lib/python/pkgdb.py 2011-02-16 16:35:36 UTC (rev 13338) +++ csw/mgar/gar/v2/lib/python/pkgdb.py 2011-02-16 16:36:09 UTC (rev 13339) @@ -293,7 +293,7 @@ # If a package was previously examined, but not registered, we need to # register it now, to allow inclusion in a catalog. if not sqo_srv4.registered: - logging.warning( + logging.debug( "Package %s was not registered for releases. Registering it.", sqo_srv4.basename) stats = sqo_srv4.GetStatsStruct() This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 16 17:38:49 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 16 Feb 2011 16:38:49 +0000 Subject: [csw-devel] SF.net SVN: gar:[13340] csw/mgar/pkg/libogg/trunk Message-ID: Revision: 13340 http://gar.svn.sourceforge.net/gar/?rev=13340&view=rev Author: dmichelsen Date: 2011-02-16 16:38:48 +0000 (Wed, 16 Feb 2011) Log Message: ----------- libogg: Update to 1.2.2 and split off library Modified Paths: -------------- csw/mgar/pkg/libogg/trunk/Makefile csw/mgar/pkg/libogg/trunk/checksums Modified: csw/mgar/pkg/libogg/trunk/Makefile =================================================================== --- csw/mgar/pkg/libogg/trunk/Makefile 2011-02-16 16:36:09 UTC (rev 13339) +++ csw/mgar/pkg/libogg/trunk/Makefile 2011-02-16 16:38:48 UTC (rev 13340) @@ -1,5 +1,5 @@ NAME = libogg -VERSION = 1.2.0 +VERSION = 1.2.2 CATEGORIES = lib DESCRIPTION = Ogg bitstream format support library @@ -9,16 +9,35 @@ endef MASTER_SITES = http://downloads.xiph.org/releases/ogg/ -DISTFILES = $(NAME)-$(VERSION).tar.gz +DISTFILES = $(NAME)-$(VERSION).tar.xz # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES += CSWlibogg +CATALOGNAME_CSWlibogg = libogg +SPKG_DESC_CSWlibogg = Transitional package as contents moved to CSWlibogg0 +PKGFILES_CSWlibogg = NOFILES +ARCHALL_CSWlibogg = 1 +RUNTIME_DEP_PKGS_CSWlibogg = CSWlibogg0 +CHECKPKG_OVERRIDES_CSWlibogg += surplus-dependency|CSWlibogg0 + +PACKAGES += CSWlibogg0 +CATALOGNAME_CSWlibogg0 = libogg0 +SPKG_DESC_CSWlibogg0 = Ogg bitstream format support library providing libogg.so.0 +PKGFILES_CSWlibogg0 = $(call baseisadirs,$(libdir),libogg\.so\.0(\.\d+)*) + +PACKAGES += CSWlibogg-dev +CATALOGNAME_CSWlibogg-dev = libogg_dev +SPKG_DESC_CSWlibogg-dev = Development files for libogg.so +RUNTIME_DEP_PKGS_CSWlibogg-dev = CSWlibogg0 + +VENDOR_URL = http://www.vorbis.com/ + BUILD64 = 1 CONFIGURE_ARGS = $(DIRPATHS) TEST_TARGET = check -SKIPTEST = 1 include gar/category.mk Modified: csw/mgar/pkg/libogg/trunk/checksums =================================================================== --- csw/mgar/pkg/libogg/trunk/checksums 2011-02-16 16:36:09 UTC (rev 13339) +++ csw/mgar/pkg/libogg/trunk/checksums 2011-02-16 16:38:48 UTC (rev 13340) @@ -1 +1 @@ -c95b73759acfc30712beef6ce4e88efa libogg-1.2.0.tar.gz +203c28a1d356b641253c960365e4cc48 libogg-1.2.2.tar.xz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Wed Feb 16 18:39:22 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Wed, 16 Feb 2011 17:39:22 +0000 Subject: [csw-devel] SF.net SVN: gar:[13341] csw/mgar/gar/v2/lib/python Message-ID: Revision: 13341 http://gar.svn.sourceforge.net/gar/?rev=13341&view=rev Author: wahwah Date: 2011-02-16 17:39:21 +0000 (Wed, 16 Feb 2011) Log Message: ----------- csw-upload-pkg: Implicitly overwrite 5.9 packages A suggestion from Peter Felecan: When uploading a 5.10 package, implicitly overwrite existing 5.9 packages in the 5.10 and 5.11 catalogs. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/csw_upload_pkg.py csw/mgar/gar/v2/lib/python/csw_upload_pkg_test.py Modified: csw/mgar/gar/v2/lib/python/csw_upload_pkg.py =================================================================== --- csw/mgar/gar/v2/lib/python/csw_upload_pkg.py 2011-02-16 16:38:48 UTC (rev 13340) +++ csw/mgar/gar/v2/lib/python/csw_upload_pkg.py 2011-02-16 17:39:21 UTC (rev 13341) @@ -154,9 +154,11 @@ archs = (srv4_arch,) catalogname = parsed_basename["catalogname"] catalogs = [] + first_cat_osrel_seen = None for arch in archs: for osrel in osrels: logging.debug("%s %s %s", catrel, arch, osrel) + cat_key = (catrel, arch, osrel) srv4_in_catalog = self._rest_client.Srv4ByCatalogAndCatalogname( catrel, arch, osrel, catalogname) if srv4_in_catalog: @@ -166,23 +168,27 @@ logging.debug( "Catalog %a %s does not contain any version of the % package.", arch, osrel, catalogname) - if not srv4_in_catalog or srv4_in_catalog["osrel"] == srv4_osrel: + if srv4_in_catalog and not first_cat_osrel_seen: + first_cat_osrel_seen = srv4_in_catalog["osrel"] + if (not srv4_in_catalog + or srv4_in_catalog["osrel"] == srv4_osrel + or srv4_in_catalog["osrel"] == first_cat_osrel_seen): # The same architecture as our package, meaning that we can insert # the same architecture into the catalog. if (not self.os_release or (self.os_release and osrel == self.os_release)): - catalogs.append((catrel, arch, osrel)) + catalogs.append(cat_key) else: - logging.debug( - "Catalog %s %s %s has another version of %s.", - catrel, arch, osrel, catalogname) if self.os_release and osrel == self.os_release: logging.debug("OS release specified and matches %s.", osrel) - catalogs.append((catrel, arch, osrel)) + catalogs.append(cat_key) else: logging.info( "Not inserting %s package into %s containing a %s package", srv4_osrel, osrel, srv4_in_catalog["osrel"]) + logging.debug( + "Catalog %s %s %s has another version of %s.", + catrel, arch, osrel, catalogname) return tuple(catalogs) def _UploadFile(self, filename): Modified: csw/mgar/gar/v2/lib/python/csw_upload_pkg_test.py =================================================================== --- csw/mgar/gar/v2/lib/python/csw_upload_pkg_test.py 2011-02-16 16:38:48 UTC (rev 13340) +++ csw/mgar/gar/v2/lib/python/csw_upload_pkg_test.py 2011-02-16 17:39:21 UTC (rev 13341) @@ -83,6 +83,28 @@ ) self.assertEquals(expected, result) + def test_MatchSrv4ToCatalogsNewerPackage(self): + # A scenario in which a 5.9 package exists in the catalog, and we're + # uploading a 5.10 package. + rest_client_mock = self.mox.CreateMock(rest.RestClient) + self.mox.StubOutWithMock(rest, "RestClient") + rest.RestClient().AndReturn(rest_client_mock) + rest_client_mock.Srv4ByCatalogAndCatalogname( + 'unstable', 'sparc', u'SunOS5.10', 'gdb').AndReturn(GDB_STRUCT_9) + rest_client_mock.Srv4ByCatalogAndCatalogname( + 'unstable', 'sparc', u'SunOS5.11', 'gdb').AndReturn(GDB_STRUCT_9) + self.mox.ReplayAll() + su = csw_upload_pkg.Srv4Uploader(None) + result = su._MatchSrv4ToCatalogs( + "gdb-7.2,REV=2011.01.21-SunOS5.10-sparc-CSW.pkg.gz", + "unstable", "sparc", "SunOS5.10", + "deadbeef61b53638d7813407fab4765b") + expected = ( + ("unstable", "sparc", "SunOS5.10"), + ("unstable", "sparc", "SunOS5.11"), + ) + self.assertEquals(expected, result) + def test_MatchSrv4ToCatalogsSameSpecificOsrel(self): rest_client_mock = self.mox.CreateMock(rest.RestClient) self.mox.StubOutWithMock(rest, "RestClient") This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 16 18:41:17 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 16 Feb 2011 17:41:17 +0000 Subject: [csw-devel] SF.net SVN: gar:[13342] csw/mgar/pkg/libpopt/trunk Message-ID: Revision: 13342 http://gar.svn.sourceforge.net/gar/?rev=13342&view=rev Author: dmichelsen Date: 2011-02-16 17:41:16 +0000 (Wed, 16 Feb 2011) Log Message: ----------- libpopt: Update to 1.16 and split packages Modified Paths: -------------- csw/mgar/pkg/libpopt/trunk/Makefile csw/mgar/pkg/libpopt/trunk/checksums Added Paths: ----------- csw/mgar/pkg/libpopt/trunk/files/0001-Use-inttypes.h-if-stdint.h-is-not-available.patch csw/mgar/pkg/libpopt/trunk/files/0002-Fix-failing-tests.patch Removed Paths: ------------- csw/mgar/pkg/libpopt/trunk/files/0001-Fix-failing-tests.patch Modified: csw/mgar/pkg/libpopt/trunk/Makefile =================================================================== --- csw/mgar/pkg/libpopt/trunk/Makefile 2011-02-16 17:39:21 UTC (rev 13341) +++ csw/mgar/pkg/libpopt/trunk/Makefile 2011-02-16 17:41:16 UTC (rev 13342) @@ -1,5 +1,5 @@ NAME = popt -VERSION = 1.15 +VERSION = 1.16 CATEGORIES = lib DESCRIPTION = Popt is a C library for parsing command line parameters @@ -17,12 +17,33 @@ MASTER_SITES = http://rpm5.org/files/$(NAME)/ DISTFILES = $(NAME)-$(VERSION).tar.gz +# This patch has been sent upstream: +# http://www.mail-archive.com/popt-devel at rpm5.org/ +PATCHFILES += 0001-Use-inttypes.h-if-stdint.h-is-not-available.patch + # This fixes a minor failing check. See for details # http://www.mail-archive.com/popt-devel at rpm5.org/msg00155.html -PATCHFILES = 0001-Fix-failing-tests.patch +PATCHFILES += 0002-Fix-failing-tests.patch -PACKAGES = CSWlibpopt +PACKAGES += CSWlibpopt +CATALOGNAME_CSWlibpopt = libpopt +SPKG_DESC_CSWlibpopt = Transitional package as contents moved to CSWlibpopt0 +PKGFILES_CSWlibpopt = NOFILES +ARCHALL_CSWlibpopt = 1 +RUNTIME_DEP_PKGS_CSWlibpopt = CSWlibpopt0 +CHECKPKG_OVERRIDES_CSWlibpopt += surplus-dependency|CSWlibpopt0 +PACKAGES += CSWlibpopt0 +CATALOGNAME_CSWlibpopt0 = libpopt0 +SPKG_DESC_CSWlibpopt0 = Library for parsing command line parameters providing libpopt.so.0 +# PKGFILES_CSWlibpopt0 = $(call baseisadirs,$(libdir),libpopt\.so\.0(\.\d+)*) + +PACKAGES += CSWlibpopt-dev +CATALOGNAME_CSWlibpopt-dev = libpopt_dev +SPKG_DESC_CSWlibpopt-dev = Development files for libpopt.so +RUNTIME_DEP_PKGS_CSWlibpopt-dev = CSWlibpopt0 +PKGFILES_CSWlibpopt-dev = $(PKGFILES_DEVEL) + UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz RUNTIME_DEP_PKGS = CSWggettextrt CSWiconv Modified: csw/mgar/pkg/libpopt/trunk/checksums =================================================================== --- csw/mgar/pkg/libpopt/trunk/checksums 2011-02-16 17:39:21 UTC (rev 13341) +++ csw/mgar/pkg/libpopt/trunk/checksums 2011-02-16 17:41:16 UTC (rev 13342) @@ -1,2 +1 @@ -4999ab4e862297b281b78f2a0ac6ebd5 0001-Fix-failing-tests.patch -c61ef795fa450eb692602a661ec8d7f1 popt-1.15.tar.gz +3743beefa3dd6247a73f8f7a32c14c33 popt-1.16.tar.gz Deleted: csw/mgar/pkg/libpopt/trunk/files/0001-Fix-failing-tests.patch =================================================================== --- csw/mgar/pkg/libpopt/trunk/files/0001-Fix-failing-tests.patch 2011-02-16 17:39:21 UTC (rev 13341) +++ csw/mgar/pkg/libpopt/trunk/files/0001-Fix-failing-tests.patch 2011-02-16 17:41:16 UTC (rev 13342) @@ -1,34 +0,0 @@ -From 47be5f0af0829a29d86ad7025648a0309b49ea21 Mon Sep 17 00:00:00 2001 -From: Dagobert Michelsen -Date: Thu, 29 Oct 2009 09:04:42 +0100 -Subject: [PATCH] Fix failing tests - ---- - testit.sh | 4 ++-- - 1 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/testit.sh b/testit.sh -index 0a0ba09..4b667b5 100755 ---- a/testit.sh -+++ b/testit.sh -@@ -111,7 +111,7 @@ run test1 "test1 - 53" "arg1: 0 arg2: (none) aFlag: 0x8888" --nobitset - run test1 "test1 - 54" "arg1: 0 arg2: (none) aFlag: 0xface" --nobitclr - - run test1 "test1 - 55" "\ --Usage: lt-test1 [-I?] [-c|--cb2=STRING] [--arg1] [-2|--arg2=ARG] -+Usage: test1 [-I?] [-c|--cb2=STRING] [--arg1] [-2|--arg2=ARG] - [-3|--arg3=ANARG] [-onedash] [--optional=STRING] [--val] - [-i|--int=INT] [-l|--long=LONG] [-L|--longlong=LONGLONG] - [-f|--float=FLOAT] [-d|--double=DOUBLE] [--randint=INT] -@@ -120,7 +120,7 @@ Usage: lt-test1 [-I?] [-c|--cb2=STRING] [--arg1] [-2|--arg2=ARG] - [-c|--cb=STRING] [--longopt] [-?|--help] [--usage] [--simple=ARG]" --usage - - run test1 "test1 - 56" "\ --Usage: lt-test1 [OPTION...] -+Usage: test1 [OPTION...] - --arg1 First argument with a really long - description. After all, we have to test - argument help wrapping somehow, right? --- -1.6.5 - Added: csw/mgar/pkg/libpopt/trunk/files/0001-Use-inttypes.h-if-stdint.h-is-not-available.patch =================================================================== --- csw/mgar/pkg/libpopt/trunk/files/0001-Use-inttypes.h-if-stdint.h-is-not-available.patch (rev 0) +++ csw/mgar/pkg/libpopt/trunk/files/0001-Use-inttypes.h-if-stdint.h-is-not-available.patch 2011-02-16 17:41:16 UTC (rev 13342) @@ -0,0 +1,49 @@ +From bcae71d2d7d6d59a315f36afecacf0acf2c71354 Mon Sep 17 00:00:00 2001 +From: Dagobert Michelsen +Date: Wed, 16 Feb 2011 18:25:39 +0100 +Subject: [PATCH 1/2] Use inttypes.h if stdint.h is not available + +--- + lookup3.c | 6 ++++++ + poptint.h | 6 ++++++ + 2 files changed, 12 insertions(+), 0 deletions(-) + +diff --git a/lookup3.c b/lookup3.c +index 0584c39..d3a1389 100644 +--- a/lookup3.c ++++ b/lookup3.c +@@ -34,7 +34,13 @@ + */ + /* -------------------------------------------------------------------- */ + ++#ifdef HAVE_STDINT_H + #include ++#else ++#ifdef HAVE_INTTYPES_H ++#include ++#endif ++#endif + + #if defined(_JLU3_SELFTEST) + # define _JLU3_jlu32w 1 +diff --git a/poptint.h b/poptint.h +index 80cbaca..f4b2716 100644 +--- a/poptint.h ++++ b/poptint.h +@@ -9,7 +9,13 @@ + #ifndef H_POPTINT + #define H_POPTINT + ++#ifdef HAVE_STDINT_H + #include ++#else ++#ifdef HAVE_INTTYPES_H ++#include ++#endif ++#endif + + /** + * Wrapper to free(3), hides const compilation noise, permit NULL, return NULL. +-- +1.7.3.2 + Copied: csw/mgar/pkg/libpopt/trunk/files/0002-Fix-failing-tests.patch (from rev 13327, csw/mgar/pkg/libpopt/trunk/files/0001-Fix-failing-tests.patch) =================================================================== --- csw/mgar/pkg/libpopt/trunk/files/0002-Fix-failing-tests.patch (rev 0) +++ csw/mgar/pkg/libpopt/trunk/files/0002-Fix-failing-tests.patch 2011-02-16 17:41:16 UTC (rev 13342) @@ -0,0 +1,34 @@ +From 47102dced1cdfd9ab118bf84c95abea44eae8172 Mon Sep 17 00:00:00 2001 +From: Dagobert Michelsen +Date: Wed, 16 Feb 2011 18:26:36 +0100 +Subject: [PATCH 2/2] Fix failing tests + +--- + testit.sh | 4 ++-- + 1 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/testit.sh b/testit.sh +index 2a7b4aa..2779f7c 100755 +--- a/testit.sh ++++ b/testit.sh +@@ -115,7 +115,7 @@ run test1 "test1 - 56" "arg1: 0 arg2: (none) aFlag: 0xface" --nobitclr + run test1 "test1 - 57" "arg1: 0 arg2: (none) aBits: foo,baz" --bits foo,bar,baz,!bar + + run test1 "test1 - 58" "\ +-Usage: lt-test1 [-I?] [-c|--cb2=STRING] [--arg1] [-2|--arg2=ARG] ++Usage: test1 [-I?] [-c|--cb2=STRING] [--arg1] [-2|--arg2=ARG] + [-3|--arg3=ANARG] [-onedash] [--optional=STRING] [--val] + [-i|--int=INT] [-s|--short=SHORT] [-l|--long=LONG] + [-L|--longlong=LONGLONG] [-f|--float=FLOAT] [-d|--double=DOUBLE] +@@ -124,7 +124,7 @@ Usage: lt-test1 [-I?] [-c|--cb2=STRING] [--arg1] [-2|--arg2=ARG] + [--bitxor] [--nstr=STRING] [--lstr=STRING] [-I|--inc] + [-c|--cb=STRING] [--longopt] [-?|--help] [--usage] [--simple=ARG]" --usage + run test1 "test1 - 59" "\ +-Usage: lt-test1 [OPTION...] ++Usage: test1 [OPTION...] + --arg1 First argument with a really long + description. After all, we have to test + argument help wrapping somehow, right? +-- +1.7.3.2 + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Thu Feb 17 08:58:40 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Thu, 17 Feb 2011 07:58:40 +0000 Subject: [csw-devel] SF.net SVN: gar:[13343] csw/mgar/gar/v2/lib/python/csw_upload_pkg.py Message-ID: Revision: 13343 http://gar.svn.sourceforge.net/gar/?rev=13343&view=rev Author: wahwah Date: 2011-02-17 07:58:40 +0000 (Thu, 17 Feb 2011) Log Message: ----------- csw-upload-pkg: Better screen output Less Python data structures, making it easier to read from screen Modified Paths: -------------- csw/mgar/gar/v2/lib/python/csw_upload_pkg.py Modified: csw/mgar/gar/v2/lib/python/csw_upload_pkg.py =================================================================== --- csw/mgar/gar/v2/lib/python/csw_upload_pkg.py 2011-02-16 17:41:16 UTC (rev 13342) +++ csw/mgar/gar/v2/lib/python/csw_upload_pkg.py 2011-02-17 07:58:40 UTC (rev 13343) @@ -93,6 +93,11 @@ self._RemoveFromCatalog(filename, cat_arch, cat_osrel, file_metadata) def _RemoveFromCatalog(self, filename, arch, osrel, file_metadata): + logging.info("Removing %s (%s %s) from catalog %s %s", + file_metadata["catalogname"], + file_metadata["arch"], + file_metadata["osrel"], + arch, osrel) md5_sum = self._GetFileMd5sum(filename) basename = os.path.basename(filename) parsed_basename = opencsw.ParsePackageFileName(basename) @@ -184,7 +189,8 @@ catalogs.append(cat_key) else: logging.info( - "Not inserting %s package into %s containing a %s package", + "Not inserting %s %s package into %s containing a %s package", + catalogname, srv4_osrel, osrel, srv4_in_catalog["osrel"]) logging.debug( "Catalog %s %s %s has another version of %s.", @@ -217,9 +223,14 @@ self._InsertIntoCatalog(filename, cat_arch, cat_osrel, file_metadata) def _InsertIntoCatalog(self, filename, arch, osrel, file_metadata): - logging.info( + logging.debug( "_InsertIntoCatalog(%s, %s, %s)", repr(arch), repr(osrel), repr(filename)) + logging.info("Inserting %s (%s %s) into catalog %s %s", + file_metadata["catalogname"], + file_metadata["arch"], + file_metadata["osrel"], + arch, osrel) md5_sum = self._GetFileMd5sum(filename) basename = os.path.basename(filename) parsed_basename = opencsw.ParsePackageFileName(basename) @@ -262,7 +273,7 @@ logging.fatal("Response: %s %s", http_code, d.getvalue()) raise RestCommunicationError("%s - HTTP code: %s" % (url, http_code)) else: - logging.info("Response: %s %s", http_code, d.getvalue()) + logging.debug("Response: %s %s", http_code, d.getvalue()) return http_code def _GetSrv4FileMetadata(self, md5_sum): @@ -293,7 +304,7 @@ return successful, metadata def _PostFile(self, filename): - logging.info("_PostFile(%s)", repr(filename)) + logging.info("Uploading %s", repr(filename)) md5_sum = self._GetFileMd5sum(filename) c = pycurl.Curl() d = StringIO() This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Thu Feb 17 08:59:25 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Thu, 17 Feb 2011 07:59:25 +0000 Subject: [csw-devel] SF.net SVN: gar:[13344] csw/mgar/gar/v2/lib/python/csw_upload_pkg.py Message-ID: Revision: 13344 http://gar.svn.sourceforge.net/gar/?rev=13344&view=rev Author: wahwah Date: 2011-02-17 07:59:25 +0000 (Thu, 17 Feb 2011) Log Message: ----------- csw-upload-pkg: Fixed a logging message Formatting strings were written wrong. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/csw_upload_pkg.py Modified: csw/mgar/gar/v2/lib/python/csw_upload_pkg.py =================================================================== --- csw/mgar/gar/v2/lib/python/csw_upload_pkg.py 2011-02-17 07:58:40 UTC (rev 13343) +++ csw/mgar/gar/v2/lib/python/csw_upload_pkg.py 2011-02-17 07:59:25 UTC (rev 13344) @@ -171,7 +171,7 @@ arch, osrel, srv4_in_catalog["osrel"], catalogname) else: logging.debug( - "Catalog %a %s does not contain any version of the % package.", + "Catalog %s %s does not contain any version of the %s package.", arch, osrel, catalogname) if srv4_in_catalog and not first_cat_osrel_seen: first_cat_osrel_seen = srv4_in_catalog["osrel"] This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Thu Feb 17 09:00:00 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Thu, 17 Feb 2011 08:00:00 +0000 Subject: [csw-devel] SF.net SVN: gar:[13345] csw/mgar/gar/v2/lib/python Message-ID: Revision: 13345 http://gar.svn.sourceforge.net/gar/?rev=13345&view=rev Author: wahwah Date: 2011-02-17 08:00:00 +0000 (Thu, 17 Feb 2011) Log Message: ----------- csw-upload-pkg: A bugfix and unit tests When there was a 5.10 package in the 5.10 catalog, but no package in th 5.9 catalog, and a 5.9 package was uploaded, csw-upload-pkg would overwrite the existing 5.10 package with the 5.9 one. catalog pkg inserted problem? None 5.9 Yes No 5.10 5.10 Yes Yes 5.11 5.10 Yes Yes This has been fixed and changed to: catalog pkg inserted problem? None 5.9 Yes No 5.10 5.10 No No 5.11 5.10 No No Modified Paths: -------------- csw/mgar/gar/v2/lib/python/csw_upload_pkg.py csw/mgar/gar/v2/lib/python/csw_upload_pkg_test.py Modified: csw/mgar/gar/v2/lib/python/csw_upload_pkg.py =================================================================== --- csw/mgar/gar/v2/lib/python/csw_upload_pkg.py 2011-02-17 07:59:25 UTC (rev 13344) +++ csw/mgar/gar/v2/lib/python/csw_upload_pkg.py 2011-02-17 08:00:00 UTC (rev 13345) @@ -173,8 +173,13 @@ logging.debug( "Catalog %s %s does not contain any version of the %s package.", arch, osrel, catalogname) - if srv4_in_catalog and not first_cat_osrel_seen: - first_cat_osrel_seen = srv4_in_catalog["osrel"] + if not first_cat_osrel_seen: + if srv4_in_catalog: + first_cat_osrel_seen = srv4_in_catalog["osrel"] + else: + first_cat_osrel_seen = srv4_osrel + logging.info("Considering %s the base OS to match", + first_cat_osrel_seen) if (not srv4_in_catalog or srv4_in_catalog["osrel"] == srv4_osrel or srv4_in_catalog["osrel"] == first_cat_osrel_seen): Modified: csw/mgar/gar/v2/lib/python/csw_upload_pkg_test.py =================================================================== --- csw/mgar/gar/v2/lib/python/csw_upload_pkg_test.py 2011-02-17 07:59:25 UTC (rev 13344) +++ csw/mgar/gar/v2/lib/python/csw_upload_pkg_test.py 2011-02-17 08:00:00 UTC (rev 13345) @@ -191,6 +191,27 @@ ) self.assertEquals(expected, result) + def test_MatchSrv4ToCatalogsFirstNotPresent(self): + rest_client_mock = self.mox.CreateMock(rest.RestClient) + self.mox.StubOutWithMock(rest, "RestClient") + rest.RestClient().AndReturn(rest_client_mock) + rest_client_mock.Srv4ByCatalogAndCatalogname( + 'unstable', 'sparc', u'SunOS5.9', 'gdb').AndReturn(None) + rest_client_mock.Srv4ByCatalogAndCatalogname( + 'unstable', 'sparc', u'SunOS5.10', 'gdb').AndReturn(GDB_STRUCT_10) + rest_client_mock.Srv4ByCatalogAndCatalogname( + 'unstable', 'sparc', u'SunOS5.11', 'gdb').AndReturn(GDB_STRUCT_10) + self.mox.ReplayAll() + su = csw_upload_pkg.Srv4Uploader(None) + result = su._MatchSrv4ToCatalogs( + "gdb-7.2,REV=2011.01.21-SunOS5.9-sparc-CSW.pkg.gz", + "unstable", "sparc", "SunOS5.9", + "deadbeef61b53638d7813407fab4765b") + expected = ( + ("unstable", "sparc", "SunOS5.9"), + ) + self.assertEquals(expected, result) + if __name__ == '__main__': unittest.main() This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Thu Feb 17 11:28:18 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Thu, 17 Feb 2011 10:28:18 +0000 Subject: [csw-devel] SF.net SVN: gar:[13346] csw/mgar/gar/v2/lib/python/csw_upload_pkg.py Message-ID: Revision: 13346 http://gar.svn.sourceforge.net/gar/?rev=13346&view=rev Author: wahwah Date: 2011-02-17 10:28:18 +0000 (Thu, 17 Feb 2011) Log Message: ----------- csw-upload-pkg: docstring for _MatchSrv4ToCatalogs Documenting the arguments and the return value of _MatchSrv4ToCatalogs. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/csw_upload_pkg.py Modified: csw/mgar/gar/v2/lib/python/csw_upload_pkg.py =================================================================== --- csw/mgar/gar/v2/lib/python/csw_upload_pkg.py 2011-02-17 08:00:00 UTC (rev 13345) +++ csw/mgar/gar/v2/lib/python/csw_upload_pkg.py 2011-02-17 10:28:18 UTC (rev 13346) @@ -145,6 +145,16 @@ If it's a 5.9 package, it can be matched to 5.9, 5.10 and 5.11. However, if there already are specific 5.10 and/or 5.11 versions of the package, don't overwrite them. + + Args: + filename: string, base file name of the srv4 stream file + catrel: string denoting catalog release, usually 'unstable' + srv4_arch: string, denoting srv4 file architecture (sparc, i386 or all) + srv4_osrel: string, OS release of the package, e.g. 'SunOS5.9' + md5_sum: string, md5 sum of the srv4 file + + Returns: + A tuple of tuples, where each tuple is: (catrel, arch, osrel) """ basename = os.path.basename(filename) parsed_basename = opencsw.ParsePackageFileName(basename) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Thu Feb 17 11:34:37 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Thu, 17 Feb 2011 10:34:37 +0000 Subject: [csw-devel] SF.net SVN: gar:[13347] csw/mgar/gar/v2/lib/python Message-ID: Revision: 13347 http://gar.svn.sourceforge.net/gar/?rev=13347&view=rev Author: wahwah Date: 2011-02-17 10:34:37 +0000 (Thu, 17 Feb 2011) Log Message: ----------- csw-upload-pkg: A more exhaustive unit test A new, data-driven unit test, which allows to define conditions in a very concise way, and expect the right output. It has a problem that it stops on the first failed tests and doesn't do any other tests. It could be rewritten using metaclases, but they would make the code more complicated than it currently is, which is quite complicated already. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/csw_upload_pkg.py csw/mgar/gar/v2/lib/python/csw_upload_pkg_test.py Modified: csw/mgar/gar/v2/lib/python/csw_upload_pkg.py =================================================================== --- csw/mgar/gar/v2/lib/python/csw_upload_pkg.py 2011-02-17 10:28:18 UTC (rev 13346) +++ csw/mgar/gar/v2/lib/python/csw_upload_pkg.py 2011-02-17 10:34:37 UTC (rev 13347) @@ -168,6 +168,9 @@ else: archs = (srv4_arch,) catalogname = parsed_basename["catalogname"] + # This part of code quickly became complicated and should probably be + # rewritten. However, it is unit tested, so all the known cases are + # handled as intended. catalogs = [] first_cat_osrel_seen = None for arch in archs: Modified: csw/mgar/gar/v2/lib/python/csw_upload_pkg_test.py =================================================================== --- csw/mgar/gar/v2/lib/python/csw_upload_pkg_test.py 2011-02-17 10:28:18 UTC (rev 13346) +++ csw/mgar/gar/v2/lib/python/csw_upload_pkg_test.py 2011-02-17 10:34:37 UTC (rev 13347) @@ -36,7 +36,23 @@ "size": 7617270, "version_string": "7.2,REV=2011.01.21", } +GDB_STRUCT_11 = { + "arch": "sparc", + "basename": "gdb-7.2,REV=2011.01.21-SunOS5.11-sparc-CSW.pkg.gz", + "catalogname": "gdb", + "filename_arch": "sparc", + "maintainer_email": "pfele... at opencsw.org", + "maintainer_full_name": None, + "md5_sum": "09cccf8097e982dadbd717910963e378", + "mtime": "2011-01-24 03:10:05", + "osrel": "SunOS5.11", + "pkgname": "CSWgdb", + "rev": "2011.01.21", + "size": 7617270, + "version_string": "7.2,REV=2011.01.21", +} + class Srv4UploaderUnitTest(mox.MoxTestBase): def test_MatchSrv4ToCatalogsSame(self): @@ -213,5 +229,74 @@ self.assertEquals(expected, result) +class Srv4UploaderDataDrivenUnitTest(mox.MoxTestBase): + """A unit test doing an search over multiple combinations. + + It generalizes the unit test above, and is more data-driven. + + It could be rewriten in a way which generates separate test functions for + each data row, but for now, we'll just loop over the data set in one test. + """ + + DATA = ( + # in_catalog, pkg, specified, expected_insertions + ((None, None, None), 9, None, (9, 10, 11)), + ((None, None, 9), 9, None, (9, 10, 11)), + ((None, 9, 9), 9, None, (9, 10, 11)), + (( 9, 9, 9), 9, None, (9, 10, 11)), + ((None, 9, 10), 9, None, (9, 10)), + (( 9, 9, 10), 9, None, (9, 10)), + (( 9, 10, 10), 9, None, (9,)), + (( 9, 10, 10), 9, 9, (9,)), + (( 9, 10, 10), 9, 10, (10,)), + (( 9, 9, 10), 9, 10, (10,)), + (( 9, 9, 10), 9, 11, (11,)), + (( None, None), 10, None, (10, 11)), + (( None, 10), 10, None, (10, 11)), + (( 10, 10), 10, None, (10, 11)), + (( 10, 11), 10, None, (10,)), + (( None, 10), 10, None, (10, 11,)), + ) + BASENAME = "gdb-7.2,REV=2011.01.21-SunOS5.9-sparc-CSW.pkg.gz" + MD5_SUM = "deadbeef61b53638d7813407fab4765b" + + def testAllPossibilities(self): + for (in_catalog, + pkg_osrel, osrel_spec, + expected_rels) in self.DATA: + self.DataPointTest(in_catalog, pkg_osrel, osrel_spec, expected_rels) + + def DataPointTest(self, in_catalog, pkg_osrel, osrel_spec, expected_rels): + pkg_struct_map = { + None: None, + 9: GDB_STRUCT_9, + 10: GDB_STRUCT_10, + 11: GDB_STRUCT_11, + } + rest_client_mock = self.mox.CreateMock(rest.RestClient) + self.mox.StubOutWithMock(rest, "RestClient") + rest.RestClient().AndReturn(rest_client_mock) + for i, os_n in enumerate(in_catalog, 3 - len(in_catalog)): + pkg_struct = pkg_struct_map[os_n] + rest_client_mock.Srv4ByCatalogAndCatalogname( + 'unstable', + 'sparc', + u'SunOS5.%s' % (i + 9), 'gdb').AndReturn(pkg_struct) + self.mox.ReplayAll() + os_release_to_specify = "SunOS5.%s" % osrel_spec if osrel_spec else None + su = csw_upload_pkg.Srv4Uploader(None, os_release=os_release_to_specify) + result = su._MatchSrv4ToCatalogs( + self.BASENAME, + "unstable", "sparc", "SunOS5.%s" % pkg_osrel, + self.MD5_SUM) + expected = [] + for n in expected_rels: + expected.append(("unstable", "sparc", "SunOS5.%s" % n)) + expected = tuple(expected) + self.assertEquals(expected, result) + self.mox.ResetAll() + self.mox.UnsetStubs() + + if __name__ == '__main__': unittest.main() This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Feb 17 20:08:45 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 17 Feb 2011 19:08:45 +0000 Subject: [csw-devel] SF.net SVN: gar:[13348] csw/mgar/pkg/seamonkey/trunk Message-ID: Revision: 13348 http://gar.svn.sourceforge.net/gar/?rev=13348&view=rev Author: dmichelsen Date: 2011-02-17 19:08:45 +0000 (Thu, 17 Feb 2011) Log Message: ----------- seamonkey: Update to 1.1.19, sanitize flags, remove CSW X11 bindings Modified Paths: -------------- csw/mgar/pkg/seamonkey/trunk/Makefile csw/mgar/pkg/seamonkey/trunk/checksums Modified: csw/mgar/pkg/seamonkey/trunk/Makefile =================================================================== --- csw/mgar/pkg/seamonkey/trunk/Makefile 2011-02-17 10:34:37 UTC (rev 13347) +++ csw/mgar/pkg/seamonkey/trunk/Makefile 2011-02-17 19:08:45 UTC (rev 13348) @@ -1,5 +1,5 @@ NAME = seamonkey -VERSION = 1.1.18 +VERSION = 1.1.19 CATEGORIES = apps DISTNAME = mozilla @@ -10,6 +10,7 @@ DISTFILES = $(NAME)-$(VERSION).source.tar.bz2 DISTFILES += CSWseamonkey.postremove CSWseamonkey.postinstall +DISTFILES += .mozconfig # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = (\d+(?:\.\d+)*) @@ -63,23 +64,24 @@ # PATCHFILES += configure.diff # pkg-config options -EXTRA_PKG_CONFIG_PATH += /opt/csw/X11/lib/pkgconfig +# EXTRA_PKG_CONFIG_PATH += /opt/csw/X11/lib/pkgconfig PERL=/opt/csw/bin/perl -CXXFLAGS +=-xlibmil -xlibmopt -features=tmplife -norunpath -CFLAGS +=-xlibmil -D__solaris__ -CFLAGS += -DG_HAVE_ISO_VARARGS -CXXFLAGS += -DG_HAVE_ISO_VARARGS -CPPFLAGS = -I/opt/csw/include -I/opt/csw/X11/include -I/opt/csw/include/cairo -XCFLAGS = -I/opt/csw/include -I/opt/csw/X11/include -I/opt/csw/include/cairo +EXTRA_CFLAGS += -xlibmil -D__solaris__ +EXTRA_CXXFLAGS += -xlibmil -xlibmopt -features=tmplife -norunpath +EXTRA_CFLAGS += -DG_HAVE_ISO_VARARGS +EXTRA_CXXFLAGS += -DG_HAVE_ISO_VARARGS +EXTRA_CPPFLAGS = -I/opt/csw/include/cairo +EXTRA_XCFLAGS = -I/opt/csw/include/cairo EXTRA_CONFIGURE_EXPORTS = XCFLAGS -LDFLAGS+=-L/usr/lib/lwp -L/opt/csw/mozilla/seamonkey/lib -R/opt/csw/mozilla/seamonkey/lib -L/opt/csw/lib -R/opt/csw/lib -L/opt/csw/X11/lib -R/opt/csw/X11/lib -lsqlite3 +EXTRA_LDFLAGS = -L/usr/lib/lwp -L/opt/csw/mozilla/seamonkey/lib -R/opt/csw/mozilla/seamonkey/lib -lsqlite3 -export PERL CFLAGS CXXFLAGS LDFLAGS +export PERL CFLAGS CXXFLAGS -CONFIGURE_ARGS = --prefix=/opt/csw/mozilla/seamonkey --disable-crashreporter +CONFIGURE_ARGS = --prefix=/opt/csw/mozilla/seamonkey +CONFIGURE_ARGS += --disable-crashreporter TEST_SCRIPTS = @@ -90,7 +92,7 @@ WORK_INSTALL = $(WORKROOTDIR)/install-$(firstword $(MODULATIONS)) pre-configure-modulated:: - @cp $(FILEDIR)/.mozconfig $(WORK_BUILD)/.mozconfig + @cp $(WORKDIR)/.mozconfig $(WORKSRC)/.mozconfig pre-install-modulated:: ( if [ ! -d $(WORK_INSTALL)/opt/csw/bin ] ; then mkdir -p $(WORK_INSTALL)/opt/csw/bin ; fi ) @@ -98,8 +100,8 @@ post-install-modulated:: ( gfind $(WORK_INSTALL)/opt/csw -exec bash -c "file {} | ggrep ELF | ggrep -e 'executable' -e 'dynamic lib' | ggrep 'not stripped' && strip {}" \; ) - ( gfind $(WORK_INSTALL)/opt/csw -name chromelist.txt -exec bash -c " mv {} {}.temp && gsed -e s\_`pwd`/$(WORK_BUILD)/\_\_g {}.temp > {} && rm {}.temp" \; ) - ( gfind $(WORK_INSTALL)/opt/csw/mozilla/seamonkey -name "*.js" -exec bash -c " mv {} {}.temp && gsed -e s\_`pwd`/$(WORK_BUILD)/\_\_g {}.temp > {} && rm {}.temp" \; ) + ( gfind $(WORK_INSTALL)/opt/csw -name chromelist.txt -exec bash -c " mv {} {}.temp && gsed -e s\_`pwd`/$(WORKSRC)/\_\_g {}.temp > {} && rm {}.temp" \; ) + ( gfind $(WORK_INSTALL)/opt/csw/mozilla/seamonkey -name "*.js" -exec bash -c " mv {} {}.temp && gsed -e s\_`pwd`/$(WORKSRC)/\_\_g {}.temp > {} && rm {}.temp" \; ) ( gfind $(WORK_INSTALL)/opt/csw/mozilla/seamonkey -name "*.jar" -exec bash -c "`pwd`/removeBuildPathFromJar.sh {} `pwd` $(WORKDIR) $(DISTNAME)" \; ) include gar/category.mk Modified: csw/mgar/pkg/seamonkey/trunk/checksums =================================================================== --- csw/mgar/pkg/seamonkey/trunk/checksums 2011-02-17 10:34:37 UTC (rev 13347) +++ csw/mgar/pkg/seamonkey/trunk/checksums 2011-02-17 19:08:45 UTC (rev 13348) @@ -1,13 +1,2 @@ -058f97fd1a482f544e00706fa4d9b85a CSWseamonkey.postinstall -b7484bcb84a902a5a110758cd5ffad99 CSWseamonkey.postremove -23b32e46acefebe1eb21566d0336075e SunOS5.mk.diff -923bc1a8e0f98039c863a4f01dec9ec4 autoconf.mk.in.diff -46527aded9c373b6095fea546d4d74f0 lber-int.h.diff -46ef334e67dab2301b53b661494f9d58 ldap-int.h.diff -e7054c1d1d6dc708805a6110ccfa7f70 ldappr-int.h.diff -e06ffefa6534521de5ed91c812a4a9c6 legacydb.config.mk.diff -f06035b459f608ed5032252bcaf87fb2 legacydb.manifest.mm.diff -3b03f00259d6897e017254e9dceed493 packager.mk.diff -ef4455becf3a12833dca7dd92854aeaa seamonkey-1.1.18.source.tar.bz2 -c815868b27233888ae5623967cc012f5 softoken.config.mk.diff -1150110fc60db3d7f5475e6906fe80c6 softoken.manifest.mm.diff +e8d05b2b0b0d8ac1f2ff506d6c986eea .mozconfig +cd1680aab7b8732551e6ace97d0f7eb8 seamonkey-1.1.19.source.tar.bz2 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Feb 17 20:19:13 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 17 Feb 2011 19:19:13 +0000 Subject: [csw-devel] SF.net SVN: gar:[13349] csw/mgar/pkg/seamonkey/trunk/Makefile Message-ID: Revision: 13349 http://gar.svn.sourceforge.net/gar/?rev=13349&view=rev Author: dmichelsen Date: 2011-02-17 19:19:13 +0000 (Thu, 17 Feb 2011) Log Message: ----------- seamonkey: Fix linker flags Modified Paths: -------------- csw/mgar/pkg/seamonkey/trunk/Makefile Modified: csw/mgar/pkg/seamonkey/trunk/Makefile =================================================================== --- csw/mgar/pkg/seamonkey/trunk/Makefile 2011-02-17 19:08:45 UTC (rev 13348) +++ csw/mgar/pkg/seamonkey/trunk/Makefile 2011-02-17 19:19:13 UTC (rev 13349) @@ -76,7 +76,7 @@ EXTRA_CONFIGURE_EXPORTS = XCFLAGS -EXTRA_LDFLAGS = -L/usr/lib/lwp -L/opt/csw/mozilla/seamonkey/lib -R/opt/csw/mozilla/seamonkey/lib -lsqlite3 +EXTRA_LINKER_FLAGS = -L/usr/lib/lwp -L/opt/csw/mozilla/seamonkey/lib -R/opt/csw/mozilla/seamonkey/lib -lsqlite3 export PERL CFLAGS CXXFLAGS This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Thu Feb 17 20:50:27 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Thu, 17 Feb 2011 19:50:27 +0000 Subject: [csw-devel] SF.net SVN: gar:[13350] csw/mgar/pkg/cpan Message-ID: Revision: 13350 http://gar.svn.sourceforge.net/gar/?rev=13350&view=rev Author: wbonnet Date: 2011-02-17 19:50:27 +0000 (Thu, 17 Feb 2011) Log Message: ----------- cpan/Font-TTF : initial commit Added Paths: ----------- csw/mgar/pkg/cpan/Font-TTF/ csw/mgar/pkg/cpan/Font-TTF/branches/ csw/mgar/pkg/cpan/Font-TTF/tags/ csw/mgar/pkg/cpan/Font-TTF/trunk/ csw/mgar/pkg/cpan/Font-TTF/trunk/Makefile csw/mgar/pkg/cpan/Font-TTF/trunk/checksums csw/mgar/pkg/cpan/Font-TTF/trunk/files/ Property changes on: csw/mgar/pkg/cpan/Font-TTF/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/cpan/Font-TTF/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Font-TTF/trunk/Makefile (rev 0) +++ csw/mgar/pkg/cpan/Font-TTF/trunk/Makefile 2011-02-17 19:50:27 UTC (rev 13350) @@ -0,0 +1,18 @@ +NAME = Font-TTF +VERSION = 0.48 +CATEGORIES = cpan +AUTHOR = MHOSKEN + +DESCRIPTION = Perl module for TrueType Font hacking +define BLURB + This module allows you to do almost anything to a TrueType/OpenType Font including modify and inspect nearly all tables. +endef + +PACKAGES = CSWfontttf +CATALOGNAME = pm_fontttf + +LICENSE = COPYING + +ARCHALL = 1 + +include gar/category.mk Added: csw/mgar/pkg/cpan/Font-TTF/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/Font-TTF/trunk/checksums (rev 0) +++ csw/mgar/pkg/cpan/Font-TTF/trunk/checksums 2011-02-17 19:50:27 UTC (rev 13350) @@ -0,0 +1 @@ +56d614d04e985558d1518b8f4b29254e Font-TTF-0.48.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Thu Feb 17 21:08:06 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Thu, 17 Feb 2011 20:08:06 +0000 Subject: [csw-devel] SF.net SVN: gar:[13351] csw/mgar/gar/v2/categories/java/category.mk Message-ID: Revision: 13351 http://gar.svn.sourceforge.net/gar/?rev=13351&view=rev Author: wbonnet Date: 2011-02-17 20:08:06 +0000 (Thu, 17 Feb 2011) Log Message: ----------- Remove regular expression. They are now guessed Modified Paths: -------------- csw/mgar/gar/v2/categories/java/category.mk Modified: csw/mgar/gar/v2/categories/java/category.mk =================================================================== --- csw/mgar/gar/v2/categories/java/category.mk 2011-02-17 19:50:27 UTC (rev 13350) +++ csw/mgar/gar/v2/categories/java/category.mk 2011-02-17 20:08:06 UTC (rev 13351) @@ -1,7 +1,6 @@ # http://jakarta.apache.org/commons # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX ?= commons-$(NAME)-(\d+(?:\.\d+)*)-bin.tar.gz USTREAM_MASTER_SITE ?= $(SPKG_SOURCEURL) # Includes the rest of gar This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Thu Feb 17 21:16:29 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Thu, 17 Feb 2011 20:16:29 +0000 Subject: [csw-devel] SF.net SVN: gar:[13352] csw/mgar/pkg/java/ajcbeanutils/trunk Message-ID: Revision: 13352 http://gar.svn.sourceforge.net/gar/?rev=13352&view=rev Author: wbonnet Date: 2011-02-17 20:16:29 +0000 (Thu, 17 Feb 2011) Log Message: ----------- java/beanutils Upgrade to 1.8.3 Modified Paths: -------------- csw/mgar/pkg/java/ajcbeanutils/trunk/Makefile csw/mgar/pkg/java/ajcbeanutils/trunk/checksums Modified: csw/mgar/pkg/java/ajcbeanutils/trunk/Makefile =================================================================== --- csw/mgar/pkg/java/ajcbeanutils/trunk/Makefile 2011-02-17 20:08:06 UTC (rev 13351) +++ csw/mgar/pkg/java/ajcbeanutils/trunk/Makefile 2011-02-17 20:16:29 UTC (rev 13352) @@ -1,5 +1,5 @@ SHORTNAME = beanutils -VERSION = 1.8.2 +VERSION = 1.8.3 NAME = commons-$(SHORTNAME) CATEGORIES = java @@ -37,10 +37,10 @@ # Defines custom steps since java libs do not use autotools WORKSRC = $(WORKDIR) +INSTALL_SCRIPTS = custom CONFIGURE_SCRIPTS = BUILD_SCRIPTS = TEST_SCRIPTS = -INSTALL_SCRIPTS = custom include gar/category.mk Modified: csw/mgar/pkg/java/ajcbeanutils/trunk/checksums =================================================================== --- csw/mgar/pkg/java/ajcbeanutils/trunk/checksums 2011-02-17 20:08:06 UTC (rev 13351) +++ csw/mgar/pkg/java/ajcbeanutils/trunk/checksums 2011-02-17 20:16:29 UTC (rev 13352) @@ -1 +1 @@ -744fcff65e91ef60f83caca1e2458312 commons-beanutils-1.8.2-bin.tar.gz +d8ca23e7048cebc5e3898efb6bff1fc8 commons-beanutils-1.8.3-bin.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Fri Feb 18 00:28:58 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Thu, 17 Feb 2011 23:28:58 +0000 Subject: [csw-devel] SF.net SVN: gar:[13353] csw/mgar/pkg/java/ajcchain/trunk/Makefile Message-ID: Revision: 13353 http://gar.svn.sourceforge.net/gar/?rev=13353&view=rev Author: wbonnet Date: 2011-02-17 23:28:58 +0000 (Thu, 17 Feb 2011) Log Message: ----------- Fix Makefile Modified Paths: -------------- csw/mgar/pkg/java/ajcchain/trunk/Makefile Modified: csw/mgar/pkg/java/ajcchain/trunk/Makefile =================================================================== --- csw/mgar/pkg/java/ajcchain/trunk/Makefile 2011-02-17 20:16:29 UTC (rev 13352) +++ csw/mgar/pkg/java/ajcchain/trunk/Makefile 2011-02-17 23:28:58 UTC (rev 13353) @@ -15,20 +15,19 @@ # Set archive filename DISTFILES = $(NAME)-$(VERSION)-bin.tar.gz -# Defines two packages, lib and doc -DISTFILES += $(call admfiles,CSWajcchain,) -DISTFILES += $(call admfiles,CSWajcchaindoc,) +PACKAGES = CSWajcchain CSWajcchaindoc +ARCHALL = 1 +CATALOGNAME_CSWajcchain = commons_chain +CATALOGNAME_CSWajcchaindoc = commons_chain_doc + # Defines package description SPKG_DESC_CSWajcchain = $(DESCRIPTION) SPKG_DESC_CSWajcchaindoc = $(DESCRIPTION) documentation package -# Defines dependencies -# RUNTIME_DEP_PKGS_CSWajcchain = - # Defines package content -PKGFILES_CSWajcchain = $(prefix)/share/doc/$(NAME)/LICENSE.txt PKGFILES_CSWajcchain += $(prefix)/share/java/.* +LICENSE = LICENSE.txt # Defines custom steps since java libs do not use autotools WORKSRC = $(WORKDIR) @@ -47,7 +46,5 @@ ln -s $(NAME)-$(VERSION).jar $(NAME)-1.jar ; \ ln -s $(NAME)-$(VERSION).jar $(NAME).jar ) @ginstall -d $(DESTDIR)$(datadir)/doc/$(NAME) - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME) - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/LICENSE-documentation.txt @gcp -frp $(WORKSRC)/$(DISTNAME)/apidocs/* $(DESTDIR)$(datadir)/doc/$(NAME) @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Fri Feb 18 00:41:56 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Thu, 17 Feb 2011 23:41:56 +0000 Subject: [csw-devel] SF.net SVN: gar:[13354] csw/mgar/gar/v2/lib/python Message-ID: Revision: 13354 http://gar.svn.sourceforge.net/gar/?rev=13354&view=rev Author: wahwah Date: 2011-02-17 23:41:55 +0000 (Thu, 17 Feb 2011) Log Message: ----------- checkpkg: Check that catalogname matches pkgname Adding a check that throws an error of catalogname doesn't match the pkgname. It is loosely based on the standards page[1], and more specific. [1] http://www.opencsw.org/extend-it/contribute-packages/build-standards/package-creation/ Modified Paths: -------------- csw/mgar/gar/v2/lib/python/README csw/mgar/gar/v2/lib/python/package_checks.py csw/mgar/gar/v2/lib/python/package_checks_test.py Modified: csw/mgar/gar/v2/lib/python/README =================================================================== --- csw/mgar/gar/v2/lib/python/README 2011-02-17 23:28:58 UTC (rev 13353) +++ csw/mgar/gar/v2/lib/python/README 2011-02-17 23:41:55 UTC (rev 13354) @@ -3,7 +3,6 @@ ==Checkpkg== Checks to implement: - - foo_bar != CSWfoo-bar -> error - *dev(el)? -> error, suggest *-dev - *-?rt -> error, suggest specific library packages - empty package without 'transitional' in the name --> error, suggest @@ -14,6 +13,9 @@ - Dependency on CSWcas-initsmf + rc* files --> error - A package must not be incompatible with itself +Checks implemented: + - foo_bar != CSWfoo-bar -> error + - outside /opt/csw, /etc/opt/csw, /var/opt/csw -> error Development plan for checkpkg: - Notify maintainers when their package is available from mirrors Modified: csw/mgar/gar/v2/lib/python/package_checks.py =================================================================== --- csw/mgar/gar/v2/lib/python/package_checks.py 2011-02-17 23:28:58 UTC (rev 13353) +++ csw/mgar/gar/v2/lib/python/package_checks.py 2011-02-17 23:41:55 UTC (rev 13354) @@ -26,6 +26,7 @@ import dependency_checks as depchecks import configuration as c import sharedlib_utils as su +import struct_util from Cheetah import Template import common_constants import logging @@ -1223,6 +1224,22 @@ "file=%s" % pkgmap_entry["path"]) +def CheckCatalognameMatchesPkgname(pkg_data, error_mgr, logger, messenger): + pkgname = pkg_data["basic_stats"]["pkgname"] + catalogname = pkg_data["basic_stats"]["catalogname"] + std_catalogname = struct_util.MakeCatalognameByPkgname(pkgname) + if catalogname != std_catalogname: + msg = ( + "The catalogname should match the pkgname. " + "For more information, see " + "http://www.opencsw.org/extend-it/contribute-packages/" + "build-standards/package-creation/") + error_mgr.ReportError( + 'catalogname-does-not-match-pkgname', + 'pkgname=%s catalogname=%s expected-catalogname=%s' + % (pkgname, catalogname, std_catalogname)) + + def CheckSonameMustNotBeEqualToFileNameIfFilenameEndsWithSo( pkg_data, error_mgr, logger, messenger): shared_libs = set(su.GetSharedLibs(pkg_data)) Modified: csw/mgar/gar/v2/lib/python/package_checks_test.py =================================================================== --- csw/mgar/gar/v2/lib/python/package_checks_test.py 2011-02-17 23:28:58 UTC (rev 13353) +++ csw/mgar/gar/v2/lib/python/package_checks_test.py 2011-02-17 23:41:55 UTC (rev 13354) @@ -1694,5 +1694,26 @@ self.pkg_data = mercurial_stats[0] +class TestCheckCatalognameMatchesPkgname(CheckpkgUnitTestHelper, + unittest.TestCase): + FUNCTION_NAME = 'CheckCatalognameMatchesPkgname' + + def CheckpkgTest(self): + self.pkg_data = copy.deepcopy(tree_stats[0]) + basic_stats = self.pkg_data["basic_stats"] + basic_stats["catalogname"] = "foo_bar" + basic_stats["pkgname"] = "CSWfoo-bar-baz" + self.error_mgr_mock.ReportError( + 'catalogname-does-not-match-pkgname', + 'pkgname=CSWfoo-bar-baz catalogname=foo_bar ' + 'expected-catalogname=foo_bar_baz') + + def CheckpkgTest2(self): + self.pkg_data = copy.deepcopy(tree_stats[0]) + + def testTwo(self): + self.RunCheckpkgTest(self.CheckpkgTest2) + + if __name__ == '__main__': unittest.main() This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Fri Feb 18 00:57:54 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Thu, 17 Feb 2011 23:57:54 +0000 Subject: [csw-devel] SF.net SVN: gar:[13355] csw/mgar/pkg/java/ajccli/trunk Message-ID: Revision: 13355 http://gar.svn.sourceforge.net/gar/?rev=13355&view=rev Author: wbonnet Date: 2011-02-17 23:57:54 +0000 (Thu, 17 Feb 2011) Log Message: ----------- java/cli upgrade to 1.2 Modified Paths: -------------- csw/mgar/pkg/java/ajccli/trunk/Makefile csw/mgar/pkg/java/ajccli/trunk/checksums Modified: csw/mgar/pkg/java/ajccli/trunk/Makefile =================================================================== --- csw/mgar/pkg/java/ajccli/trunk/Makefile 2011-02-17 23:41:55 UTC (rev 13354) +++ csw/mgar/pkg/java/ajccli/trunk/Makefile 2011-02-17 23:57:54 UTC (rev 13355) @@ -1,5 +1,5 @@ SHORTNAME = cli -VERSION = 1.1 +VERSION = 1.2 NAME = commons-$(SHORTNAME) CATEGORIES = java @@ -11,24 +11,24 @@ # Use jakarta sources MASTER_SITES = http://apache.cict.fr/commons/$(SHORTNAME)/binaries/ -UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz # Set archive filename -DISTFILES = $(NAME)-$(VERSION).tar.gz +DISTFILES = $(NAME)-$(VERSION)-bin.tar.gz # Defines two packages, lib and doc -DISTFILES += $(call admfiles,CSWajccli,) -DISTFILES += $(call admfiles,CSWajcclidoc,) +PACKAGES = CSWajccli CSWajcclidoc -# Defines package description SPKG_DESC_CSWajccli = $(DESCRIPTION) SPKG_DESC_CSWajcclidoc = $(DESCRIPTION) documentation package -# Defines dependencies -# RUNTIME_DEP_PKGS_CSWajccli = +ARCHALL = 1 +LICENSE = LICENSE.txt + +CATALOGNAME_CSWajccli = commons_cli +CATALOGNAME_CSWajcclidoc = commons_cli_doc + # Defines package content -PKGFILES_CSWajccli = $(prefix)/share/doc/$(NAME)/LICENSE.txt PKGFILES_CSWajccli += $(prefix)/share/java/.* # Defines custom steps since java libs do not use autotools @@ -39,16 +39,17 @@ TEST_SCRIPTS = INSTALL_SCRIPTS = custom +CHECKPKG_OVERRIDES_CSWajcclidoc += catalogname-does-not-match-pkgname|pkgname=CSWajcclidoc|catalogname=commons_cli_doc|expected-catalogname=ajcclidoc +CHECKPKG_OVERRIDES_CSWajccli += catalogname-does-not-match-pkgname|pkgname=CSWajccli|catalogname=commons_cli|expected-catalogname=ajccli + include gar/category.mk install-custom: @ginstall -d $(DESTDIR)$(datadir)/java - @gcp -fp $(WORKSRC)/$(DISTNAME)/commons-cli-1.1.jar $(DESTDIR)$(datadir)/java + @gcp -fp $(WORKSRC)/$(DISTNAME)/commons-cli-$(VERSION).jar $(DESTDIR)$(datadir)/java @( cd $(DESTDIR)$(datadir)/java ; \ ln -s $(NAME)-$(VERSION).jar $(NAME)-1.jar ; \ ln -s $(NAME)-$(VERSION).jar $(NAME).jar ) @ginstall -d $(DESTDIR)$(datadir)/doc/$(NAME) - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME) - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/LICENSE-documentation.txt - @gcp -frp $(WORKSRC)/$(DISTNAME)/docs/* $(DESTDIR)$(datadir)/doc/$(NAME) + @gcp -frp $(WORKSRC)/$(DISTNAME)/apidocs/* $(DESTDIR)$(datadir)/doc/$(NAME) @$(MAKECOOKIE) Modified: csw/mgar/pkg/java/ajccli/trunk/checksums =================================================================== --- csw/mgar/pkg/java/ajccli/trunk/checksums 2011-02-17 23:41:55 UTC (rev 13354) +++ csw/mgar/pkg/java/ajccli/trunk/checksums 2011-02-17 23:57:54 UTC (rev 13355) @@ -1,3 +1 @@ -2e5fc38f03a28788bf131d7c0c36d3f2 download/commons-cli-1.1.tar.gz -b2edae5cdfb8a97ef3d7c3070205bd1f download/CSWajccli.gspec -ee12ee5ad48ab4c8b3eac56093f467b4 download/CSWajcclidoc.gspec +a05956c9ac8bacdc2b8d07fb2cb331ce commons-cli-1.2-bin.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Fri Feb 18 11:32:22 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Fri, 18 Feb 2011 10:32:22 +0000 Subject: [csw-devel] SF.net SVN: gar:[13356] csw/mgar/pkg/java/ajccodec/trunk Message-ID: Revision: 13356 http://gar.svn.sourceforge.net/gar/?rev=13356&view=rev Author: wbonnet Date: 2011-02-18 10:32:21 +0000 (Fri, 18 Feb 2011) Log Message: ----------- Fix makefile and upgrade tp 1.4 Modified Paths: -------------- csw/mgar/pkg/java/ajccodec/trunk/Makefile csw/mgar/pkg/java/ajccodec/trunk/checksums Modified: csw/mgar/pkg/java/ajccodec/trunk/Makefile =================================================================== --- csw/mgar/pkg/java/ajccodec/trunk/Makefile 2011-02-17 23:57:54 UTC (rev 13355) +++ csw/mgar/pkg/java/ajccodec/trunk/Makefile 2011-02-18 10:32:21 UTC (rev 13356) @@ -1,5 +1,5 @@ SHORTNAME = codec -VERSION = 1.3 +VERSION = 1.4 NAME = commons-$(SHORTNAME) CATEGORIES = java @@ -11,23 +11,25 @@ # Use jakarta sources MASTER_SITES = http://apache.cict.fr/commons/$(SHORTNAME)/binaries/ -UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz # Set archive filename -DISTFILES = $(NAME)-$(VERSION).tar.gz +DISTFILES = $(NAME)-$(VERSION)-bin.tar.gz -# Defines two packages, lib and doc -DISTFILES += $(call admfiles,CSWajccodec,) -DISTFILES += $(call admfiles,CSWajccodecdoc,) +PACKAGES = CSWajccodec CSWajccodecdoc +ARCHALL = 1 +CATALOGNAME_CSWajccodec = commons_codec +CATALOGNAME_CSWajccodecdoc = commons_codec_doc +LICENSE = LICENSE.txt + # Defines package description SPKG_DESC_CSWajccodec = $(DESCRIPTION) SPKG_DESC_CSWajccodecdoc = $(DESCRIPTION) documentation package -# Defines dependencies +CHECKPKG_OVERRIDES_CSWajccodec += catalogname-does-not-match-pkgname|pkgname=CSWajccodec|catalogname=commons_codec|expected-catalogname=ajccodec +CHECKPKG_OVERRIDES_CSWajccodecdoc += catalogname-does-not-match-pkgname|pkgname=CSWajccodecdoc|catalogname=commons_codec_doc|expected-catalogname=ajccodecdoc # Defines package content -PKGFILES_CSWajccodec = $(prefix)/share/doc/$(NAME)/LICENSE.txt PKGFILES_CSWajccodec += $(prefix)/share/java/.* # Defines custom steps since java libs do not use autotools @@ -38,19 +40,14 @@ TEST_SCRIPTS = INSTALL_SCRIPTS = custom -SRC_FIRSTMOD = $(WORKROOTDIR)/build-$(firstword $(MODULATIONS)) -export SRC_FIRSTMOD - include gar/category.mk install-custom: @ginstall -d $(DESTDIR)$(datadir)/java - @gcp -fp $(WORKSRC)/commons-codec-$(VERSION).jar $(DESTDIR)$(datadir)/java + @gcp -fp $(WORKSRC)/$(DISTNAME)/$(NAME)-$(VERSION).jar $(DESTDIR)$(datadir)/java @( cd $(DESTDIR)$(datadir)/java ; \ ln -s $(NAME)-$(VERSION).jar $(NAME)-1.jar ; \ ln -s $(NAME)-$(VERSION).jar $(NAME).jar ) @ginstall -d $(DESTDIR)$(datadir)/doc/$(NAME) - @gcp -fp $(WORKSRC)/LICENSE $(DESTDIR)$(datadir)/doc/$(NAME)/LICENSE.txt - @gcp -fp $(WORKSRC)/LICENSE $(DESTDIR)$(datadir)/doc/$(NAME)/LICENSE-documentation.txt - @gcp -frp $(WORKSRC)/docs/api/* $(DESTDIR)$(datadir)/doc/$(NAME) + @gcp -frp $(WORKSRC)/$(DISTNAME)/apidocs/* $(DESTDIR)$(datadir)/doc/$(NAME) @$(MAKECOOKIE) Modified: csw/mgar/pkg/java/ajccodec/trunk/checksums =================================================================== --- csw/mgar/pkg/java/ajccodec/trunk/checksums 2011-02-17 23:57:54 UTC (rev 13355) +++ csw/mgar/pkg/java/ajccodec/trunk/checksums 2011-02-18 10:32:21 UTC (rev 13356) @@ -1,3 +1 @@ -aad3948be13476d9599cadaf146bc92a download/commons-codec-1.3.tar.gz -89528aa0c2143a712a20a166b7031ff9 download/CSWajccodec.gspec -c1064ad5035505ad95fb3127c49bbc14 download/CSWajccodecdoc.gspec +413c2d2ede7865db7037ad49e3535957 commons-codec-1.4-bin.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Fri Feb 18 12:20:23 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Fri, 18 Feb 2011 11:20:23 +0000 Subject: [csw-devel] SF.net SVN: gar:[13357] csw/mgar/pkg/java/ajccollections/trunk/Makefile Message-ID: Revision: 13357 http://gar.svn.sourceforge.net/gar/?rev=13357&view=rev Author: wbonnet Date: 2011-02-18 11:20:23 +0000 (Fri, 18 Feb 2011) Log Message: ----------- Fix Makefile Modified Paths: -------------- csw/mgar/pkg/java/ajccollections/trunk/Makefile Modified: csw/mgar/pkg/java/ajccollections/trunk/Makefile =================================================================== --- csw/mgar/pkg/java/ajccollections/trunk/Makefile 2011-02-18 10:32:21 UTC (rev 13356) +++ csw/mgar/pkg/java/ajccollections/trunk/Makefile 2011-02-18 11:20:23 UTC (rev 13357) @@ -16,9 +16,19 @@ DISTFILES = $(NAME)-$(VERSION)-bin.tar.gz # Defines two packages, lib and doc -DISTFILES += $(call admfiles,CSWajccollect,) -DISTFILES += $(call admfiles,CSWajccollectdoc,) +PACKAGES = CSWajccollect CSWajccollectdoc +# Package architecture is ALL (pure java) +ARCHALL = 1 + +CATALOGNAME_CSWajccollect = commons_collect +CATALOGNAME_CSWajccollectdoc = commons_collect_doc + +LICENSE = LICENSE.txt + +CHECKPKG_OVERRIDES_CSWajccollect += catalogname-does-not-match-pkgname|pkgname=CSWajccollect|catalogname=commons_collect|expected-catalogname=ajccollect +CHECKPKG_OVERRIDES_CSWajccollectdoc += catalogname-does-not-match-pkgname|pkgname=CSWajccollectdoc|catalogname=commons_collect_doc|expected-catalogname=ajccollectdoc + # Defines package description SPKG_DESC_CSWajccollect = $(DESCRIPTION) SPKG_DESC_CSWajccollectdoc = $(DESCRIPTION) documentation package @@ -27,7 +37,6 @@ RUNTIME_DEP_PKGS_CSWajccollect = CSWajcdigester # Defines package content -PKGFILES_CSWajccollect = $(prefix)/share/doc/$(NAME)/LICENSE.txt PKGFILES_CSWajccollect += $(prefix)/share/java/.* # Defines custom steps since java libs do not use autotools @@ -42,13 +51,11 @@ install-custom: @ginstall -d $(DESTDIR)$(datadir)/java - @gcp -fp $(WORKSRC)/$(DISTNAME)/commons-collections-3.2.1.jar $(DESTDIR)$(datadir)/java + @gcp -fp $(WORKSRC)/$(DISTNAME)/$(NAME)-$(VERSION).jar $(DESTDIR)$(datadir)/java @( cd $(DESTDIR)$(datadir)/java ; \ ln -s $(NAME)-$(VERSION).jar $(NAME)-3.2.jar ; \ ln -s $(NAME)-$(VERSION).jar $(NAME)-3.jar ; \ ln -s $(NAME)-$(VERSION).jar $(NAME).jar ) @ginstall -d $(DESTDIR)$(datadir)/doc/$(NAME) - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME) - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/LICENSE-documentation.txt @gcp -frp $(WORKSRC)/$(DISTNAME)/apidocs/* $(DESTDIR)$(datadir)/doc/$(NAME) @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Fri Feb 18 12:37:47 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Fri, 18 Feb 2011 11:37:47 +0000 Subject: [csw-devel] SF.net SVN: gar:[13358] csw/mgar/pkg/java/ajcconfig/trunk/Makefile Message-ID: Revision: 13358 http://gar.svn.sourceforge.net/gar/?rev=13358&view=rev Author: wbonnet Date: 2011-02-18 11:37:47 +0000 (Fri, 18 Feb 2011) Log Message: ----------- Fix Makefile Modified Paths: -------------- csw/mgar/pkg/java/ajcconfig/trunk/Makefile Modified: csw/mgar/pkg/java/ajcconfig/trunk/Makefile =================================================================== --- csw/mgar/pkg/java/ajcconfig/trunk/Makefile 2011-02-18 11:20:23 UTC (rev 13357) +++ csw/mgar/pkg/java/ajcconfig/trunk/Makefile 2011-02-18 11:37:47 UTC (rev 13358) @@ -11,26 +11,34 @@ # Use jakarta sources MASTER_SITES = http://apache.cict.fr/commons/$(SHORTNAME)/binaries/ -UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz # Set archive filename DISTFILES = $(NAME)-$(VERSION).tar.gz # Defines two packages, lib and doc -DISTFILES += $(call admfiles,CSWajcconfig,) -DISTFILES += $(call admfiles,CSWajcconfigdoc,) +PACKAGES = CSWajcconfig CSWajcconfigdoc +# Package architecture is ALL (pure java) +ARCHALL = 1 + +CATALOGNAME_CSWajcconfig = commons_config +CATALOGNAME_CSWajcconfigdoc = commons_config_doc + +LICENSE = LICENSE.txt + # Defines package description SPKG_DESC_CSWajcconfig = $(DESCRIPTION) SPKG_DESC_CSWajcconfigdoc = $(DESCRIPTION) documentation package # Defines dependencies -RUNTIME_DEP_PKGS_CSWajcconfig = CSWajclogging CSWajclang CSWajcdigester CSWajccollect CSWajcbeanutils +RUNTIME_DEP_PKGS_CSWajcconfig = CSWajclogging CSWajclang CSWajcdigester CSWajccollect # Defines package content -PKGFILES_CSWajcconfig = $(prefix)/share/doc/$(NAME)/License.txt PKGFILES_CSWajcconfig += $(prefix)/share/java/.* +CHECKPKG_OVERRIDES_CSWajcconfig += catalogname-does-not-match-pkgname|pkgname=CSWajcconfig|catalogname=commons_config|expected-catalogname=ajcconfig +CHECKPKG_OVERRIDES_CSWajcconfigdoc += catalogname-does-not-match-pkgname|pkgname=CSWajcconfigdoc|catalogname=commons_config_doc|expected-catalogname=ajcconfigdoc + # Defines custom steps since java libs do not use autotools WORKSRC = $(WORKDIR) @@ -48,7 +56,5 @@ ln -s $(NAME)-$(VERSION).jar $(NAME)-1.jar ; \ ln -s $(NAME)-$(VERSION).jar $(NAME).jar ) @ginstall -d $(DESTDIR)$(datadir)/doc/$(NAME) - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License.txt - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License-documentation.txt @gcp -frp $(WORKSRC)/$(DISTNAME)/docs/* $(DESTDIR)$(datadir)/doc/$(NAME) @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Feb 18 15:45:23 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 18 Feb 2011 14:45:23 +0000 Subject: [csw-devel] SF.net SVN: gar:[13359] csw/mgar/pkg/wmf/trunk Message-ID: Revision: 13359 http://gar.svn.sourceforge.net/gar/?rev=13359&view=rev Author: dmichelsen Date: 2011-02-18 14:45:23 +0000 (Fri, 18 Feb 2011) Log Message: ----------- wmf: Rebuild with SUNW x11 and split packages Modified Paths: -------------- csw/mgar/pkg/wmf/trunk/Makefile Removed Paths: ------------- csw/mgar/pkg/wmf/trunk/files/fixme.sh Modified: csw/mgar/pkg/wmf/trunk/Makefile =================================================================== --- csw/mgar/pkg/wmf/trunk/Makefile 2011-02-18 11:37:47 UTC (rev 13358) +++ csw/mgar/pkg/wmf/trunk/Makefile 2011-02-18 14:45:23 UTC (rev 13359) @@ -12,77 +12,94 @@ SF_PROJ = wvware MASTER_SITES = $(SF_MIRRORS) -DISTFILES = libwmf-$(VERSION).tar.gz DISTNAME = libwmf-$(VERSION) +DISTFILES = $(DISTNAME).tar.gz -SPKG_SOURCEURL = http://wvware.sourceforge.net +# We define upstream file regex so we can be notifed of new upstream software release +UPSTREAM_MASTER_SITES = $(SF_PROJECT_SHOWFILE)=10501 +UFILES_REGEX = (\d+(?:\.\d+)*) -PACKAGES = CSWwmf CSWlibwmf CSWlibwmfdevel CSWlibwmfdoc CSWwmffonts CSWlibwmfgtk +VENDOR_URL = http://wvware.sourceforge.net + +PACKAGES += CSWwmf CATALOGNAME_CSWwmf = wmf +SPKG_DESC_CSWwmf += Library and tools for manipulating Windows metafiles +RUNTIME_DEP_PKGS_CSWwmf += CSWftype2 +RUNTIME_DEP_PKGS_CSWwmf += CSWjpeg +RUNTIME_DEP_PKGS_CSWwmf += CSWpng +RUNTIME_DEP_PKGS_CSWwmf += CSWzlib +RUNTIME_DEP_PKGS_CSWwmf += CSWwmffonts +RUNTIME_DEP_PKGS_CSWwmf += CSWiconv +RUNTIME_DEP_PKGS_CSWwmf += CSWlibxml2 +RUNTIME_DEP_PKGS_CSWwmf += CSWlibwmf0-2-7 +RUNTIME_DEP_PKGS_CSWwmf += CSWlibwmflite0-2-7 +CHECKPKG_OVERRIDES_CSWwmf += surplus-dependency|CSWwmffonts + +PACKAGES += CSWlibwmf CATALOGNAME_CSWlibwmf = libwmf +SPKG_DESC_CSWlibwmf = Transitional package as contents moved to +PKGFILES_CSWlibwmf = NOFILES +ARCHALL_CSWlibwmf = 1 +RUNTIME_DEP_PKGS_CSWlibwmf += CSWlibwmf0-2-7 +CHECKPKG_OVERRIDES_CSWlibwmf += surplus-dependency|CSWlibwmf0-2-7 +RUNTIME_DEP_PKGS_CSWlibwmf += CSWlibwmflite0-2-7 +CHECKPKG_OVERRIDES_CSWlibwmf += surplus-dependency|CSWlibwmflite0-2-7 + +PACKAGES += CSWlibwmflite0-2-7 +CATALOGNAME_CSWlibwmflite0-2-7 = libwmflite0_2_7 +PKGFILES_CSWlibwmflite0-2-7 += $(call baseisadirs,$(libdir),libwmflite-0\.2\.so\.7(\.\d+)*) +SPKG_DESC_CSWlibwmflite0-2-7 += Library and tools for manipulating Windows metafiles - runtime package, libwmflite-0.2.so.7 + +PACKAGES += CSWlibwmf0-2-7 +CATALOGNAME_CSWlibwmf0-2-7 = libwmf0_2_7 +PKGFILES_CSWlibwmf0-2-7 += $(call baseisadirs,$(libdir),libwmf-0\.2\.so\.7(\.\d+)*) +SPKG_DESC_CSWlibwmf0-2-7 += Library and tools for manipulating Windows metafiles - runtime package, libwmf-0.2.so.7 +RUNTIME_DEP_PKGS_CSWlibwmf0-2-7 += CSWjpeg +RUNTIME_DEP_PKGS_CSWlibwmf0-2-7 += CSWlibwmflite0-2-7 +RUNTIME_DEP_PKGS_CSWlibwmf0-2-7 += CSWpng +RUNTIME_DEP_PKGS_CSWlibwmf0-2-7 += CSWiconv +RUNTIME_DEP_PKGS_CSWlibwmf0-2-7 += CSWzlib +RUNTIME_DEP_PKGS_CSWlibwmf0-2-7 += CSWlibxml2 +RUNTIME_DEP_PKGS_CSWlibwmf0-2-7 += CSWftype2 + +PACKAGES += CSWlibwmfdevel CATALOGNAME_CSWlibwmfdevel = libwmf_devel +SPKG_DESC_CSWlibwmfdevel = Transitional package as contents moved to CSWlibwmf-dev +PKGFILES_CSWlibwmfdevel = NOFILES +ARCHALL_CSWlibwmfdevel = 1 +RUNTIME_DEP_PKGs_CSWlibwmfdevel = CSWlibwmf-dev + +SPKG_DESC_CSWlibwmf-dev += Library and tools for manipulating Windows metafiles - developer package +PKGFILES_CSWlibwmf-dev = $(PKGFILES_DEVEL) +RUNTIME_DEP_PKGS_CSWlibwmf-dev += CSWlibwmflite0-2-7 +RUNTIME_DEP_PKGS_CSWlibwmf-dev += CSWlibwmf0-2-7 + +PACKAGES += CSWlibwmfdoc CATALOGNAME_CSWlibwmfdoc = libwmf_doc -CATALOGNAME_CSWlibwmfgtk = libwmf_gtk +SPKG_DESC_CSWlibwmfdoc += Library and tools for manipulating Windows metafiles - documentation +PKGFILES_CSWlibwmfdoc = $(sharedstatedir)/doc/.* +ARCHALL_CSWlibwmfdoc = 1 + +PACKAGES += CSWwmffonts CATALOGNAME_CSWwmffonts = wmf_fonts +SPKG_DESC_CSWwmffonts += Library and tools for manipulating Windows metafiles - fonts +PKGFILES_CSWwmffonts = $(sharedstatedir)/libwmf/fonts/.* +ARCHALL_CSWwmffonts = 1 -SPKG_DESC_CSWwmf += Library and tools for manipulating Windows metafiles -SPKG_DESC_CSWlibwmf += Library and tools for manipulating Windows metafiles - runtime package -SPKG_DESC_CSWlibwmfdevel += Library and tools for manipulating Windows metafiles - developer package -SPKG_DESC_CSWlibwmfdoc += Library and tools for manipulating Windows metafiles - documentation +PACKAGES += CSWlibwmfgtk +CATALOGNAME_CSWlibwmfgtk = libwmf_gtk SPKG_DESC_CSWlibwmfgtk += Library and tools for manipulating Windows metafiles - GTK loader -SPKG_DESC_CSWwmffonts += Library and tools for manipulating Windows metafiles - fonts - -RUNTIME_DEP_PKGS_CSWwmf += CSWftype2 -RUNTIME_DEP_PKGS_CSWwmf += CSWjpeg CSWlibx11 CSWpng CSWzlib -RUNTIME_DEP_PKGS_CSWwmf += CSWwmffonts CSWlibwmf -RUNTIME_DEP_PKGS_CSWwmf += CSWiconv -RUNTIME_DEP_PKGS_CSWwmf += CSWlibxml2 -RUNTIME_DEP_PKGS_CSWlibwmf += CSWwmffonts -RUNTIME_DEP_PKGS_CSWlibwmf += CSWftype2 -RUNTIME_DEP_PKGS_CSWlibwmf += CSWjpeg -RUNTIME_DEP_PKGS_CSWlibwmf += CSWlibx11 -RUNTIME_DEP_PKGS_CSWlibwmf += CSWpng -RUNTIME_DEP_PKGS_CSWlibwmf += CSWzlib -RUNTIME_DEP_PKGS_CSWlibwmf += CSWiconv -RUNTIME_DEP_PKGS_CSWlibwmf += CSWlibxml2 -RUNTIME_DEP_PKGS_CSWlibwmfdevel += CSWlibwmf -RUNTIME_DEP_PKGS_CSWlibwmfdoc += -RUNTIME_DEP_PKGS_CSWlibwmfgtk += CSWlibwmf +PKGFILES_CSWlibwmfgtk = $(libdir).*/io-wmf.so RUNTIME_DEP_PKGS_CSWlibwmfgtk += CSWggettextrt RUNTIME_DEP_PKGS_CSWlibwmfgtk += CSWglib2 RUNTIME_DEP_PKGS_CSWlibwmfgtk += CSWgtk2 -RUNTIME_DEP_PKGS_CSWwmffonts += - +RUNTIME_DEP_PKGS_CSWlibwmfgtk += CSWlibwmf0-2-7 +RUNTIME_DEP_PKGS_CSWlibwmfgtk += CSWlibwmflite0-2-7 BUILD_DEP_PKGS += CSWgtk2devel -PKGFILES_CSWlibwmf = $(PKGFILES_RT) -PKGFILES_CSWlibwmfdevel = $(PKGFILES_DEVEL) -PKGFILES_CSWlibwmfdoc = $(sharedstatedir)/doc/.* -PKGFILES_CSWlibwmfgtk = $(libdir).*/io-wmf.so -PKGFILES_CSWwmffonts = $(sharedstatedir)/libwmf/fonts/.* - -ARCHALL_CSWlibwmfdoc = 1 -ARCHALL_CSWwmffonts = 1 - -CHECKPKG_OVERRIDES_CSWlibwmf += symbol-not-found|libwmf-0.2.so.7.1.0 -CHECKPKG_OVERRIDES_CSWwmf += symbol-not-found|io-wmf.so -CHECKPKG_OVERRIDES_CSWwmf += symbol-not-found|wmf2gd -CHECKPKG_OVERRIDES_CSWwmf += symbol-not-found|wmf2x -CHECKPKG_OVERRIDES_CSWwmf += symbol-not-found|wmf2fig -CHECKPKG_OVERRIDES_CSWwmf += symbol-not-found|wmf2svg -CHECKPKG_OVERRIDES_CSWwmf += symbol-not-found|wmf2eps - BUILD64 = 1 +NOISAEXEC = 1 -EXTRA_INC = $(prefix)/X11/include -EXTRA_LIB = $(prefix)/X11/lib -EXTRA_PKG_CONFIG_DIRS = $(prefix)/X11/lib - -# We define upstream file regex so we can be notifed of new upstream software release -UPSTREAM_MASTER_SITES = $(SF_PROJECT_SHOWFILE)=10501 -UPSTREAM_USE_SF = 1 -UFILES_REGEX = (\d+(?:\.\d+)*) - CONFIGURE_ARGS = $(DIRPATHS) CONFIGURE_ARGS += --with-x #CONFIGURE_ARGS += --with-expat=$(prefix) @@ -96,13 +113,13 @@ #CONFIGURE_ARGS += --with-xtrafontmap= CONFIGURE_ARGS += --with-gsfontmap=$(datadir)/ghostscript/Resource/Init/Fontmap.GS CONFIGURE_ARGS += --with-gsfontdir=$(datadir)/ghostscript/fonts -CONFIGURE_ARGS += --x-includes=$(prefix)/X11/include -CONFIGURE_ARGS += --x-libraries=$(abspath $(prefix)/X11/lib/$(MM_LIBDIR)) TEST_TARGET = check -STRIP_LIBTOOL = 1 +MERGE_DIRS_isa-extra = $(libdir) +# default fontpath for unix systems = /usr/share/fonts/truetype +# Are our fonts picked up correctly? +CHECKPKG_OVERRIDES_CSWlibwmfdevel += file-with-bad-content|/usr/share|root/opt/csw/include/libwmf/gd/gd.h + include gar/category.mk - -PATH := /opt/csw/gnu:$(PATH) Deleted: csw/mgar/pkg/wmf/trunk/files/fixme.sh =================================================================== --- csw/mgar/pkg/wmf/trunk/files/fixme.sh 2011-02-18 11:37:47 UTC (rev 13358) +++ csw/mgar/pkg/wmf/trunk/files/fixme.sh 2011-02-18 14:45:23 UTC (rev 13359) @@ -1,51 +0,0 @@ -#!/bin/bash -#################################################### -# -# fixme.sh -# Intended to remove the use of libtool's -# pseudo-libraries for opencsw builds. -# -# Author: Mike Watters mwatters_at_opencsw.org -# Initial Version: 0.1 -# -#################################################### - -umask 0022 -PATH=/opt/csw/bin - -if [ $# -ne 1 ]; then - gecho "USAGE: $(basename $0) WORKSRC" - exit 1 -fi -BASEPATH=$1 - -## Fix Makefiles -for mk in $(gfind ${BASEPATH} -name Makefile -print); do - LT_FILES=$(ggrep '/opt/csw.*/lib/.*\.la' ${mk} | \ - gsed "s/^.*\(\/opt\/csw.*\/lib\/.*\.la\).*$/\1/") - - for file in ${LT_FILES}; do - LIB_NAME=$(ggrep 'dlname=' ${file} | \ - gsed -e "s/.*'\(.*\)'/\1/" \ - -e "s/^lib//" \ - -e "s/\.so.*$//") - fixpath=$(gecho $file |gsed 's/\//\\\//g') - gsed "s/${fixpath}/-l${LIB_NAME}/g" ${mk} >Makefile.new - gmv Makefile.new ${mk} - gchmod +x ${mk} - done -done - -## Fix libtool Script -for lt in $(gfind ${BASEPATH} -name libtool -print); do - gsed "/for search_ext in .*\.la/s/\.la//" ${lt} >${lt}.new - gmv ${lt}.new ${lt} - gchmod +x ${lt} -done - -for LTMAIN in $(gfind ${BASEPATH} -name ltmain.sh -print); do - gsed "/for search_ext in .*\.la/s/\.la//" ${LTMAIN} >${LTMAIN}.new - gmv ${LTMAIN}.new ${LTMAIN} - gchmod +x ${LTMAIN} -done - This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Fri Feb 18 16:13:30 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Fri, 18 Feb 2011 15:13:30 +0000 Subject: [csw-devel] SF.net SVN: gar:[13360] csw/mgar/gar/v2/lib/web/templates/Srv4Detail.html Message-ID: Revision: 13360 http://gar.svn.sourceforge.net/gar/?rev=13360&view=rev Author: wahwah Date: 2011-02-18 15:13:30 +0000 (Fri, 18 Feb 2011) Log Message: ----------- pkgdb-web: Template update Say when a package doesn't belong to any catalogs. Modified Paths: -------------- csw/mgar/gar/v2/lib/web/templates/Srv4Detail.html Modified: csw/mgar/gar/v2/lib/web/templates/Srv4Detail.html =================================================================== --- csw/mgar/gar/v2/lib/web/templates/Srv4Detail.html 2011-02-18 14:45:23 UTC (rev 13359) +++ csw/mgar/gar/v2/lib/web/templates/Srv4Detail.html 2011-02-18 15:13:30 UTC (rev 13360) @@ -28,11 +28,12 @@ $fic - - +$else: +
  • The package is not part of any catalogs
  • +
  • Size: $pkg.size bytes
  • Registered: $pkg.registered
  • This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Fri Feb 18 16:14:18 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Fri, 18 Feb 2011 15:14:18 +0000 Subject: [csw-devel] SF.net SVN: gar:[13361] csw/mgar/gar/v2 Message-ID: Revision: 13361 http://gar.svn.sourceforge.net/gar/?rev=13361&view=rev Author: wahwah Date: 2011-02-18 15:14:18 +0000 (Fri, 18 Feb 2011) Log Message: ----------- uwatch: Moving the code to lib/python Modified Paths: -------------- csw/mgar/gar/v2/bin/uwatch Added Paths: ----------- csw/mgar/gar/v2/lib/python/uwatch.py Property Changed: ---------------- csw/mgar/gar/v2/bin/uwatch Modified: csw/mgar/gar/v2/bin/uwatch =================================================================== --- csw/mgar/gar/v2/bin/uwatch 2011-02-18 15:13:30 UTC (rev 13360) +++ csw/mgar/gar/v2/bin/uwatch 2011-02-18 15:14:18 UTC (rev 13361) @@ -1,1675 +1 @@ -#!/opt/csw/bin/python2.6 - -# TODO : check arguments for valid date -# TODO : check arguments for emtpy strings - -# -# The contents of this file are subject to the COMMON DEVELOPMENT AND -# DISTRIBUTION LICENSE (CDDL) (the "License"); you may not use this -# file except in compliance with the License. -# -# Software distributed under the License is distributed on an "AS IS" basis, -# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License -# for the specific language governing rights and limitations under the -# License. -# -# Alternatively, the contents of this file may be used under the terms of -# either the GNU General Public License Version 3 or later (the "GPL"), -# in which case the provisions of the GPL are applicable instead -# of those above. If you wish to allow use of your version of this file only -# under the terms of either the GPL, and not to allow others to -# use your version of this file under the terms of the CDDL, indicate your -# decision by deleting the provisions above and replace them with the notice -# and other provisions required by the GPL. If you do not delete -# the provisions above, a recipient may use your version of this file under -# the terms of any one of the CDDL, or the GPL. -# -# Copyright 2010 OpenCSW (http://www.opencsw.org). All rights reserved. -# Use is subject to license terms. -# -# -# Contributors list : -# -# William Bonnet wbonnet at opencsw.org -# -# - -# Import all the needed modules -import sys -import string -import re -import os -import shutil -import subprocess -import pysvn -import MySQLdb -import datetime -import ConfigParser - -from urllib2 import Request, urlopen, URLError -from optparse import OptionParser - -# --------------------------------------------------------------------------------------------------------------------- -# -# -class InvalidSourceDirectoryContentException(Exception): - """Exception raised when a method is called on the Abstract command class - """ - - # ----------------------------------------------------------------------------------------------------------------- - - def __init__(self, message): - self.message = message - - -# --------------------------------------------------------------------------------------------------------------------- -# -# -class AbstractCommandMethodCallException(Exception): - """Exception raised when a method is called on the Abstract command class - """ - - # ----------------------------------------------------------------------------------------------------------------- - - def __init__(self, message): - self.message = message - -# --------------------------------------------------------------------------------------------------------------------- -# -# -class SvnClientException(Exception): - """Exception raised when an error occur while using svnClient - """ - - # ----------------------------------------------------------------------------------------------------------------- - - def __init__(self, message): - self.message = message - -# --------------------------------------------------------------------------------------------------------------------- -# -# -class DatabaseConnectionException(Exception): - """Exception raised when an error occur while connecting to the database - """ - - # ----------------------------------------------------------------------------------------------------------------- - - def __init__(self, message): - self.message = message - -# --------------------------------------------------------------------------------------------------------------------- -# -# -class DuplicatePackageException(Exception): - """Exception raised when an error occur while connecting to the database - """ - - # ----------------------------------------------------------------------------------------------------------------- - - def __init__(self, message): - self.message = message - - -# --------------------------------------------------------------------------------------------------------------------- -# -# -class UpstreamUrlRetrievalFailedException(Exception): - """Exception raised when an unsuported protocol is specified in the upstream url - """ - - # ----------------------------------------------------------------------------------------------------------------- - - def __init__(self, url): - self.url = url - -# --------------------------------------------------------------------------------------------------------------------- -# -# -class NoUpstreamVersionFoundException(Exception): - """Exception raised when searching the upstream page content does not match the regexp - """ - - # ----------------------------------------------------------------------------------------------------------------- - - def __init__(self, url, regexp): - self.url = url - self.regexp = regexp - - -# --------------------------------------------------------------------------------------------------------------------- -# -# -class MissingArgumentException(Exception): - """Exception raised when a command line argument is missing - """ - - # ----------------------------------------------------------------------------------------------------------------- - - def __init__(self, value): - self.parameter = value - - def __str__(self): - return repr(self.parameter) - -# --------------------------------------------------------------------------------------------------------------------- -# -# -class InvalidArgumentException(Exception): - """Exception raised when a command line argument is invalid. For instance an invalid version or date - """ - - # ----------------------------------------------------------------------------------------------------------------- - - def __init__(self, value): - self.parameter = value - - def __str__(self): - return repr(self.parameter) - - -# --------------------------------------------------------------------------------------------------------------------- - -# --------------------------------------------------------------------------------------------------------------------- -# -# -class CommandLineParser(object): - """This class is used to parse command line. It process only options. Command verb is parsed by the main procedure - """ - - # ----------------------------------------------------------------------------------------------------------------- - - def __init__(self): - # Create the parser object - self.optionParser = OptionParser() - - # Add options to parser - self.optionParser.add_option("--verbose", help="Activate verbose mode", action="store_true", dest="verbose") - self.optionParser.add_option("--current-version", help="Current package version", action="store", dest="current_version") - self.optionParser.add_option("--target-location", help="Target location. This is the directory in which the branch will be created (parent of the branch directory). Default value is ../branches", action="store", dest="target_location") - self.optionParser.add_option("--regexp", help="Version matching regular expression", action="store", dest="regexp") - self.optionParser.add_option("--source-directory", help="Source directory (place from where the build is copied). Default value is current directory", action="store", dest="source_directory") - self.optionParser.add_option("--target-version", help="Package target version", action="store", dest="target_version") - self.optionParser.add_option("--upstream-url", help="Upstream version page url", action="store", dest="upstream_url") - - # Option used for reporting uwatch result - self.optionParser.add_option("--uwatch-error", help="Flag used to report a uwatch error", action="store_true", dest="uwatch_error") - self.optionParser.add_option("--uwatch-output", help="Flag used to report the uwatch output", action="store", dest="uwatch_output") - self.optionParser.add_option("--uwatch-deactivated",help="Flag used to report a uwatch error", action="store_true", dest="uwatch_deactivated") - self.optionParser.add_option("--uwatch-pkg-root", help="Defines the uwatch package root working directory", action="store", dest="uwatch_pkg_root") - - # Option used for storing version information in the database - self.optionParser.add_option("--gar-distfiles", help="Gar version of the package", action="store", dest="gar_distfiles") - self.optionParser.add_option("--gar-version", help="Gar version of the package", action="store", dest="gar_version") - self.optionParser.add_option("--upstream-version", help="Upstream version of the package", action="store", dest="upstream_version") - self.optionParser.add_option("--gar-path", help="Relative path in svn repository", action="store", dest="gar_path") - self.optionParser.add_option("--catalog-name", help="Catalog name", action="store", dest="catalog_name") - self.optionParser.add_option("--package-name", help="Package name", action="store", dest="package_name") - self.optionParser.add_option("--execution-date", help="Check date to be stored in the database", action="store", dest="execution_date") - - self.optionParser.add_option("--database-schema", help="Defines the database to use in the connection string", action="store", dest="database_schema") - self.optionParser.add_option("--database-host", help="Defines the database host to use in the connection string", action="store", dest="database_host") - self.optionParser.add_option("--database-user", help="Defines the database user to use in the connection string", action="store", dest="database_user") - self.optionParser.add_option("--database-password", help="Defines the database password to use in the connection string", action="store", dest="database_password") - - # ----------------------------------------------------------------------------------------------------------------- - - def parse(self): - (self.options, self.args) = self.optionParser.parse_args() - return self.options, self.args - -# --------------------------------------------------------------------------------------------------------------------- -# -# -class UwatchConfiguration(object): - """This handles parameters retrieved either from command line or configuration file. - """ - - # ----------------------------------------------------------------------------------------------------------------- - - def initialize(self, args): - """Initialize configuration object. If configurations contains files reference, values from the files are - read and copied into this object. Next attempts to retrieve files stored information will read values from - this object. - """ - - # Default is no file parser - fileParser = None - - # Test if the .uwatchrc file exists - if os.path.isfile( os.path.expanduser("~/.uwatchrc") ): - # Yes thus load values from the configuration file before processing args parameter - # This allow to override from the command line some values stored in the config file - fileParser = ConfigParser.ConfigParser() - fileParser.read( [os.path.expanduser("~/.uwatchrc") ] ) - - # Read the database schema from the config file - try: - self._database_schema = fileParser.get("main", "database-schema") - except Config.NoOptionError: - self._database_schema = None - - # Read the database hostname from the config file - try: - self._database_host = fileParser.get("main", "database-host") - except Config.NoOptionError: - self._database_host = None - - # Read the database user from the config file - try: - self._database_user = fileParser.get("main", "database-user") - except Config.NoOptionError: - self._database_user = None - - # Read the database password from the config file - try: - self._database_password = fileParser.get("main", "database-password") - except Config.NoOptionError: - self._database_password = None - - # Read the package root working dir from the config file - try: - self._uwatch_pkg_root = fileParser.get("main", "uwatch-pkg-root") - except Config.NoOptionError: - self._uwatch_pkg_root = None - - # This member variable is a flag which defines the status of the verbose mode (True : activated) - if args.verbose != None: - self._verbose = args.verbose - else: - self._verbose = False - - # This member variable defines the value of the version of the package - # Current revision is not passed as a separated argument. It is part of the opencsw version number. - # Package version are defined as follow : version[,REV=revision]* - if args.current_version != None: - - # Parse the version string - ver = re.split(r"(?P.*),REV=(?P.*)", args.current_version) - - # Test if this is a match - if ver == None: - # No, thus raise an exception - msg = "Unable to parse %(version)s as a valid package version" % { 'version' : args.current_version } - raise InvalidArgumentException(msg) - else: - # If the length of array is one, the no revision is provided - if len(ver) == 1: - self._current_version = ver[0] - self._current_revision = "" - else: - self._current_version = ver[1] - self._current_revision = ver[2] - - # Attempt to split again the string. If len is greater than 1 - # Then there are at least two rev string => raise exception - ver = re.split(r"(?P.*),REV=(?P.*)", self._current_version) - if len(ver) > 1: - msg = "Unable to parse %(version)s as a valid package version. There are more than one revision string" % { 'version' : args.current_version } - raise InvalidArgumentException(msg) - - # This member variable defines the value of the regexp used to match the upstream web page - if args.regexp != None: - self._regexp = args.regexp - - # This member variable defines the url of the upstream web page used to check for new version - if args.upstream_url != None: - self._upstream_url = args.upstream_url - - # This member variable defines the target version of the package during upgrade - if args.target_version != None: - self._target_version = args.target_version - - # This member variable defines the target directory of the package during upgrade. This is the location of the new branch - if args.target_location != None: - self._target_location = args.target_location - - # This member variable defines the source directory of the package during upgrade. This is the location of the trunk (most of the time) - if args.source_directory != None: - self._source_directory = args.source_directory - - # This member variable defines the version of the package stored in the gar build description - if args.gar_version != None: - self._gar_version = args.gar_version - - # This member variable defines the upstream version of package - if args.upstream_version != None: - self._upstream_version = args.upstream_version - - # This member variable defines the relative path in the svn repository - if args.gar_path != None: - self._gar_path = args.gar_path - - # This member variable defines the catalog name of the package - if args.catalog_name != None: - self._catalog_name = args.catalog_name - - # This member variable defines the package name - if args.package_name != None: - self._package_name = args.package_name - - # This member variable defines the date of the execution (it is useful to be able to define a date to construct history of versions) - if args.execution_date != None: - self._execution_date = args.execution_date - - # This member variable defines the database to use in the connection string - if args.database_schema != None: - self._database_schema = args.database_schema - - # This member variable defines the database host to use in the connection string - if args.database_host != None: - self._database_host = args.database_host - - # This member variable defines the database user to use in the connection string - if args.database_user != None: - self._database_user = args.database_user - - # This member variable defines the database password to use in the connection string - if args.database_password != None: - self._database_password = args.database_password - - # This member variable defines the uwatch activation status - if args.uwatch_deactivated != None: - self._uwatch_deactivated = True - else: - self._uwatch_deactivated = False - - # This member variable defines the uwatch last report result - if args.uwatch_error != None: - self._uwatch_error = True - else: - self._uwatch_error = False - - # This member variable defines the uwatch last report result - if args.uwatch_pkg_root != None: - self._uwatch_pkg_root = args.uwatch_pkg_root - - # This member variable defines the uwatch last report output - if args.uwatch_output != None: - self._uwatch_output = args.uwatch_output - - # This member variable defines the gar distfiles - if args.gar_distfiles != None: - self._gar_distfiles = args.gar_distfiles - - # ----------------------------------------------------------------------------------------------------------------- - - def __init__(self): - - # Initialize all variables to None. Even if useless, the purpose of this to keep up to date the list - self._verbose = None - self._uwatch_deactivated = False - self._uwatch_error = False - self._uwatch_pkg_root = None - self._current_version = None - self._current_revision = "" - self._regexp = None - self._upstream_url = None - self._target_version = None - self._source_directory = "." - self._target_location = "../branches" - self._gar_version = None - self._upstream_version = None - self._gar_path = None - self._catalog_name = None - self._package_name = None - self._execution_date = None - self._database_schema = None - self._database_host = None - self._database_user = None - self._database_password = None - self._gar_distfiles = None - self._uwatch_output = None - - # ----------------------------------------------------------------------------------------------------------------- - - def getCurrentVersion(self): - return self._current_version - - # ----------------------------------------------------------------------------------------------------------------- - - def getCurrentRevision(self): - return self._current_revision - - # ----------------------------------------------------------------------------------------------------------------- - - def getRegexp(self): - # In case the regexp is not define, we try to guess it using the distfile - if (self._regexp == None) & (self._gar_distfiles != None): - # Instanciate a regexp generator - urg = UwatchRegexGenerator() - - # Retrieve the regexp list - auto_regex_list = urg.GenerateRegex(self._catalog_name, self._gar_distfiles) - - # Use the first item as current regexp - self._regexp = auto_regex_list[0] - - return self._regexp - - # ----------------------------------------------------------------------------------------------------------------- - - def getUpstreamURL(self): - return self._upstream_url - - # ----------------------------------------------------------------------------------------------------------------- - - def getVerbose(self): - return self._verbose - - # ----------------------------------------------------------------------------------------------------------------- - - def getSourceDirectory(self): - return self._source_directory - - # ----------------------------------------------------------------------------------------------------------------- - - def getTargetLocation(self): - return self._target_location - - # ----------------------------------------------------------------------------------------------------------------- - - def getTargetVersion(self): - return self._target_version - - # ----------------------------------------------------------------------------------------------------------------- - - def getGarVersion(self): - return self._gar_version - - # ----------------------------------------------------------------------------------------------------------------- - - def getUpstreamVersion(self): - return self._upstream_version - - # ----------------------------------------------------------------------------------------------------------------- - - def getGarPath(self): - if self.getUwatchPkgRoot(): - return self._gar_path.replace(self.getUwatchPkgRoot(), "") - else: - return self._gar_path - - # ----------------------------------------------------------------------------------------------------------------- - - def getCatalogName(self): - return self._catalog_name - - # ----------------------------------------------------------------------------------------------------------------- - - def getPackageName(self): - return self._package_name - - # ----------------------------------------------------------------------------------------------------------------- - - def getExecutionDate(self): - return self._execution_date - - # ----------------------------------------------------------------------------------------------------------------- - - def getDatabaseSchema(self): - return self._database_schema - - # ----------------------------------------------------------------------------------------------------------------- - - def getDatabaseHost(self): - return self._database_host - - # ----------------------------------------------------------------------------------------------------------------- - - def getDatabaseUser(self): - return self._database_user - - # ----------------------------------------------------------------------------------------------------------------- - - def getDatabasePassword(self): - return self._database_password - - # ----------------------------------------------------------------------------------------------------------------- - - def getUwatchError(self): - return self._uwatch_error - - # ----------------------------------------------------------------------------------------------------------------- - - def getUwatchDeactivated(self): - return self._uwatch_deactivated - - # ----------------------------------------------------------------------------------------------------------------- - - def getUwatchPkgRoot(self): - return self._uwatch_pkg_root - - # ----------------------------------------------------------------------------------------------------------------- - - def getGarDistfiles(self): - return self._gar_distfiles - - # ----------------------------------------------------------------------------------------------------------------- - - def getUwatchOutput(self): - return self._uwatch_output - - -# --------------------------------------------------------------------------------------------------------------------- -# -# -class AbstractCommand(object): - """Base class for command implementation. You should create a derived class per command to implemente. - A "command" represent a concrete action verb given to the program. - """ - - # ----------------------------------------------------------------------------------------------------------------- - - def __init__(self, name): - self.config = UwatchConfiguration() - self.name = name - - # ----------------------------------------------------------------------------------------------------------------- - - def getName(self): - return self.name - - # ----------------------------------------------------------------------------------------------------------------- - - def execute(self, opts, arguments): - print "Internal error : Abstract command method called\n" - raise AbstractCommandMethodCallException("execute") - -# --------------------------------------------------------------------------------------------------------------------- -# -# -class UpstreamWatchCommand(AbstractCommand): - """UpstreamWatch command. This command is the base class used for all upstream watch commands. It provides argument checking - url content retrieving, version comparison, etc. - """ - - # ----------------------------------------------------------------------------------------------------------------- - - def __init__(self, name): - super(UpstreamWatchCommand, self).__init__(name) - - # ----------------------------------------------------------------------------------------------------------------- - - def UrlContentRetrieve(self, url): - - try: - # Request the upstream URL and open it - req = Request(url) - response = urlopen(req) - - except URLError, e: - if hasattr(e, 'reason'): - print 'We failed to reach a server during retrieval of : ' + url - print 'Reason: ', e.reason - elif hasattr(e, 'code'): - print 'The server couldn\'t fulfill the request during retrieval of : ' + url - print 'Error code: ', e.code - - # Check for response code value. We should get a 200 - raise UpstreamUrlRetrievalFailedException(url) - - else: - # everything is fine, retrieve the page content - return response.read() - - - # ----------------------------------------------------------------------------------------------------------------- - - def CompareVersionAndGetNewest(self, version1, version2): - - # we consider the version to be composed of several elements separated by '.' ',' '-' or '_' - # an elements can be a string or a number - # at each step we extract the next elements of the two version strings and compare them - - if isinstance(version1, str) == False: - print "Version is not a string. Please check environnement variable UFILES_REGEX" - print version1 - - if isinstance(version2, str) == False: - print "Version is not a string. Please check environnement variable UFILES_REGEX" - print version2 - - # Retrieve the tokens from both version. Use . - , and _ as splitters - splittingRegExp = "(?:[\.,_-])" - tokens1 = re.split(splittingRegExp, version1) - tokens2 = re.split(splittingRegExp, version2) - - # Iterates the toeksn of version 1, pop tokens one by one and compare to the token at same - # in version 2 - while len(tokens1) > 0: - # If we still have tokens in version 1 and version 2 is empty, then version 1 is newer - # TODO: may have to deal with beta suffixes... - if len(tokens2) == 0: - return version1 - - # Convert both elements to integer - # TODO : handles chars in versions - elem1 = tokens1.pop(0) - elem2 = tokens2.pop(0) - - # If both elements are integer, then convert to int before comparison, otherwise compare strings - try: - elem1 = int(elem1) - elem2 = int(elem2) - except: - elem1 = str(elem1) - elem2 = str(elem2) - # print "Doing string comparison" - - # print "Comparing %(elem1)s and %(elem2)s" % { 'elem1' : elem1 , 'elem2' : elem2 } - - # if elements are the same continue the loop - if elem1 == elem2: - continue - - # Test if elem1 is more recent - if elem1 > elem2: - # print "%(elem1)s > %(elem2)s" % { 'elem1' : elem1 , 'elem2' : elem2 } - return version1 - else: - # print "%(elem1)s < %(elem2)s" % { 'elem1' : elem1 , 'elem2' : elem2 } - return version2 - - return version1 - -# --------------------------------------------------------------------------------------------------------------------- -# -# -class CheckUpstreamCommand(UpstreamWatchCommand): - """CheckUpstream command. This command retrieve the upstream web page and search for a new version. Version check is - done by matching the regexp from the makefile on the page. Results are sorted to get the highest available and - compared to current version - """ - - # ----------------------------------------------------------------------------------------------------------------- - - def __init__(self, name): - super(CheckUpstreamCommand, self).__init__(name) - - # ----------------------------------------------------------------------------------------------------------------- - - def checkArgument(self): - - # Variable used to flag that we have a missing argument - argsValid = True - - # Current version is mandatory - if self.config.getCurrentVersion() == None: - print "Error : Current version is not defined. Please use --current-version flag, or --help to display help" - argsValid = False - - # Regexp is mandatory - if self.config.getRegexp() == None: - print "Error : Regexp is not defined. Please use --regexp flag, or --help to display help" - argsValid = False - - # UpstreamURL is mandatory - if self.config.getUpstreamURL() == None: - print "Error : Upstream version page URL is not defined. Please use --upstream-url flag, or --help to display help" - argsValid = False - - # If arguments are not valid raise an exception - if argsValid == False: - raise MissingArgumentException("Some mandatory arguments are missing. Unable to continue.") - - # ----------------------------------------------------------------------------------------------------------------- - - def execute(self, opts, args): - - try: - - # Initialize configuration - self.config.initialize(opts) - - # Need a way to check that all options needed are available - self.checkArgument() - - # Call the method in charge of retrieving upstream content - content = self.UrlContentRetrieve(self.config.getUpstreamURL()) - - # Search the strings matching the regexp passed through command line arguments - p = re.compile(self.config.getRegexp()) - matches = p.findall(content) - - # Check if we have found some results - if len(matches) == 0: - raise NoUpstreamVersionFoundException(self.config.getUpstreamURL(), self.config.getRegexp()) - else: - newestVersion = self.config.getCurrentVersion() - while len(matches) > 0: - newestVersion = self.CompareVersionAndGetNewest(newestVersion, matches.pop(0)) - - # At the end of the processing loop, test if we have a newer version avail, if yes output it - if newestVersion <> self.config.getCurrentVersion(): - print newestVersion - - # Exit after processing, eveythin gis ok, return true to the command processor - return True - - except MissingArgumentException, (instance): - - # Display a cool error message :) - print instance.parameter - - # Exits through exception handling, thus return false to the command processor - return False - - except UpstreamUrlRetrievalFailedException, (instance): - - # Exits through exception handling, thus return false to the command processor - return False - - except NoUpstreamVersionFoundException, (instance): - - # Exits through exception handling, thus return false to the command processor - return False - - -# --------------------------------------------------------------------------------------------------------------------- -# -# -class GetUpstreamLatestVersionCommand(UpstreamWatchCommand): - """GetUpstreamLatestVersion command. This command retrieve the upstream web page and search for the latest version. - Version check is done by matching the regexp from the makefile on the page. Results are sorted to get the newest version - """ - - # ----------------------------------------------------------------------------------------------------------------- - - def __init__(self, name): - super(GetUpstreamLatestVersionCommand, self).__init__(name) - - # ----------------------------------------------------------------------------------------------------------------- - - def checkArgument(self): - - # Variable used to flag that we have a missing argument - argsValid = True - - # Regexp is mandatory - if self.config.getRegexp() == None: - print "Error : Regexp is not defined. Please use --regexp flag, or --help to display help" - argsValid = False - - # UpstreamURL is mandatory - if self.config.getUpstreamURL() == None: - print "Error : Upstream version page URL is not defined. Please use --upstream-url flag, or --help to display help" - argsValid = False - - # If arguments are not valid raise an exception - if argsValid == False: - raise MissingArgumentException("Some mandatory arguments are missing. Unable to continue.") - - # ----------------------------------------------------------------------------------------------------------------- - - def execute(self, opts, args): - - try: - - # Initialize configuration - self.config.initialize(opts) - - # Need a way to check that all options needed are available - self.checkArgument() - - # Call the method in charge of retrieving upstream content - content = self.UrlContentRetrieve(self.config.getUpstreamURL()) - - # Search the strings matching the regexp passed through command line arguments - p = re.compile(self.config.getRegexp()) - matches = p.findall(content) - - # Check if we have found some results - if len(matches) == 0: - raise NoUpstreamVersionFoundException(self.config.getUpstreamURL(), self.config.getRegexp()) - else: - newestVersion = matches.pop(0) - while len(matches) > 0: - newestVersion = self.CompareVersionAndGetNewest(newestVersion, matches.pop(0)) - - # At the end of the processing loop, we print the version - print newestVersion - - # Exit after processing, eveythin gis ok, return true to the command processor - return True - - except MissingArgumentException, (instance): - - # Display a cool error message :) - print instance.parameter - - # Exits through exception handling, thus return false to the command processor - return False - - except UpstreamUrlRetrievalFailedException, (instance): - - # Exits through exception handling, thus return false to the command processor - return False - - except NoUpstreamVersionFoundException, (instance): - - # Exits through exception handling, thus return false to the command processor - return False - -# --------------------------------------------------------------------------------------------------------------------- -# -# -class GetUpstreamVersionListCommand(UpstreamWatchCommand): - """GetUpstreamVersionList command. This command retrieve the upstream web page and search for all the versions. - Version check is done by matching the regexp from the makefile on the page. - """ - - # ----------------------------------------------------------------------------------------------------------------- - - def __init__(self, name): - super(GetUpstreamVersionListCommand, self).__init__(name) - - # ----------------------------------------------------------------------------------------------------------------- - - def checkArgument(self): - - # Variable used to flag that we have a missing argument - argsValid = True - - # Regexp is mandatory - if self.config.getRegexp() == None: - print "Error : Regexp is not defined. Please use --regexp flag, or --help to display help" - argsValid = False - - # UpstreamURL is mandatory - if self.config.getUpstreamURL() == None: - print "Error : Upstream version page URL is not defined. Please use --upstream-url flag, or --help to display help" - argsValid = False - - # If arguments are not valid raise an exception - if argsValid == False: - raise MissingArgumentException("Some mandatory arguments are missing. Unable to continue.") - - # ----------------------------------------------------------------------------------------------------------------- - - def compareAndSortVersion(self, a, b): - """This function is a wrapper to the comparison function. CompareVersionAndGetNewest returns the string containing - the newest version of the two arguments. Since sort method used on list need to have an integer return value, this - wrapper do the call to CompareVersionAndGetNewest and returns an int - """ - - if self.CompareVersionAndGetNewest(a,b) == a: - return 1 - else: - return -1 - - # ----------------------------------------------------------------------------------------------------------------- - - def execute(self, opts, args): - - try: - - # Initialize configuration - self.config.initialize(opts) - - # Need a way to check that all options needed are available - self.checkArgument() - - # Call the method in charge of retrieving upstream content - content = self.UrlContentRetrieve(self.config.getUpstreamURL()) - - listURL = self.config.getUpstreamURL().split(' ') - - # Search the strings matching the regexp passed through command line arguments - p = re.compile(self.config.getRegexp()) - matches = p.findall(content) - - # Check if we have found some results - if len(matches) == 0: - raise NoUpstreamVersionFoundException(self.config.getUpstreamURL(), self.config.getRegexp()) - else: - # Remove duplicated entries - myList = [] - for version in matches: - myList.append(version) - - l = list(set(myList)) - l.sort(self.compareAndSortVersion) - - # Print every version in the list - for version in l: - print version - - # Exit after processing, eveythin gis ok, return true to the command processor - return True - - except MissingArgumentException, (instance): - - # Display a cool error message :) - print instance.parameter - - # Exits through exception handling, thus return false to the command processor - return False - - except UpstreamUrlRetrievalFailedException, (instance): - - # Exits through exception handling, thus return false to the command processor - return False - - except NoUpstreamVersionFoundException, (instance): - - # Exits through exception handling, thus return false to the command processor - return False - - -# --------------------------------------------------------------------------------------------------------------------- -# -# -class UpgradeToVersionCommand(UpstreamWatchCommand): - """UpgradeToVersion command. This command upgrade the build description from a version to another. - Current files in trunk are copied to a new branch. Branch is named accord to the following pattern : - PKG/branches/upgrade_from_CURRENTVERSION_to_DESTVERSION. After copy, version in the Makefile is modified. - An optional argument can be passed to commit after branch creation. - - """ - - # ----------------------------------------------------------------------------------------------------------------- - - def __init__(self, name): - super(UpgradeToVersionCommand, self).__init__(name) - - # ----------------------------------------------------------------------------------------------------------------- - - def checkArgument(self): - - # Variable used to flag that we have a missing argument - argsValid = True - - # FromVersion is mandatory - if self.config.getCurrentVersion() == None: - print "Error : Current version is not defined. Please use --current-version flag, or --help to display help" - argsValid = False - - # ToVersion is mandatory - if self.config.getTargetVersion() == None: - print "Error : Target version is not defined. Please use --target-version flag, or --help to display help" - argsValid = False - - # ToVersion is mandatory - if self.config.getTargetLocation() == None: - print "Error : Target directory is not defined. Please use --target-location flag, or --help to display help" - argsValid = False - - # If arguments are not valid raise an exception - if argsValid == False: - raise MissingArgumentException("Some mandatory arguments are missing. Unable to continue.") - - # ----------------------------------------------------------------------------------------------------------------- - - def checkWorkingDirectory(self): - """ This method checks that the command is executed from a valid working directory. A valid working directory - is a directory in which we find a package buildDescription that means a Makefile and a gar directory or symlink - """ - - # Check that the Makefile exist - if os.path.isfile(self.config.getSourceDirectory() + "/Makefile") == False: - # No it does not exist, thus generate an error message - msg = "Error : there is no Makefile under %(src)s" % { "src" : os.path.abspath(self.config.getSourceDirectory()) } - - # Then raise an exception - raise InvalidSourceDirectoryContentException(msg) - - # Check that the gar directory exists (can be a directory or symlink) - if os.path.isdir(self.config.getSourceDirectory() + "/gar") == False: - # No it does not exist, thus generate an error message - msg = "Error : there is no gar directory under %(src)s" % { "src" : os.path.abspath(self.config.getSourceDirectory()) } - - # Then raise an exception - raise InvalidSourceDirectoryContentException(msg) - - # ----------------------------------------------------------------------------------------------------------------- - - def getGarRelativeTargetDirectory(self): - """ This method return None if gar directory is an actual directory, or a relative path if gar is a symlink to - a real directory. In case of a symlink pointing to another symlink, we do not try to get the absolute path - having one level of indirection is enough. - The target directory is a relative path. This path is adjusted to be consistent from the target directory. It - has to be modified since it is basically a relative path from the source directory. - """ - - # Get the newgar information - garDir = self.config.getSourceDirectory() + "/gar" - if os.path.islink(garDir): - garTarget = os.path.relpath(os.path.abspath(os.readlink(garDir)), os.path.abspath(targetDir)) - else: - garTarget = None - - # ----------------------------------------------------------------------------------------------------------------- - - def getGarRelativeTargetDirectory(self): - """ This method return None if gar directory is an actual directory, or a relative path if gar is a symlink to - a real directory. In case of a symlink pointing to another symlink, we do not try to get the absolute path - having one level of indirection is enough. - The target directory is a relative path. This path is adjusted to be consistent from the target directory. It - has to be modified since it is basically a relative path from the source directory. - """ - - # Get the newgar information - garDir = self.config.getSourceDirectory() + "/gar" - if os.path.islink(garDir): - garTarget = os.path.relpath(os.path.abspath(os.readlink(garDir)), os.path.abspath(self.getTargetDirectory())) - else: - garTarget = None - - return garTarget - - # ----------------------------------------------------------------------------------------------------------------- - - def getTargetDirectory(self): - """ This method return the target directory which is a computed value based on target location, current version - and target version - """ - - return self.config.getTargetLocation() + "/upgrade_from_" + self.config.getCurrentVersion() + "_to_" + self.config.getTargetVersion() - - # ----------------------------------------------------------------------------------------------------------------- - - def copySvnSourceToTarget(self, garRelativeTarget): - """ This method copy sources from the working copy to the target in the same working copy. If garRelativeTarget is not - None, it means gar directory is a symlink. Then once copy is done it is deleted in the target directory and - recreated to point to the new relative directory - """ - - try: - # Create a new svn client - svnClient = pysvn.Client() - - # Do the actual copy in the svn working copy - svnClient.copy(os.path.abspath(self.config.getSourceDirectory()), self.getTargetDirectory()) - - # Backup the current directory - curDir = os.getcwd() - - # Change to target directory - os.chdir(self.getTargetDirectory()) - - # Test if gar relative path is defined - if garRelativeTarget: - # Test if gar directory is a symlink and - if os.path.islink("./gar"): - os.remove("./gar") - os.symlink(garRelativeTarget, "./gar") - # No ... :( This a "should not happen error" since it was a symlink before the copy. Exit - else: - print "Internal error : gar is not a symlink but garRelativeTarget is defined" - return False - # No else but ... If gar relative path is not defined, we have copied a real directory. Nothing to do in this case - - # Restore the working directory - os.chdir(curDir) - - # SVN client exception handling - except pysvn.ClientError , e: - # Generate a cool error message - msg = "SVN Client error : " + e.args[0] + "\n" + "Error occured when executing command svnClient.copy(%(src)s, %(dest)s)" \ - % { 'src' : os.path.abspath(self.config.getSourceDirectory()), 'dest' : self.getTargetDirectory() } - - # Then raise the exception - raise SvnClientException(msg) - - # ----------------------------------------------------------------------------------------------------------------- - - def modifyVersion(self): - """ This method modifies the version in the Makefile. It replaces current version by new version. - Version has to be defined on a single line strting by VERSION, having some spaces or tabs then - and egal sign = then some tabs or spaces and the version vaue to finish the line - """ - - # Backup the current directory - curDir = os.getcwd() - - # Change to target directory - os.chdir(self.getTargetDirectory()) - - # Array storing the Makefile lines - lines = [] - - # Iterate each line in the file - for line in open("./Makefile", 'r'): - # Match the file line by line - m = re.match(r"\s*VERSION\s*=\s*(?P.*)", line) - - # Test if this is a match - if m == None: - # No, thus output the current line without modifications - lines.append(line) - else: - # Yes it is a match, thus output the modified line - lines.append("VERSION = " + self.config.getTargetVersion() + "\n") - - # Open the new Makefile for output - f = open("./Makefile", 'w') - - # Iterates the array of lines and write each one to the Makefile - for element in lines: - f.write(element) - - # Close the Makefile - f.close() - - # Restore the working directory - os.chdir(curDir) - - # ----------------------------------------------------------------------------------------------------------------- - - def execute(self, opts, args): - - try: - - # Initialize configuration - self.config.initialize(opts) - - # Need a way to check that all options needed are available - self.checkArgument() - - # Check that the command is launched from a valid directory - self.checkWorkingDirectory() - - # Generates the target directory - self.getTargetDirectory() - - # Get the new gar information - garRelativeTarget = self.getGarRelativeTargetDirectory() - - # Copy target directory to destination - self.copySvnSourceToTarget(garRelativeTarget) - - # Modify the version inside the Makefile - self.modifyVersion() - - # Exit after processing, eveythin gis ok, return true to the command processor - return True - - # Handles exception that occurs when arguments are incorrect - except MissingArgumentException, instance: - - # Display a cool error message :) - print instance.parameter - - # Exits through exception handling, thus return false to the command processor - return False - - # Handles SVN client exception - except SvnClientException , e: - - # Display a cool error message :) - print e.message - - # Exits through exception handling, thus return false to the command processor - return False - - # Handles exceptions which might occur while checking source directory content - except InvalidSourceDirectoryContentException , e: - - # Display a cool error message :) - print e.message - - # Exits through exception handling, thus return false to the command processor - return False - -# --------------------------------------------------------------------------------------------------------------------- -# -# -class ReportPackageVersionCommand(UpstreamWatchCommand): - """ReportPackageVersion command. This command report and store in the database the values of version and date passed - by arguments to upstream watch. Unique key is the composed by garpath and catalog name. It means the same package can - lie into different path in the svn repository. - """ - - # ----------------------------------------------------------------------------------------------------------------- - - def __init__(self, name): - super(ReportPackageVersionCommand, self).__init__(name) - self.conn = None - - # ----------------------------------------------------------------------------------------------------------------- - - def openDatabaseConnection(self): - """This method open a connection to the mysql database using value from the configuration parser. The result of - connect method is stored into a connection object - """ - - # Open the database connection - try: - self.conn = MySQLdb.connect(host = self.config.getDatabaseHost(), - passwd = self.config.getDatabasePassword(), - db = self.config.getDatabaseSchema(), - user = self.config.getDatabaseUser() ) - - except MySQLdb.Error, e: - msg = "Error %d: %s" % (e.args[0], e.args[1]) - raise DatabaseConnectionException(msg) - - # Check that the object we got in return if defiend - if self.conn == None: - # No, raise a DatabaseConnectionException - msg = "Unable to connect to database using host = %(host)s, db = %(db)s, user = %(user)s, passwd = %(passwd)% " % { "host" : self.config.getDatabaseHost(), "passwd" : self.config.getDatabasePassword(), "db" : self.config.getDatabaseSchema(), "user" : self.config.getDatabaseUser() } - raise DatabaseConnectionException(msg) - - # ----------------------------------------------------------------------------------------------------------------- - - def closeDatabaseConnection(self): - """This method close the connection opened by openDatabaseConnection. - """ - - # Check that the connection object is valid - if self.conn : - # Yes, commit pending transactions - self.conn.commit() - - # Close the connection - self.conn.close() - else: - # No, raise a DatabaseConnectionException - msg = "Unable to disconnect from the database. Connection objet is not defined" - raise DatabaseConnectionException(msg) - - # ----------------------------------------------------------------------------------------------------------------- - - def updateVersionInDatabase(self): - """This method updates the version in the database. First it checks for the package to update using a unique - key composed of gar svn path and catalog name. If not found the package is created, otherwise it is updated. - In both case, if data are writtent to the database, entries in history table are created. - """ - - try: - # Flag used to keep track of the fact we have created a new package. Used in some case to choose behavior - isNewlyCreatedPackage = False - - # Check that the connection is defined - if self.conn == None: - # No, raise a DatabaseConnectionException - msg = "Unable to query the database. Connection objet is not defined" - raise DatabaseConnectionException(msg) - - # Get a cursor object - cursor = self.conn.cursor(MySQLdb.cursors.DictCursor) - - # First retrieve the id_pkg and deletion flag from the database - cursor.execute("select * from UWATCH_PKG_VERSION where PKG_CATALOGNAME = %s", (self.config.getCatalogName() ) ) - - # if more than one row is found, then report an error - if cursor.rowcount > 1: - msg = self.config.getCatalogName() - raise DuplicatePackageException(msg) - - # If rowcount = 0 then the package does not exist. It has to be inserted in the database - if cursor.rowcount == 0: - - # Insert the package in the package version table - cursor.execute("insert into UWATCH_PKG_VERSION (PKG_GAR_PATH, PKG_CATALOGNAME, PKG_NAME, PKG_GAR_VERSION, PKG_LAST_GAR_CHECK_DATE) \ - values ( %s , %s , %s , %s , %s )" , (self.config.getGarPath(), self.config.getCatalogName(), \ - self.config.getPackageName(), self.config.getGarVersion(), self.config.getExecutionDate() ) ) - - # Flag that we have created a package - isNewlyCreatedPackage = True - - # Output some more information if verbose mode is activated - if self.config.getVerbose() == True: - print "Package %(pkg)s added to the database" % { 'pkg' : self.config.getCatalogName() } - - # Now the package is inserted. Retrieve the newly inserted package and update other versions - cursor.execute("select * from UWATCH_PKG_VERSION where PKG_GAR_PATH = %s and PKG_CATALOGNAME = %s", \ - (self.config.getGarPath(), self.config.getCatalogName() ) ) - - # Retrieve package information - pkg = cursor.fetchone() - - # Test if the deleted flag is set - if pkg["PKG_IS_DELETED"] == 1: - # Yes thus package has to be undeleted - cursor.execute("update UWATCH_PKG_VERSION set PKG_IS_DELETED = 0 where ID_PKG='%s'" , ( pkg["ID_PKG"] ) ) - - # Output some more information if verbose mode is activated - if self.config.getVerbose() == True: - print "Package %(pkg)s has been undeleted" % { 'pkg' : self.config.getCatalogName() } - - # Test if the package has just been created. If yes the history line for gar version has to be inserted - if isNewlyCreatedPackage: - cursor.execute("insert into UWATCH_VERSION_HISTORY ( ID_PKG , HIST_VERSION_TYPE , HIST_VERSION_VALUE , HIST_VERSION_DATE ) values ( %s, %s, %s, %s)" , ( pkg["ID_PKG"], "gar", self.config.getGarVersion() , self.config.getExecutionDate() ) ) - - # In all cases (update or not) we update the last version check according to the argument - cursor.execute("update UWATCH_PKG_VERSION set PKG_LAST_UPSTREAM_CHECK_DATE = %s , PKG_GAR_PATH = %s where ID_PKG= %s" , ( self.config.getExecutionDate(), self.config.getGarPath() , pkg["ID_PKG"] ) ) - - # Test if uwatch deactivated flag is set - if self.config.getUwatchDeactivated() == True: - # Yes thus package has to be deactivated - cursor.execute("update UWATCH_PKG_VERSION set PKG_UWATCH_ACTIVATED='0' where ID_PKG= %s" , ( pkg["ID_PKG"] ) ) - if self.config.getVerbose() == True: - print "%(pkg) uWatch is deactivated, updating database" % { 'pkg' : self.config.getCatalogName() } - else: - cursor.execute("update UWATCH_PKG_VERSION set PKG_UWATCH_ACTIVATED='1' where ID_PKG= %s" , ( pkg["ID_PKG"] ) ) - # Change execution status only if activated - if self.config.getUwatchError() == True: - # Yes thus package has to be updated - cursor.execute("update UWATCH_PKG_VERSION set PKG_LAST_UPSTREAM_CHECK_STATUS='0' where ID_PKG= %s" , ( pkg["ID_PKG"] ) ) - if self.config.getVerbose() == True: - print "%(pkg)s uWatch reported an error, updating database" % { 'pkg' : self.config.getCatalogName() } - else: - cursor.execute("update UWATCH_PKG_VERSION set PKG_LAST_UPSTREAM_CHECK_STATUS='1' where ID_PKG= %s" , ( pkg["ID_PKG"] ) ) - if self.config.getVerbose() == True: - print "%(pkg)s uWatch successfully ran, updating database" % { 'pkg' : self.config.getCatalogName() } - - # Test if upstream version is passed - if self.config.getUpstreamVersion(): - # In all cases (update or not) we update the last version check according to the argument - cursor.execute("update UWATCH_PKG_VERSION set PKG_LAST_UPSTREAM_CHECK_DATE = %s , PKG_GAR_PATH = %s where ID_PKG= %s" , ( self.config.getExecutionDate(), self.config.getGarPath() , pkg["ID_PKG"] ) ) - - # Yes, compare current upstream version from commandline and database - if self.config.getUpstreamVersion() != pkg["PKG_UPSTREAM_VERSION"]: - # Yes thus package has to be updated - cursor.execute("update UWATCH_PKG_VERSION set PKG_UPSTREAM_VERSION = %s where ID_PKG= %s" , ( self.config.getUpstreamVersion(), pkg["ID_PKG"] ) ) - cursor.execute("insert into UWATCH_VERSION_HISTORY ( ID_PKG , HIST_VERSION_TYPE , HIST_VERSION_VALUE , HIST_VERSION_DATE ) \ - values ( %s, %s, %s, %s)" , ( pkg["ID_PKG"], "upstream", self.config.getUpstreamVersion() , self.config.getExecutionDate() ) ) - - # Output some more information if verbose mode is activated - if self.config.getVerbose() == True: - print "Upgrading %(pkg)s upstream version from %(current)s to %(next)s" % { 'pkg' : self.config.getCatalogName(), \ - 'next' : self.config.getUpstreamVersion() , 'current' : pkg["PKG_UPSTREAM_VERSION"] } - else: - # Output some more information if verbose mode is activated - if self.config.getVerbose() == True: - print "%(pkg) GAR version is up to date (%(current)s)" % { 'pkg' : self.config.getCatalogName(), 'current' : self.config.getUpstreamVersion() } - - # Test if gar version is passed (it is mandatory to have a value in database) - if self.config.getGarVersion(): - # In all cases (update or not) we update the last version check according to the argument - cursor.execute("update UWATCH_PKG_VERSION set PKG_LAST_GAR_CHECK_DATE = %s where ID_PKG= %s" , ( self.config.getExecutionDate(), pkg["ID_PKG"] ) ) - - # Yes, compare current gar version from commandline and database - if self.config.getGarVersion() != pkg["PKG_GAR_VERSION"]: - # Yes thus package has to be updated - cursor.execute("update UWATCH_PKG_VERSION set PKG_GAR_VERSION = %s where ID_PKG= %s" , ( self.config.getGarVersion(), pkg["ID_PKG"] ) ) - cursor.execute("insert into UWATCH_VERSION_HISTORY ( ID_PKG , HIST_VERSION_TYPE , HIST_VERSION_VALUE , HIST_VERSION_DATE ) \ - values ( %s, %s, %s, %s)" , ( pkg["ID_PKG"], "gar", self.config.getGarVersion() , self.config.getExecutionDate() ) ) - - # Output some more information if verbose mode is activated - if self.config.getVerbose() == True: - print "Upgrading %(pkg)s gar version from %(current)s to %(next)s" % { 'pkg' : self.config.getCatalogName(), \ - 'next' : self.config.getGarVersion() , 'current' : pkg["PKG_GAR_VERSION"] } - - # Before closing the connection, there is a last thing to do... storing uwatch configuration into the database - - # Yes, compare current gar version from commandline and database - cursor.execute("update UWATCH_PKG_VERSION set PKG_GAR_DISTFILES = %s, PKG_UFILES_REGEXP = %s, PKG_UPSTREAM_MASTER_SITES = %s, PKG_UWATCH_LAST_OUTPUT = %s where ID_PKG= %s" , ( self.config.getGarDistfiles(), self.config.getRegexp(), self.config.getUpstreamURL(), self.config.getUwatchOutput(), pkg["ID_PKG"] ) ) - - # Close the cursor on the database - cursor.close() - - except MySQLdb.Error, e: - msg = "Error %d: %s" % (e.args[0], e.args[1]) - raise DatabaseConnectionException(msg) - - - # ----------------------------------------------------------------------------------------------------------------- - - def checkArgument(self): - - # Variable used to flag that we have a missing argument - argsValid = True - - # Gar path is mandatory - if self.config.getGarPath() == None: - print "Error : Gar path is not defined. Please use --gar-path flag, or --help to display help" - argsValid = False - - # Gar distfiles is mandatory - if self.config.getGarDistfiles() == None: - print "Error : Gar distfiles is not defined. Please use --gar-distfiles flag, or --help to display help" - argsValid = False - - # Gar distfiles is mandatory - if self.config.getUwatchOutput() == None: - print "Error : uWatch output is not defined. Please use --uwatch-output flag, or --help to display help" - argsValid = False - - # Catalog name is mandatory - if self.config.getCatalogName() == None: - print "Error : Catalog name is not defined. Please use --catalog-name flag, or --help to display help" - argsValid = False - - # Package name is mandatory - if self.config.getPackageName() == None: - print "Error : Package name is not defined. Please use --package-name flag, or --help to display help" - argsValid = False - - # Execution date is mandatory - if self.config.getExecutionDate() == None: - print "Error : Execution date is not defined. Please use --execution-date flag, or --help to display help" - argsValid = False - - # Gar version is mandatory, other version are optional. Gar the version is the only mandatory in the database - # It has to be passed in argument in case the package does not exist yet - if self.config.getGarVersion() == None: - print "Error : Gar version is not defined. Please use --gar-version flag, or --help to display help" - argsValid = False - - # Database schema is mandatory - if self.config.getDatabaseSchema() == None: - print "Error : Database schema is not defined. Please define the value in the ~/.uwatchrc file, use --database-schema flag, or --help to display help" - argsValid = False - - # Database host is mandatory - if self.config.getDatabaseHost() == None: - print "Error : Database host is not defined. Please define the value in the ~/.uwatchrc file, use --database-host flag, or --help to display help" - argsValid = False - - # Database user is mandatory - if self.config.getDatabaseUser() == None: - print "Error : Database user is not defined. Please define the value in the ~/.uwatchrc file, use --database-user flag, or --help to display help" - argsValid = False - - # Database password is mandatory - if self.config.getDatabasePassword() == None: - print "Error : Database password is not defined. Please define the value in the ~/.uwatchrc file, use --database-password flag, or --help to display help" - argsValid = False - - # Regexp is mandatory - if self.config.getRegexp() == None: - print "Error : Regexp is not defined. Please use --regexp flag, or --help to display help" - argsValid = False - - # UpstreamURL is mandatory - if self.config.getUpstreamURL() == None: - print "Error : Upstream version page URL is not defined. Please use --upstream-url flag, or --help to display help" - argsValid = False - - # If arguments are not valid raise an exception - if argsValid == False: - raise MissingArgumentException("Some mandatory arguments are missing. Unable to continue.") - - # ----------------------------------------------------------------------------------------------------------------- - - def execute(self, opts, args): - - try: - - # Initialize configuration - self.config.initialize(opts) - - # Need a way to check that all options needed are available - self.checkArgument() - - # Connection to the database - self.openDatabaseConnection() - - # Connection to the database - self.updateVersionInDatabase() - - # Connection to the database - self.closeDatabaseConnection() - - # Exit after processing, eveythin gis ok, return true to the command processor - return True - - except MissingArgumentException, (instance): - - # Display a cool error message :) - print instance.parameter - - # Exits through exception handling, thus return false to the command processor - return False - - except InvalidArgumentException, (instance): - - # Display a cool error message :) - print instance.parameter - - # Exits through exception handling, thus return false to the command processor - return False - - except DatabaseConnectionException, (instance): - - # Display a cool error message :) - print instance.message - - # Exits through exception handling, thus return false to the command processor - return False - -# --------------------------------------------------------------------------------------------------------------------- -# -# -class CommandProcessor(object): - """This class receive commands from the main loop and forward call to concrete command. - """ - - # ----------------------------------------------------------------------------------------------------------------- - - def __init__(self): - """Initialize the objects in charge of concrete command processing. Each object instance are stored in a - map using a key which is the action verb used on the command line. - """ - - # Defines the map storing the concrete commands - self.commandArray = {} - - # Creates all the concrete commands - cmd = CheckUpstreamCommand("check-upstream") - self.commandArray[cmd.getName()] = cmd - - cmd = GetUpstreamLatestVersionCommand("get-upstream-latest-version") - self.commandArray[cmd.getName()] = cmd - - cmd = GetUpstreamVersionListCommand("get-upstream-version-list") - self.commandArray[cmd.getName()] = cmd - - cmd = UpgradeToVersionCommand("upgrade-to-version") - self.commandArray[cmd.getName()] = cmd - - cmd = ReportPackageVersionCommand("update-package-version-database") - self.commandArray[cmd.getName()] = cmd - - # ----------------------------------------------------------------------------------------------------------------- - - def execute(self, opts, arguments): - """This method checks that an action is supplied and call the action handler - """ - - # Check that an action verb is supplied. If none an error is returned - if len(arguments) == 0: - print "Error : no action supplied" - return 1 - - # The first element in the arguments array is the action verb. Retrieve the command - # using action verb as key - if self.commandArray.has_key(arguments[0]): - res = self.commandArray[arguments[0]].execute(opts, arguments) - if res: - return 0 - else: - return 1 - else: - print "Error : %(action)s action is not supported" % { 'action' : arguments[0] } - return 2 - - -class UwatchRegexGenerator(object): - - WS_RE = re.compile(r'\s+') - DIGIT_RE = re.compile(r'\d+') - DIGIT_REMOVAL_RE = re.compile(r'\d+(?:\.\d+)*[a-z]?') - DIGIT_MATCH_MAKE_RE_1 = r'(\d+(?:\.\d+)*[a-z]?)' - DIGIT_MATCH_MAKE_RE_2 = r'(\d+(?:\.\d+)*)' - ARCHIVE_RE = re.compile(r"\.(?:tar(?:\.(?:gz|bz2))|tgz)?$") - - def _ChooseDistfile(self, file_list): - # First heuristic: files with numbers are distfiles - for f in file_list: - if self.ARCHIVE_RE.search(f): - return f - for f in file_list: - if self.DIGIT_RE.search(f): - return f - - def _SeparateSoftwareName(self, catalogname, filename): - """Separate the software name from the rest of the file name. - - Software name sometimes contains digits, which we don't want to - include in the regexes. - """ - # The first approach is to split by '-' - assert filename - parts = filename.split('-') - if self._CanBeSoftwarename(parts[0], catalogname): - return parts[0], '-' + '-'.join(parts[1:]) - return '', filename - - def _SeparateArchiveName(self, filename): - if self.ARCHIVE_RE.search(filename): - first_part = self.ARCHIVE_RE.split(filename)[0] - archive_part = ''.join(self.ARCHIVE_RE.findall(filename)) - return first_part, archive_part - return filename, '' - - def _CanBeSoftwarename(self, s, catalogname): - if s == catalogname: - return True - # This is stupid. But let's wait for a real world counterexample. - return True - - def GenerateRegex(self, catalogname, distnames): - dist_list = self.WS_RE.split(distnames) - dist_file = self._ChooseDistfile(dist_list) - if not dist_file: - return [] - softwarename, rest_of_filename = self._SeparateSoftwareName( - catalogname, dist_file) - rest_of_filename, archive_part = self._SeparateArchiveName(rest_of_filename) - no_numbers = self.DIGIT_REMOVAL_RE.split(rest_of_filename) - regex_list = [] - regex_list.append(softwarename + self.DIGIT_MATCH_MAKE_RE_1.join(no_numbers) + archive_part) - regex_list.append(softwarename + self.DIGIT_MATCH_MAKE_RE_2.join(no_numbers) + archive_part) - return regex_list - - - -# --------------------------------------------------------------------------------------------------------------------- -# -# Fonction principale -# -def main(): - """Program main loop. Process args and call concrete command action. - """ - - # Create the command processor object - commandProcessor = CommandProcessor() - - # Parse command line arguments - cliParser = CommandLineParser() - - # Call the command line parser - (opts, args) = cliParser.parse() - - # Call the execute method on the command processor. This method is in charge to find the concrete command - return commandProcessor.execute(opts, args) - -# Exit with main return code -if __name__ == '__main__': - res = main() - sys.exit(res) - +link ../lib/python/uwatch.py \ No newline at end of file Property changes on: csw/mgar/gar/v2/bin/uwatch ___________________________________________________________________ Deleted: svn:executable - * Added: svn:special + * Copied: csw/mgar/gar/v2/lib/python/uwatch.py (from rev 13360, csw/mgar/gar/v2/bin/uwatch) =================================================================== --- csw/mgar/gar/v2/lib/python/uwatch.py (rev 0) +++ csw/mgar/gar/v2/lib/python/uwatch.py 2011-02-18 15:14:18 UTC (rev 13361) @@ -0,0 +1,1675 @@ +#!/opt/csw/bin/python2.6 + +# TODO : check arguments for valid date +# TODO : check arguments for emtpy strings + +# +# The contents of this file are subject to the COMMON DEVELOPMENT AND +# DISTRIBUTION LICENSE (CDDL) (the "License"); you may not use this +# file except in compliance with the License. +# +# Software distributed under the License is distributed on an "AS IS" basis, +# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License +# for the specific language governing rights and limitations under the +# License. +# +# Alternatively, the contents of this file may be used under the terms of +# either the GNU General Public License Version 3 or later (the "GPL"), +# in which case the provisions of the GPL are applicable instead +# of those above. If you wish to allow use of your version of this file only +# under the terms of either the GPL, and not to allow others to +# use your version of this file under the terms of the CDDL, indicate your +# decision by deleting the provisions above and replace them with the notice +# and other provisions required by the GPL. If you do not delete +# the provisions above, a recipient may use your version of this file under +# the terms of any one of the CDDL, or the GPL. +# +# Copyright 2010 OpenCSW (http://www.opencsw.org). All rights reserved. +# Use is subject to license terms. +# +# +# Contributors list : +# +# William Bonnet wbonnet at opencsw.org +# +# + +# Import all the needed modules +import sys +import string +import re +import os +import shutil +import subprocess +import pysvn +import MySQLdb +import datetime +import ConfigParser + +from urllib2 import Request, urlopen, URLError +from optparse import OptionParser + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class InvalidSourceDirectoryContentException(Exception): + """Exception raised when a method is called on the Abstract command class + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self, message): + self.message = message + + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class AbstractCommandMethodCallException(Exception): + """Exception raised when a method is called on the Abstract command class + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self, message): + self.message = message + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class SvnClientException(Exception): + """Exception raised when an error occur while using svnClient + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self, message): + self.message = message + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class DatabaseConnectionException(Exception): + """Exception raised when an error occur while connecting to the database + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self, message): + self.message = message + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class DuplicatePackageException(Exception): + """Exception raised when an error occur while connecting to the database + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self, message): + self.message = message + + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class UpstreamUrlRetrievalFailedException(Exception): + """Exception raised when an unsuported protocol is specified in the upstream url + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self, url): + self.url = url + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class NoUpstreamVersionFoundException(Exception): + """Exception raised when searching the upstream page content does not match the regexp + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self, url, regexp): + self.url = url + self.regexp = regexp + + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class MissingArgumentException(Exception): + """Exception raised when a command line argument is missing + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self, value): + self.parameter = value + + def __str__(self): + return repr(self.parameter) + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class InvalidArgumentException(Exception): + """Exception raised when a command line argument is invalid. For instance an invalid version or date + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self, value): + self.parameter = value + + def __str__(self): + return repr(self.parameter) + + +# --------------------------------------------------------------------------------------------------------------------- + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class CommandLineParser(object): + """This class is used to parse command line. It process only options. Command verb is parsed by the main procedure + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self): + # Create the parser object + self.optionParser = OptionParser() + + # Add options to parser + self.optionParser.add_option("--verbose", help="Activate verbose mode", action="store_true", dest="verbose") + self.optionParser.add_option("--current-version", help="Current package version", action="store", dest="current_version") + self.optionParser.add_option("--target-location", help="Target location. This is the directory in which the branch will be created (parent of the branch directory). Default value is ../branches", action="store", dest="target_location") + self.optionParser.add_option("--regexp", help="Version matching regular expression", action="store", dest="regexp") + self.optionParser.add_option("--source-directory", help="Source directory (place from where the build is copied). Default value is current directory", action="store", dest="source_directory") + self.optionParser.add_option("--target-version", help="Package target version", action="store", dest="target_version") + self.optionParser.add_option("--upstream-url", help="Upstream version page url", action="store", dest="upstream_url") + + # Option used for reporting uwatch result + self.optionParser.add_option("--uwatch-error", help="Flag used to report a uwatch error", action="store_true", dest="uwatch_error") + self.optionParser.add_option("--uwatch-output", help="Flag used to report the uwatch output", action="store", dest="uwatch_output") + self.optionParser.add_option("--uwatch-deactivated",help="Flag used to report a uwatch error", action="store_true", dest="uwatch_deactivated") + self.optionParser.add_option("--uwatch-pkg-root", help="Defines the uwatch package root working directory", action="store", dest="uwatch_pkg_root") + + # Option used for storing version information in the database + self.optionParser.add_option("--gar-distfiles", help="Gar version of the package", action="store", dest="gar_distfiles") + self.optionParser.add_option("--gar-version", help="Gar version of the package", action="store", dest="gar_version") + self.optionParser.add_option("--upstream-version", help="Upstream version of the package", action="store", dest="upstream_version") + self.optionParser.add_option("--gar-path", help="Relative path in svn repository", action="store", dest="gar_path") + self.optionParser.add_option("--catalog-name", help="Catalog name", action="store", dest="catalog_name") + self.optionParser.add_option("--package-name", help="Package name", action="store", dest="package_name") + self.optionParser.add_option("--execution-date", help="Check date to be stored in the database", action="store", dest="execution_date") + + self.optionParser.add_option("--database-schema", help="Defines the database to use in the connection string", action="store", dest="database_schema") + self.optionParser.add_option("--database-host", help="Defines the database host to use in the connection string", action="store", dest="database_host") + self.optionParser.add_option("--database-user", help="Defines the database user to use in the connection string", action="store", dest="database_user") + self.optionParser.add_option("--database-password", help="Defines the database password to use in the connection string", action="store", dest="database_password") + + # ----------------------------------------------------------------------------------------------------------------- + + def parse(self): + (self.options, self.args) = self.optionParser.parse_args() + return self.options, self.args + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class UwatchConfiguration(object): + """This handles parameters retrieved either from command line or configuration file. + """ + + # ----------------------------------------------------------------------------------------------------------------- + + def initialize(self, args): + """Initialize configuration object. If configurations contains files reference, values from the files are + read and copied into this object. Next attempts to retrieve files stored information will read values from + this object. + """ + + # Default is no file parser + fileParser = None + + # Test if the .uwatchrc file exists + if os.path.isfile( os.path.expanduser("~/.uwatchrc") ): + # Yes thus load values from the configuration file before processing args parameter + # This allow to override from the command line some values stored in the config file + fileParser = ConfigParser.ConfigParser() + fileParser.read( [os.path.expanduser("~/.uwatchrc") ] ) + + # Read the database schema from the config file + try: + self._database_schema = fileParser.get("main", "database-schema") + except Config.NoOptionError: + self._database_schema = None + + # Read the database hostname from the config file + try: + self._database_host = fileParser.get("main", "database-host") + except Config.NoOptionError: + self._database_host = None + + # Read the database user from the config file + try: + self._database_user = fileParser.get("main", "database-user") + except Config.NoOptionError: + self._database_user = None + + # Read the database password from the config file + try: + self._database_password = fileParser.get("main", "database-password") + except Config.NoOptionError: + self._database_password = None + + # Read the package root working dir from the config file + try: + self._uwatch_pkg_root = fileParser.get("main", "uwatch-pkg-root") + except Config.NoOptionError: + self._uwatch_pkg_root = None + + # This member variable is a flag which defines the status of the verbose mode (True : activated) + if args.verbose != None: + self._verbose = args.verbose + else: + self._verbose = False + + # This member variable defines the value of the version of the package + # Current revision is not passed as a separated argument. It is part of the opencsw version number. + # Package version are defined as follow : version[,REV=revision]* + if args.current_version != None: + + # Parse the version string + ver = re.split(r"(?P.*),REV=(?P.*)", args.current_version) + + # Test if this is a match + if ver == None: + # No, thus raise an exception + msg = "Unable to parse %(version)s as a valid package version" % { 'version' : args.current_version } + raise InvalidArgumentException(msg) + else: + # If the length of array is one, the no revision is provided + if len(ver) == 1: + self._current_version = ver[0] + self._current_revision = "" + else: + self._current_version = ver[1] + self._current_revision = ver[2] + + # Attempt to split again the string. If len is greater than 1 + # Then there are at least two rev string => raise exception + ver = re.split(r"(?P.*),REV=(?P.*)", self._current_version) + if len(ver) > 1: + msg = "Unable to parse %(version)s as a valid package version. There are more than one revision string" % { 'version' : args.current_version } + raise InvalidArgumentException(msg) + + # This member variable defines the value of the regexp used to match the upstream web page + if args.regexp != None: + self._regexp = args.regexp + + # This member variable defines the url of the upstream web page used to check for new version + if args.upstream_url != None: + self._upstream_url = args.upstream_url + + # This member variable defines the target version of the package during upgrade + if args.target_version != None: + self._target_version = args.target_version + + # This member variable defines the target directory of the package during upgrade. This is the location of the new branch + if args.target_location != None: + self._target_location = args.target_location + + # This member variable defines the source directory of the package during upgrade. This is the location of the trunk (most of the time) + if args.source_directory != None: + self._source_directory = args.source_directory + + # This member variable defines the version of the package stored in the gar build description + if args.gar_version != None: + self._gar_version = args.gar_version + + # This member variable defines the upstream version of package + if args.upstream_version != None: + self._upstream_version = args.upstream_version + + # This member variable defines the relative path in the svn repository + if args.gar_path != None: + self._gar_path = args.gar_path + + # This member variable defines the catalog name of the package + if args.catalog_name != None: + self._catalog_name = args.catalog_name + + # This member variable defines the package name + if args.package_name != None: + self._package_name = args.package_name + + # This member variable defines the date of the execution (it is useful to be able to define a date to construct history of versions) + if args.execution_date != None: + self._execution_date = args.execution_date + + # This member variable defines the database to use in the connection string + if args.database_schema != None: + self._database_schema = args.database_schema + + # This member variable defines the database host to use in the connection string + if args.database_host != None: + self._database_host = args.database_host + + # This member variable defines the database user to use in the connection string + if args.database_user != None: + self._database_user = args.database_user + + # This member variable defines the database password to use in the connection string + if args.database_password != None: + self._database_password = args.database_password + + # This member variable defines the uwatch activation status + if args.uwatch_deactivated != None: + self._uwatch_deactivated = True + else: + self._uwatch_deactivated = False + + # This member variable defines the uwatch last report result + if args.uwatch_error != None: + self._uwatch_error = True + else: + self._uwatch_error = False + + # This member variable defines the uwatch last report result + if args.uwatch_pkg_root != None: + self._uwatch_pkg_root = args.uwatch_pkg_root + + # This member variable defines the uwatch last report output + if args.uwatch_output != None: + self._uwatch_output = args.uwatch_output + + # This member variable defines the gar distfiles + if args.gar_distfiles != None: + self._gar_distfiles = args.gar_distfiles + + # ----------------------------------------------------------------------------------------------------------------- + + def __init__(self): + + # Initialize all variables to None. Even if useless, the purpose of this to keep up to date the list + self._verbose = None + self._uwatch_deactivated = False + self._uwatch_error = False + self._uwatch_pkg_root = None + self._current_version = None + self._current_revision = "" + self._regexp = None + self._upstream_url = None + self._target_version = None + self._source_directory = "." + self._target_location = "../branches" + self._gar_version = None + self._upstream_version = None + self._gar_path = None + self._catalog_name = None + self._package_name = None + self._execution_date = None + self._database_schema = None + self._database_host = None + self._database_user = None + self._database_password = None + self._gar_distfiles = None + self._uwatch_output = None + + # ----------------------------------------------------------------------------------------------------------------- + + def getCurrentVersion(self): + return self._current_version + + # ----------------------------------------------------------------------------------------------------------------- + + def getCurrentRevision(self): + return self._current_revision + + # ----------------------------------------------------------------------------------------------------------------- + + def getRegexp(self): + # In case the regexp is not define, we try to guess it using the distfile + if (self._regexp == None) & (self._gar_distfiles != None): + # Instanciate a regexp generator + urg = UwatchRegexGenerator() + + # Retrieve the regexp list + auto_regex_list = urg.GenerateRegex(self._catalog_name, self._gar_distfiles) + + # Use the first item as current regexp + self._regexp = auto_regex_list[0] + + return self._regexp + + # ----------------------------------------------------------------------------------------------------------------- + + def getUpstreamURL(self): + return self._upstream_url + + # ----------------------------------------------------------------------------------------------------------------- + + def getVerbose(self): + return self._verbose + + # ----------------------------------------------------------------------------------------------------------------- + + def getSourceDirectory(self): + return self._source_directory + + # ----------------------------------------------------------------------------------------------------------------- + + def getTargetLocation(self): + return self._target_location + + # ----------------------------------------------------------------------------------------------------------------- + + def getTargetVersion(self): + return self._target_version + + # ----------------------------------------------------------------------------------------------------------------- + + def getGarVersion(self): + return self._gar_version + + # ----------------------------------------------------------------------------------------------------------------- + + def getUpstreamVersion(self): + return self._upstream_version + + # ----------------------------------------------------------------------------------------------------------------- + + def getGarPath(self): + if self.getUwatchPkgRoot(): + return self._gar_path.replace(self.getUwatchPkgRoot(), "") + else: + return self._gar_path + + # ----------------------------------------------------------------------------------------------------------------- + + def getCatalogName(self): + return self._catalog_name + + # ----------------------------------------------------------------------------------------------------------------- + + def getPackageName(self): + return self._package_name + + # ----------------------------------------------------------------------------------------------------------------- + + def getExecutionDate(self): + return self._execution_date + + # ----------------------------------------------------------------------------------------------------------------- + + def getDatabaseSchema(self): + return self._database_schema + + # ----------------------------------------------------------------------------------------------------------------- + + def getDatabaseHost(self): + return self._database_host + + # ----------------------------------------------------------------------------------------------------------------- + + def getDatabaseUser(self): + return self._database_user + + # ----------------------------------------------------------------------------------------------------------------- + + def getDatabasePassword(self): + return self._database_password + + # ----------------------------------------------------------------------------------------------------------------- + + def getUwatchError(self): + return self._uwatch_error + + # ----------------------------------------------------------------------------------------------------------------- + + def getUwatchDeactivated(self): + return self._uwatch_deactivated + + # ----------------------------------------------------------------------------------------------------------------- + + def getUwatchPkgRoot(self): + return self._uwatch_pkg_root + + # ----------------------------------------------------------------------------------------------------------------- + + def getGarDistfiles(self): + return self._gar_distfiles + + # ----------------------------------------------------------------------------------------------------------------- + + def getUwatchOutput(self): + return self._uwatch_output + + +# --------------------------------------------------------------------------------------------------------------------- +# +# +class AbstractCommand(object): @@ Diff output truncated at 100000 characters. @@ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Fri Feb 18 16:48:10 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Fri, 18 Feb 2011 15:48:10 +0000 Subject: [csw-devel] SF.net SVN: gar:[13362] csw/mgar/pkg/java/ajcdigester/trunk Message-ID: Revision: 13362 http://gar.svn.sourceforge.net/gar/?rev=13362&view=rev Author: wbonnet Date: 2011-02-18 15:48:09 +0000 (Fri, 18 Feb 2011) Log Message: ----------- java/digester Upgrade to 2.1 Modified Paths: -------------- csw/mgar/pkg/java/ajcdigester/trunk/Makefile csw/mgar/pkg/java/ajcdigester/trunk/checksums Modified: csw/mgar/pkg/java/ajcdigester/trunk/Makefile =================================================================== --- csw/mgar/pkg/java/ajcdigester/trunk/Makefile 2011-02-18 15:14:18 UTC (rev 13361) +++ csw/mgar/pkg/java/ajcdigester/trunk/Makefile 2011-02-18 15:48:09 UTC (rev 13362) @@ -1,5 +1,5 @@ SHORTNAME = digester -VERSION = 2.0 +VERSION = 2.1 NAME = commons-$(SHORTNAME) CATEGORIES = java @@ -11,15 +11,21 @@ # Use jakarta sources MASTER_SITES = http://apache.cict.fr/commons/$(SHORTNAME)/binaries/ -UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*)(-bin*).tar.gz # Set archive filename DISTFILES = $(NAME)-$(VERSION)-bin.tar.gz # Defines two packages, lib and doc -DISTFILES += $(call admfiles,CSWajcdigester,) -DISTFILES += $(call admfiles,CSWajcdigesterdoc,) +PACKAGES = CSWajcdigester CSWajcdigesterdoc +# Package architecture is ALL (pure java) +ARCHALL = 1 + +CATALOGNAME_CSWajcdigester = commons_digester +CATALOGNAME_CSWajcdigesterdoc = commons_digester_doc + +LICENSE = LICENSE.txt + # Defines package description SPKG_DESC_CSWajcdigester = $(DESCRIPTION) SPKG_DESC_CSWajcdigesterdoc = $(DESCRIPTION) documentation package @@ -27,6 +33,9 @@ # Defines dependencies RUNTIME_DEP_PKGS_CSWajcdigester = CSWajclogging CSWajcbeanutils +CHECKPKG_OVERRIDES_CSWajcdigesterdoc += catalogname-does-not-match-pkgname|pkgname=CSWajcdigesterdoc|catalogname=commons_digester_doc|expected-catalogname=ajcdigesterdoc +CHECKPKG_OVERRIDES_CSWajcdigester += catalogname-does-not-match-pkgname|pkgname=CSWajcdigester|catalogname=commons_digester|expected-catalogname=ajcdigester + # Defines package content PKGFILES_CSWajcdigester = $(prefix)/share/doc/$(NAME)/License.txt PKGFILES_CSWajcdigester += $(prefix)/share/java/.* @@ -48,7 +57,5 @@ ln -s $(NAME)-$(VERSION).jar $(NAME)-2.jar ; \ ln -s $(NAME)-$(VERSION).jar $(NAME).jar ) @ginstall -d $(DESTDIR)$(datadir)/doc/$(NAME) - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License.txt - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License-documentation.txt @gcp -frp $(WORKSRC)/$(DISTNAME)/apidocs/* $(DESTDIR)$(datadir)/doc/$(NAME) @$(MAKECOOKIE) Modified: csw/mgar/pkg/java/ajcdigester/trunk/checksums =================================================================== --- csw/mgar/pkg/java/ajcdigester/trunk/checksums 2011-02-18 15:14:18 UTC (rev 13361) +++ csw/mgar/pkg/java/ajcdigester/trunk/checksums 2011-02-18 15:48:09 UTC (rev 13362) @@ -1,3 +1 @@ -1f90462c586b6afb85e2c637d8f1c02e download/commons-digester-2.0-bin.tar.gz -a16a590e5792157bd3d8301e2e1660af download/CSWajcdigester.gspec -4fc0640df8176c252c7071a8bb45273c download/CSWajcdigesterdoc.gspec +aba0ed75f9c0947609295480b5e5fd3d commons-digester-2.1-bin.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Fri Feb 18 16:55:37 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Fri, 18 Feb 2011 15:55:37 +0000 Subject: [csw-devel] SF.net SVN: gar:[13363] csw/mgar/gar/v2/lib/python/uwatch_test.py Message-ID: Revision: 13363 http://gar.svn.sourceforge.net/gar/?rev=13363&view=rev Author: wahwah Date: 2011-02-18 15:55:37 +0000 (Fri, 18 Feb 2011) Log Message: ----------- uwatch: A stub unit test file Contains one test for the function comparing versions. Added Paths: ----------- csw/mgar/gar/v2/lib/python/uwatch_test.py Added: csw/mgar/gar/v2/lib/python/uwatch_test.py =================================================================== --- csw/mgar/gar/v2/lib/python/uwatch_test.py (rev 0) +++ csw/mgar/gar/v2/lib/python/uwatch_test.py 2011-02-18 15:55:37 UTC (rev 13363) @@ -0,0 +1,19 @@ +#!/usr/bin/env python2.6 + +import unittest +import uwatch + +class UpstreamWatchCommandUnitTest(unittest.TestCase): + + V1 = "1.8.1,REV=2010.07.13" + V2 = "1.8.2,REV=2011.01.17" + + def testCompareVersionAndGetNewest(self): + uwc = uwatch.UpstreamWatchCommand("fake name") + self.assertEquals( + self.V2, + uwc.CompareVersionAndGetNewest(self.V1, self.V2)) + + +if __name__ == '__main__': + unittest.main() Property changes on: csw/mgar/gar/v2/lib/python/uwatch_test.py ___________________________________________________________________ Added: svn:executable + * This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Fri Feb 18 16:56:26 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Fri, 18 Feb 2011 15:56:26 +0000 Subject: [csw-devel] SF.net SVN: gar:[13364] csw/mgar/gar/v2/lib/python/uwatch.py Message-ID: Revision: 13364 http://gar.svn.sourceforge.net/gar/?rev=13364&view=rev Author: wahwah Date: 2011-02-18 15:56:26 +0000 (Fri, 18 Feb 2011) Log Message: ----------- uwatch: Removing an empty __init__ function Modified Paths: -------------- csw/mgar/gar/v2/lib/python/uwatch.py Modified: csw/mgar/gar/v2/lib/python/uwatch.py =================================================================== --- csw/mgar/gar/v2/lib/python/uwatch.py 2011-02-18 15:55:37 UTC (rev 13363) +++ csw/mgar/gar/v2/lib/python/uwatch.py 2011-02-18 15:56:26 UTC (rev 13364) @@ -586,11 +586,6 @@ # ----------------------------------------------------------------------------------------------------------------- - def __init__(self, name): - super(UpstreamWatchCommand, self).__init__(name) - - # ----------------------------------------------------------------------------------------------------------------- - def UrlContentRetrieve(self, url): try: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Fri Feb 18 16:57:01 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Fri, 18 Feb 2011 15:57:01 +0000 Subject: [csw-devel] SF.net SVN: gar:[13365] csw/mgar/gar/v2/lib/python/integrate_catalogs.py Message-ID: Revision: 13365 http://gar.svn.sourceforge.net/gar/?rev=13365&view=rev Author: wahwah Date: 2011-02-18 15:57:01 +0000 (Fri, 18 Feb 2011) Log Message: ----------- integrate-catalogs: Use shell functions In order to make catalog integration reviews easier, create shell functions and call them at the end of the file. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/integrate_catalogs.py Modified: csw/mgar/gar/v2/lib/python/integrate_catalogs.py =================================================================== --- csw/mgar/gar/v2/lib/python/integrate_catalogs.py 2011-02-18 15:56:26 UTC (rev 13364) +++ csw/mgar/gar/v2/lib/python/integrate_catalogs.py 2011-02-18 15:57:01 UTC (rev 13365) @@ -33,29 +33,57 @@ #for catalogname in $sorted($diffs_by_catalogname): #if "new_pkgs" in $diffs_by_catalogname[$catalogname]: +function new_pkg_$catalogname { #for arch, osrel, new_pkg in $diffs_by_catalogname[$catalogname]["new_pkgs"]: -# adding $new_pkg["basename"] -\${PKGDB} add-to-cat $osrel $arch $catrel_to $new_pkg["md5_sum"] + # adding $new_pkg["basename"] + \${PKGDB} add-to-cat $osrel $arch $catrel_to $new_pkg["md5_sum"] #end for +} #end if #if "removed_pkgs" in $diffs_by_catalogname[$catalogname]: +function remove_pkg_$catalogname { #for arch, osrel, rem_pkg in $diffs_by_catalogname[$catalogname]["removed_pkgs"]: -# removing $rem_pkg["basename"] -\${PKGDB} del-from-cat $osrel $arch $catrel_to $rem_pkg["md5_sum"] + # removing $rem_pkg["basename"] + \${PKGDB} del-from-cat $osrel $arch $catrel_to $rem_pkg["md5_sum"] #end for +} #end if #if "updated_pkgs" in $diffs_by_catalogname[$catalogname]: +function # +#if $diffs_by_catalogname[$catalogname]["updated_pkgs"][0][2]["direction"] == "downgrade": +downgrade_# +#else +upgrade_# +#end if +$catalogname { #for arch, osrel, up_pkg_pair in $diffs_by_catalogname[$catalogname]["updated_pkgs"]: #if $up_pkg_pair["direction"] == "downgrade": -# WARNING: DOWNGRADE + # WARNING: DOWNGRADE #end if -# $catalogname $up_pkg_pair["direction"] from $up_pkg_pair["from"]["version"] to $up_pkg_pair["to"]["version"] -\${PKGDB} del-from-cat $osrel $arch $catrel_to $up_pkg_pair["from"]["md5_sum"] -\${PKGDB} add-to-cat $osrel $arch $catrel_to $up_pkg_pair["to"]["md5_sum"] + # $catalogname $up_pkg_pair["direction"] from $up_pkg_pair["from"]["version"] to $up_pkg_pair["to"]["version"] + \${PKGDB} del-from-cat $osrel $arch $catrel_to $up_pkg_pair["from"]["md5_sum"] + \${PKGDB} add-to-cat $osrel $arch $catrel_to $up_pkg_pair["to"]["md5_sum"] #end for +} #end if #end for +#for catalogname in $sorted($diffs_by_catalogname): +#if "new_pkgs" in $diffs_by_catalogname[$catalogname]: +new_pkg_$catalogname +#end if +#if "removed_pkgs" in $diffs_by_catalogname[$catalogname]: +remove_pkg_$catalogname +#end if +#if "updated_pkgs" in $diffs_by_catalogname[$catalogname]: +#if $diffs_by_catalogname[$catalogname]["updated_pkgs"][0][2]["direction"] == "downgrade": +downgrade_# +#else +upgrade_# +#end if +$catalogname +#end if +#end for """ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Fri Feb 18 16:57:09 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Fri, 18 Feb 2011 15:57:09 +0000 Subject: [csw-devel] SF.net SVN: gar:[13366] csw/mgar/pkg/java/ajcdiscovery/trunk/Makefile Message-ID: Revision: 13366 http://gar.svn.sourceforge.net/gar/?rev=13366&view=rev Author: wbonnet Date: 2011-02-18 15:57:09 +0000 (Fri, 18 Feb 2011) Log Message: ----------- Fix Makefile Modified Paths: -------------- csw/mgar/pkg/java/ajcdiscovery/trunk/Makefile Modified: csw/mgar/pkg/java/ajcdiscovery/trunk/Makefile =================================================================== --- csw/mgar/pkg/java/ajcdiscovery/trunk/Makefile 2011-02-18 15:57:01 UTC (rev 13365) +++ csw/mgar/pkg/java/ajcdiscovery/trunk/Makefile 2011-02-18 15:57:09 UTC (rev 13366) @@ -11,16 +11,26 @@ # Use jakarta sources MASTER_SITES = http://apache.cict.fr/commons/$(SHORTNAME)/binaries/ -UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*)(-bin*).tar.gz # Set archive filename DISTFILES = $(NAME)-$(VERSION).tar.gz -# Defines two packages, lib and doc -DISTFILES += $(call admfiles,CSWajcdiscovery,) -DISTFILES += $(call admfiles,CSWajcdiscoverydoc,) -# Defines package description +# Define two packages, lib and doc +PACKAGES = CSWajcdiscovery CSWajcdiscoverydoc + +# Package architecture is ALL (pure java) +ARCHALL = 1 + +CATALOGNAME_CSWajcdiscovery = commons_discovery +CATALOGNAME_CSWajcdiscoverydoc = commons_disco_doc + +LICENSE = LICENSE.txt + +CHECKPKG_OVERRIDES_CSWajcdiscovery += catalogname-does-not-match-pkgname|pkgname=CSWajcdiscovery|catalogname=commons_discovery|expected-catalogname=ajcdiscovery +CHECKPKG_OVERRIDES_CSWajcdiscoverydoc += catalogname-does-not-match-pkgname|pkgname=CSWajcdiscoverydoc|catalogname=commons_disco_doc|expected-catalogname=ajcdiscoverydoc + +# package description SPKG_DESC_CSWajcdiscovery = $(DESCRIPTION) SPKG_DESC_CSWajcdiscoverydoc = $(DESCRIPTION) documentation package @@ -28,7 +38,6 @@ RUNTIME_DEP_PKGS_CSWajcdiscovery = CSWajclogging # Defines package content -PKGFILES_CSWajcdiscovery = $(prefix)/share/doc/$(NAME)/License.txt PKGFILES_CSWajcdiscovery += $(prefix)/share/java/.* # Defines custom steps since java libs do not use autotools @@ -48,7 +57,5 @@ ln -s $(NAME)-$(VERSION).jar $(NAME)-0.jar ; \ ln -s $(NAME)-$(VERSION).jar $(NAME).jar ) @ginstall -d $(DESTDIR)$(datadir)/doc/$(NAME) - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License.txt - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License-documentation.txt @gcp -frp $(WORKSRC)/$(DISTNAME)/docs/* $(DESTDIR)$(datadir)/doc/$(NAME) @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Feb 18 17:08:07 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 18 Feb 2011 16:08:07 +0000 Subject: [csw-devel] SF.net SVN: gar:[13367] csw/mgar/gar/v2/categories/cpan/category.mk Message-ID: Revision: 13367 http://gar.svn.sourceforge.net/gar/?rev=13367&view=rev Author: dmichelsen Date: 2011-02-18 16:08:07 +0000 (Fri, 18 Feb 2011) Log Message: ----------- cpan/CGI-SpeedyCGI: Do not fail if META.yml is not in the module Modified Paths: -------------- csw/mgar/gar/v2/categories/cpan/category.mk Modified: csw/mgar/gar/v2/categories/cpan/category.mk =================================================================== --- csw/mgar/gar/v2/categories/cpan/category.mk 2011-02-18 15:57:09 UTC (rev 13366) +++ csw/mgar/gar/v2/categories/cpan/category.mk 2011-02-18 16:08:07 UTC (rev 13367) @@ -92,7 +92,7 @@ @$(MAKECOOKIE) pre-package: - test -f $(WORKSRC_FIRSTMOD)/META.yml && cp $(WORKSRC_FIRSTMOD)/META.yml $(WORKDIR_GLOBAL) + -rm -f $(WORKDIR_GLOBAL)/META.yml && test -f $(WORKSRC_FIRSTMOD)/META.yml && cp $(WORKSRC_FIRSTMOD)/META.yml $(WORKDIR_GLOBAL) # Check for a CPAN module version update update-check: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Fri Feb 18 17:16:37 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Fri, 18 Feb 2011 16:16:37 +0000 Subject: [csw-devel] SF.net SVN: gar:[13368] csw/mgar/gar/v2/lib/python/submit_to_newpkgs.py Message-ID: Revision: 13368 http://gar.svn.sourceforge.net/gar/?rev=13368&view=rev Author: bdwalton Date: 2011-02-18 16:16:37 +0000 (Fri, 18 Feb 2011) Log Message: ----------- submitpkg: correct string interpolation in error message Modified Paths: -------------- csw/mgar/gar/v2/lib/python/submit_to_newpkgs.py Modified: csw/mgar/gar/v2/lib/python/submit_to_newpkgs.py =================================================================== --- csw/mgar/gar/v2/lib/python/submit_to_newpkgs.py 2011-02-18 16:08:07 UTC (rev 13367) +++ csw/mgar/gar/v2/lib/python/submit_to_newpkgs.py 2011-02-18 16:16:37 UTC (rev 13368) @@ -82,7 +82,7 @@ logging.debug("Running: %s" % args) ret = subprocess.call(args) if ret: - msg = ("Removing % failed." % basename_str) + msg = ("Removing %s failed." % basename_str) raise PackageSubmissionError(msg) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Fri Feb 18 17:21:46 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Fri, 18 Feb 2011 16:21:46 +0000 Subject: [csw-devel] SF.net SVN: gar:[13369] csw/mgar/gar/v2/gar.pkg.mk Message-ID: Revision: 13369 http://gar.svn.sourceforge.net/gar/?rev=13369&view=rev Author: bdwalton Date: 2011-02-18 16:21:45 +0000 (Fri, 18 Feb 2011) Log Message: ----------- mgar/v2: add a prototype filter for the new release notes file Modified Paths: -------------- csw/mgar/gar/v2/gar.pkg.mk Modified: csw/mgar/gar/v2/gar.pkg.mk =================================================================== --- csw/mgar/gar/v2/gar.pkg.mk 2011-02-18 16:16:37 UTC (rev 13368) +++ csw/mgar/gar/v2/gar.pkg.mk 2011-02-18 16:21:45 UTC (rev 13369) @@ -390,6 +390,10 @@ | ( cat; if test -f "$(WORKDIR_GLOBAL)/checkpkg_override.$(1)";then echo "i checkpkg_override=checkpkg_override.$(1)"; fi) endef +define cswreleasenotes_filter + | ( cat; if test -f "$(WORKDIR_GLOBAL)/cswreleasenotes.$(1)";then echo "i cswreleasenotes=cswreleasenotes.$(1)"; fi) +endef + # This file contains all installed pathes. This can be used as a starting point # for distributing files to individual packages. PROTOTYPE = $(WORKDIR)/prototype This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Fri Feb 18 17:24:12 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Fri, 18 Feb 2011 16:24:12 +0000 Subject: [csw-devel] SF.net SVN: gar:[13370] csw/mgar/pkg/java/ajcemail/trunk Message-ID: Revision: 13370 http://gar.svn.sourceforge.net/gar/?rev=13370&view=rev Author: wbonnet Date: 2011-02-18 16:24:12 +0000 (Fri, 18 Feb 2011) Log Message: ----------- java/email Upgrade to 1.2 Modified Paths: -------------- csw/mgar/pkg/java/ajcemail/trunk/Makefile csw/mgar/pkg/java/ajcemail/trunk/checksums Modified: csw/mgar/pkg/java/ajcemail/trunk/Makefile =================================================================== --- csw/mgar/pkg/java/ajcemail/trunk/Makefile 2011-02-18 16:21:45 UTC (rev 13369) +++ csw/mgar/pkg/java/ajcemail/trunk/Makefile 2011-02-18 16:24:12 UTC (rev 13370) @@ -1,5 +1,5 @@ SHORTNAME = email -VERSION = 1.1 +VERSION = 1.2 NAME = commons-$(SHORTNAME) CATEGORIES = java @@ -11,15 +11,24 @@ # Use jakarta sources MASTER_SITES = http://apache.cict.fr/commons/$(SHORTNAME)/binaries/ -UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*)(-bin*).tar.gz # Set archive filename DISTFILES = $(NAME)-$(VERSION)-bin.tar.gz # Defines two packages, lib and doc -DISTFILES += $(call admfiles,CSWajcemail,) -DISTFILES += $(call admfiles,CSWajcemaildoc,) +PACKAGES = CSWajcemail CSWajcemaildoc +# Package architecture is ALL (pure java) +ARCHALL = 1 + +CATALOGNAME_CSWajcemail = commons_email +CATALOGNAME_CSWajcemaildoc = commons_email_doc + +LICENSE = LICENSE.txt + +CHECKPKG_OVERRIDES_CSWajcemail += catalogname-does-not-match-pkgname|pkgname=CSWajcemail|catalogname=commons_email|expected-catalogname=ajcemail +CHECKPKG_OVERRIDES_CSWajcemaildoc += catalogname-does-not-match-pkgname|pkgname=CSWajcemaildoc|catalogname=commons_email_doc|expected-catalogname=ajcemaildoc + # Defines package description SPKG_DESC_CSWajcemail = $(DESCRIPTION) SPKG_DESC_CSWajcemaildoc = $(DESCRIPTION) documentation package @@ -28,7 +37,6 @@ RUNTIME_DEP_PKGS_CSWajcemail = CSWajclogging CSWajccollect CSWajcbeanutils # Defines package content -PKGFILES_CSWajcemail = $(prefix)/share/doc/$(NAME)/License.txt PKGFILES_CSWajcemail += $(prefix)/share/java/.* # Defines custom steps since java libs do not use autotools @@ -48,7 +56,5 @@ ln -s $(NAME)-$(VERSION).jar $(NAME)-1.jar ; \ ln -s $(NAME)-$(VERSION).jar $(NAME).jar ) @ginstall -d $(DESTDIR)$(datadir)/doc/$(NAME) - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License.txt - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License-documentation.txt @gcp -frp $(WORKSRC)/$(DISTNAME)/apidocs/* $(DESTDIR)$(datadir)/doc/$(NAME) @$(MAKECOOKIE) Modified: csw/mgar/pkg/java/ajcemail/trunk/checksums =================================================================== --- csw/mgar/pkg/java/ajcemail/trunk/checksums 2011-02-18 16:21:45 UTC (rev 13369) +++ csw/mgar/pkg/java/ajcemail/trunk/checksums 2011-02-18 16:24:12 UTC (rev 13370) @@ -1,3 +1 @@ -c82d89aab2e58d1c50e44db4c6a6a8f9 download/commons-email-1.1-bin.tar.gz -c6e394e0d325e28751330370274fe370 download/CSWajcemail.gspec -1e11b6a6e721335beea0c4a2f5ad5b47 download/CSWajcemaildoc.gspec +d084fd111b638d13fd36ab988c900a6b commons-email-1.2-bin.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From idogan23 at users.sourceforge.net Fri Feb 18 17:33:21 2011 From: idogan23 at users.sourceforge.net (idogan23 at users.sourceforge.net) Date: Fri, 18 Feb 2011 16:33:21 +0000 Subject: [csw-devel] SF.net SVN: gar:[13371] csw/mgar/pkg/tomcat6/branches/ihsan/ Message-ID: Revision: 13371 http://gar.svn.sourceforge.net/gar/?rev=13371&view=rev Author: idogan23 Date: 2011-02-18 16:33:21 +0000 (Fri, 18 Feb 2011) Log Message: ----------- tomcat6: move smf branch to trunk Removed Paths: ------------- csw/mgar/pkg/tomcat6/branches/ihsan/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From idogan23 at users.sourceforge.net Fri Feb 18 17:33:49 2011 From: idogan23 at users.sourceforge.net (idogan23 at users.sourceforge.net) Date: Fri, 18 Feb 2011 16:33:49 +0000 Subject: [csw-devel] SF.net SVN: gar:[13372] csw/mgar/pkg/tomcat6/trunk Message-ID: Revision: 13372 http://gar.svn.sourceforge.net/gar/?rev=13372&view=rev Author: idogan23 Date: 2011-02-18 16:33:49 +0000 (Fri, 18 Feb 2011) Log Message: ----------- tomcat6: move smf branch to trunk Added Paths: ----------- csw/mgar/pkg/tomcat6/trunk/Makefile Removed Paths: ------------- csw/mgar/pkg/tomcat6/trunk/Makefile Deleted: csw/mgar/pkg/tomcat6/trunk/Makefile =================================================================== --- csw/mgar/pkg/tomcat6/trunk/Makefile 2011-02-18 16:33:21 UTC (rev 13371) +++ csw/mgar/pkg/tomcat6/trunk/Makefile 2011-02-18 16:33:49 UTC (rev 13372) @@ -1,76 +0,0 @@ -NAME = apache-tomcat6 -VERSION = 6.0.29 -CATEGORIES = server - -DESCRIPTION = Apache Jakarta Tomcat 6 Servlet/JSP Container -define BLURB -Apache Tomcat is the servlet container that is used in the official Reference Implementation for the Java Servlet and JavaServer Pages technologies. The Java Servlet and JavaServer Pages specifications are developed by Sun under the Java Community Process. -endef - -UPSTREAM_MASTER_SITES = http://mir2.ovh.net/ftp.apache.org/dist/jakarta/tomcat-6/ -MASTER_SITES = http://mir2.ovh.net/ftp.apache.org/dist/jakarta/tomcat-6/v$(VERSION)/bin/ -DISTFILES = apache-tomcat-$(VERSION).tar.gz -PKGDIST = apache-tomcat-$(VERSION).tar.gz -DISTFILES += CSWtomcat6.gspec CSWtomcat6.prototype CSWtomcat6.depend preremove postinstall preinstall checkinstall space i.smfno i.smfyes svc-tomcat6 tomcat6.xml tomcat6 cswtomcat6 -LICENSE = LICENSE - -# We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = v(\d+(?:\.\d+)*) - -#ARCHALL_CSWapache-tomcat6 = 1 - -CONFIGURE_SCRIPTS = none -BUILD_SCRIPTS = none -TEST_SCRIPTS = none -INSTALL_SCRIPTS = tomcat -prefix = / - -include gar/category.mk - -configure-none: - @$(MAKECOOKIE) - -test-none: - @$(MAKECOOKIE) - -build-none: - @$(MAKECOOKIE) - -post-extract: - ( mv $(WORKDIR)/apache-tomcat-$(VERSION) $(WORKDIR)/$(DISTNAME) ) - ( OLDDIR=`pwd` && cd $(WORKDIR)/$(DISTNAME)/conf && for i in `find . -type f` ; do mv $$i $$i.CSW ; done && cd $$OLDDIR ) - ( for i in temp work logs conf ; do find $(WORKDIR)/$(DISTNAME)/$$i -type d -exec chmod 0750 {} \; ; find $(WORKDIR)/$(DISTNAME)/$$i -type f -exec chmod 0640 {} \; ; done ) - @$(MAKECOOKIE) - -install-tomcat: - ( mkdir -p $(DESTDIR)/etc/init.d ) - ( mkdir -p $(DESTDIR)/etc/opt/csw ) - ( mkdir -p $(DESTDIR)/etc/rc0.d ) - ( mkdir -p $(DESTDIR)/etc/rc1.d ) - ( mkdir -p $(DESTDIR)/etc/rc2.d ) - ( mkdir -p $(DESTDIR)/etc/rc3.d ) - ( mkdir -p $(DESTDIR)/etc/rcS.d ) - ( mkdir -p $(DESTDIR)/opt/csw/etc/$(NAME) ) - ( mkdir -p $(DESTDIR)/var/opt/csw/$(NAME) ) - ( mkdir -p $(DESTDIR)/opt/csw/share ) - ( mkdir -p $(DESTDIR)/etc/opt/csw ) - ( cp -fr $(WORKDIR)/$(DISTNAME) $(DESTDIR)/opt/csw/share/$(NAME) ) - ( cp -fr $(FILEDIR)/$(NAME) $(DESTDIR)/etc/opt/csw/$(NAME) ) - ( cp -fr $(FILEDIR)/csw$(NAME) $(DESTDIR)/etc/init.d ) - ( mv $(DESTDIR)/opt/csw/share/$(NAME)/conf $(DESTDIR)/opt/csw/etc/$(NAME)/conf ) - ( mv $(DESTDIR)/opt/csw/share/$(NAME)/logs $(DESTDIR)/var/opt/csw/$(NAME) ) - ( mv $(DESTDIR)/opt/csw/share/$(NAME)/work $(DESTDIR)/var/opt/csw/$(NAME) ) - ( mv $(DESTDIR)/opt/csw/share/$(NAME)/temp $(DESTDIR)/var/opt/csw/$(NAME) ) - ( ln -s /opt/csw/etc/$(NAME)/conf $(DESTDIR)/opt/csw/share/$(NAME)/conf ) - ( ln -s /var/opt/csw/$(NAME)/logs $(DESTDIR)/opt/csw/share/$(NAME)/logs ) - ( ln -s /var/opt/csw/$(NAME)/work $(DESTDIR)/opt/csw/share/$(NAME)/work ) - ( ln -s /var/opt/csw/$(NAME)/temp $(DESTDIR)/opt/csw/share/$(NAME)/temp ) - ( ln -s /etc/init.d/cswtomcat6 $(DESTDIR)/etc/rc0.d/K17$(NAME) ) - ( ln -s /etc/init.d/cswtomcat6 $(DESTDIR)/etc/rc1.d/K17$(NAME) ) - ( ln -s /etc/init.d/cswtomcat6 $(DESTDIR)/etc/rc2.d/K17$(NAME) ) - ( ln -s /etc/init.d/cswtomcat6 $(DESTDIR)/etc/rc3.d/S51$(NAME) ) - ( ln -s /etc/init.d/cswtomcat6 $(DESTDIR)/etc/rcS.d/K17$(NAME) ) - @$(MAKECOOKIE) - - - Copied: csw/mgar/pkg/tomcat6/trunk/Makefile (from rev 13355, csw/mgar/pkg/tomcat6/branches/ihsan/Makefile) =================================================================== --- csw/mgar/pkg/tomcat6/trunk/Makefile (rev 0) +++ csw/mgar/pkg/tomcat6/trunk/Makefile 2011-02-18 16:33:49 UTC (rev 13372) @@ -0,0 +1,90 @@ +NAME = tomcat6 +VERSION = 6.0.29 +CATEGORIES = server + +DESCRIPTION = Apache Jakarta Tomcat 6 Servlet/JSP Container +define BLURB +Apache Tomcat is the servlet container that is used in the official Reference Implementation for the Java Servlet and JavaServer Pages technologies. The Java Servlet and JavaServer Pages specifications are developed by Sun under the Java Community Process. +endef + +MASTER_SITES = http://tomcat.apache.org/ +UPSTREAM_MASTER_SITES = http://mir2.ovh.net/ftp.apache.org/dist/jakarta/tomcat-6/v$(VERSION)/bin/ +DISTFILES = apache-tomcat-$(VERSION).tar.gz +PKGDIST = apache-tomcat-$(VERSION).tar.gz +DISTFILES += cswusergroup +DISTFILES += cswtomcat6 +DISTFILES += LICENSE + +# We define upstream file regex so we can be notifed of new upstream software release +UFILES_REGEX = v(\d+(?:\.\d+)*) + +PACKAGES = CSWtomcat6 +CATALOGNAME = tomcat6 +LICENSE = LICENSE +ARCHALL = 1 + +CONFIGURE_SCRIPTS = none +BUILD_SCRIPTS = none +TEST_SCRIPTS = none +INSTALL_SCRIPTS = tomcat +prefix = / + +INITSMF = /etc/opt/csw/init.d/csw$(NAME) +USERGROUP = /etc/opt/csw/pkg/$(NAME)/cswusergroup +PRESERVECONF = /etc/opt/csw/$(NAME)/conf/.* + +PROTOTYPE_MODIFIERS = varuser etcperm +PROTOTYPE_FILES_varuser = /var/opt/csw/$(NAME)/.* +PROTOTYPE_USER_varuser = tomcat +PROTOTYPE_GROUP_varuser = tomcat +PROTOTYPE_FILES_etcperm = /etc/opt/csw/$(NAME)/conf/.*\.CSW +PROTOTYPE_PERMS_etcperm = 0640 +PROTOTYPE_USER_etcperm = tomcat +PROTOTYPE_GROUP_etcperm = tomcat + +MIGRATE_SOURCE_DIR = /opt/csw/etc/$(NAME)/conf +MIGRATE_DEST_DIR = /etc/opt/csw/$(NAME)/conf +MIGRATE_FILES = catalina.policy +MIGRATE_FILES += catalina.properties +MIGRATE_FILES += context.xml +MIGRATE_FILES += logging.properties +MIGRATE_FILES += server.xml +MIGRATE_FILES += tomcat-users.xml +MIGRATE_FILES += web.xml + +include gar/category.mk + +configure-none: + @$(MAKECOOKIE) + +test-none: + @$(MAKECOOKIE) + +build-none: + @$(MAKECOOKIE) + +post-extract: + ( mv $(WORKDIR)/apache-tomcat-$(VERSION) $(WORKDIR)/$(DISTNAME) ) + ( for i in temp work logs conf ; do find $(WORKDIR)/$(DISTNAME)/$$i -type d -exec chmod 0750 {} \; ; find $(WORKDIR)/$(DISTNAME)/$$i -type f -exec chmod 0640 {} \; ; done ) + @$(MAKECOOKIE) + +install-tomcat: + ( mkdir -p $(DESTDIR)/etc/opt/csw/init.d ) + ( mkdir -p $(DESTDIR)/etc/opt/csw/pkg/$(NAME) ) + ( mkdir -p $(DESTDIR)/etc/opt/csw/$(NAME) ) + ( mkdir -p $(DESTDIR)/opt/csw/etc/$(NAME) ) + ( mkdir -p $(DESTDIR)/var/opt/csw/$(NAME) ) + ( mkdir -p $(DESTDIR)/opt/csw/share ) + ( cp -fr $(WORKDIR)/apache-tomcat-$(VERSION) $(DESTDIR)/opt/csw/share/$(NAME) ) + ( cp -fr $(FILEDIR)/csw$(NAME) $(DESTDIR)/etc/opt/csw/init.d ) + ( mv $(DESTDIR)/opt/csw/share/$(NAME)/conf $(DESTDIR)/etc/opt/csw/$(NAME)/conf ) + ( mv $(DESTDIR)/opt/csw/share/$(NAME)/logs $(DESTDIR)/var/opt/csw/$(NAME) ) + ( mv $(DESTDIR)/opt/csw/share/$(NAME)/work $(DESTDIR)/var/opt/csw/$(NAME) ) + ( mv $(DESTDIR)/opt/csw/share/$(NAME)/temp $(DESTDIR)/var/opt/csw/$(NAME) ) + ( ln -s /etc/opt/csw/$(NAME)/conf $(DESTDIR)/opt/csw/share/$(NAME)/conf ) + ( ln -s /var/opt/csw/$(NAME)/logs $(DESTDIR)/opt/csw/share/$(NAME)/logs ) + ( ln -s /var/opt/csw/$(NAME)/work $(DESTDIR)/opt/csw/share/$(NAME)/work ) + ( ln -s /var/opt/csw/$(NAME)/temp $(DESTDIR)/opt/csw/share/$(NAME)/temp ) + ( ginstall -m 644 $(FILEDIR)/cswusergroup $(DESTDIR)/etc/opt/csw/pkg/$(NAME) ) + @$(MAKECOOKIE) + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Fri Feb 18 17:37:59 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Fri, 18 Feb 2011 16:37:59 +0000 Subject: [csw-devel] SF.net SVN: gar:[13373] csw/mgar/gar/v2/gar.pkg.mk Message-ID: Revision: 13373 http://gar.svn.sourceforge.net/gar/?rev=13373&view=rev Author: bdwalton Date: 2011-02-18 16:37:59 +0000 (Fri, 18 Feb 2011) Log Message: ----------- gar/v2: enable the cswreleasenotes_filter to add 'i cswreleasenotes' if cswreleasenotes.CSWfoo exists Modified Paths: -------------- csw/mgar/gar/v2/gar.pkg.mk Modified: csw/mgar/gar/v2/gar.pkg.mk =================================================================== --- csw/mgar/gar/v2/gar.pkg.mk 2011-02-18 16:33:49 UTC (rev 13372) +++ csw/mgar/gar/v2/gar.pkg.mk 2011-02-18 16:37:59 UTC (rev 13373) @@ -444,9 +444,9 @@ ) \ <$(PROTOTYPE); \ if [ -n "$(EXTRA_PKGFILES_$*)" ]; then echo "$(EXTRA_PKGFILES_$*)"; fi \ - ) $(call checkpkg_override_filter,$*) $(_CSWCLASS_FILTER) $(_CATEGORY_FILTER) $(_PROTOTYPE_MODIFIERS) $(_PROTOTYPE_FILTER_$*) >$@; \ + ) $(call checkpkg_override_filter,$*) $(call cswreleasenotes_filter,$*) $(_CSWCLASS_FILTER) $(_CATEGORY_FILTER) $(_PROTOTYPE_MODIFIERS) $(_PROTOTYPE_FILTER_$*) >$@; \ else \ - cat $(PROTOTYPE) $(call checkpkg_override_filter,$*) $(_CSWCLASS_FILTER) $(_CATEGORY_FILTER) $(_PROTOTYPE_MODIFIERS) $(_PROTOTYPE_FILTER_$*) >$@; \ + cat $(PROTOTYPE) $(call checkpkg_override_filter,$*) $(call cswreleasenotes_filter,$*) $(_CSWCLASS_FILTER) $(_CATEGORY_FILTER) $(_PROTOTYPE_MODIFIERS) $(_PROTOTYPE_FILTER_$*) >$@; \ fi $(if $(ALLOW_RELOCATE),$(call dontrelocate,opt,$(PROTOTYPE))) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Fri Feb 18 17:44:07 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Fri, 18 Feb 2011 16:44:07 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[292] ircbot Message-ID: Revision: 292 http://opencsw.svn.sourceforge.net/opencsw/?rev=292&view=rev Author: skayser Date: 2011-02-18 16:44:07 +0000 (Fri, 18 Feb 2011) Log Message: ----------- ircbot: provide full bot skelton to jumpstart test/dev deployments Added Paths: ----------- ircbot/backup/ ircbot/conf/ ircbot/conf/channels.conf ircbot/conf/ignores.conf ircbot/conf/userdata.conf ircbot/data/ ircbot/example-bot.conf ircbot/logs/ ircbot/plugins/ ircbot/plugins/AUTHORS ircbot/plugins/CSW/ ircbot/plugins/README ircbot/tmp/ Removed Paths: ------------- ircbot/AUTHORS ircbot/CSW/ ircbot/README Deleted: ircbot/AUTHORS =================================================================== --- ircbot/AUTHORS 2011-02-16 00:11:08 UTC (rev 291) +++ ircbot/AUTHORS 2011-02-18 16:44:07 UTC (rev 292) @@ -1,2 +0,0 @@ -Initial hack - Sebastian Kayser Deleted: ircbot/README =================================================================== --- ircbot/README 2011-02-16 00:11:08 UTC (rev 291) +++ ircbot/README 2011-02-18 16:44:07 UTC (rev 292) @@ -1,52 +0,0 @@ -The directory CSW is a plugin for the IRC bot supybot [1] and was hacked -together against supybot 0.83.4.1. To hook it into the bot, place the -whole CSW directory in one of the supybot plugin directories [2] and -query your bot with "load CSW". The CSW plugin currently doesn't have any -configuration variables of its own. - -IMPORTANT: The @buginfo function won't work out of the box. The -password has been stripped from plugin.py (see mantis_pass) so that it -won't be compromised in our public SVN. - -[1] http://supybot.sourceforge.net -[2] See config variable: supybot.directories.plugins - --- - -Keep in mind that this is rather a POC than something polished. There are a -couple of things that could be improved: - -- Package/software name normalization layer required. Right now, functions - working with package/software name arguments only strip CSW when it - is encountered, but this is rather naive. Try to query the bot with - @pkginfo CSWdovecot-devel to see why (software name = dovecot_devel). - -- Exception handling could make query replies more meaningful. If there - is an exception within the plugin it doesn't harm the bot (the bot - will log the exception and respond with the value of supybot.replies.error - to the user), but it could be handled accordingly so that the user - knows what fails and whether he should try again. - -- The off-the shelf help system should be overloaded with one that - is meaningful to the user, i.e. @help should ideally just display - a list of commands that we want to offer along with their description. - If possible, the original @help should still be available under another - keyword. - -- The plugin runs with Threaded = True right now. Do we need this at all? - If we need it, do we also need some sort of locks throughout the code? - -Feature enhancement ideas: - -- @search keyword to search various of our resources (opencsw.org/standards, - opencsw.wikidot.com, gar.sf.net). - -- Enhance the URL builder to check and indicate whether a constructed URL is - valid. This would be especially useful for the gar url builder (@url gar - foo) so that one can check whether a build description for a package - exists in GAR. Requires input value sanitization though. - -Already integrated features (amongst others): - -- @explain keyword to explain GAR variables from - http://sourceforge.net/apps/trac/gar/wiki/GAR%20Variable%20Reference Property changes on: ircbot/conf ___________________________________________________________________ Added: svn:ignore + users.conf Added: ircbot/conf/channels.conf =================================================================== --- ircbot/conf/channels.conf (rev 0) +++ ircbot/conf/channels.conf 2011-02-18 16:44:07 UTC (rev 292) @@ -0,0 +1,8 @@ +channel #ceeswii + lobotomized False + defaultAllow True + capability -halfop + capability -protected + capability -op + capability -voice + Added: ircbot/conf/ignores.conf =================================================================== Added: ircbot/conf/userdata.conf =================================================================== Property changes on: ircbot/data ___________________________________________________________________ Added: svn:ignore + * Added: ircbot/example-bot.conf =================================================================== --- ircbot/example-bot.conf (rev 0) +++ ircbot/example-bot.conf 2011-02-18 16:44:07 UTC (rev 292) @@ -0,0 +1,1277 @@ +### +# Determines the bot's default nick. +# +# Default value: supybot +### +supybot.nick: + +### +# Determines what alternative nicks will be used if the primary nick +# (supybot.nick) isn't available. A %s in this nick is replaced by the +# value of supybot.nick when used. If no alternates are given, or if all +# are used, the supybot.nick will be perturbed appropriately until an +# unused nick is found. +# +# Default value: %s` %s_ +### +supybot.nick.alternates: %s` %s_ + +### +# Determines the bot's ident string, if the server doesn't provide one +# by default. +# +# Default value: supybot +### +supybot.ident: supybot + +### +# Determines the user the bot sends to the server. A standard user using +# the current version of the bot will be generated if this is left +# empty. +# +# Default value: +### +supybot.user: + +### +# Determines what networks the bot will connect to. +# +# Default value: +### +supybot.networks: freenode + +### +# Determines what password will be used on freenode. Yes, we know that +# technically passwords are server-specific and not network-specific, +# but this is the best we can do right now. +# +# Default value: +### +supybot.networks.freenode.password: + +### +# Determines what servers the bot will connect to for freenode. Each +# will be tried in order, wrapping back to the first when the cycle is +# completed. +# +# Default value: +### +supybot.networks.freenode.servers: irc.freenode.net:6667 + +### +# Determines what channels the bot will join only on freenode. +# +# Default value: +### +supybot.networks.freenode.channels: + +### +# Determines what key (if any) will be used to join the channel. +# +# Default value: +### +supybot.networks.freenode.channels.key: + +### +# Determines whether the bot will attempt to connect with SSL sockets to +# freenode. +# +# Default value: False +### +supybot.networks.freenode.ssl: False + +### +# Determines how timestamps printed for human reading should be +# formatted. Refer to the Python documentation for the time module to +# see valid formatting characters for time formats. +# +# Default value: %I:%M %p, %B %d, %Y +### +supybot.reply.format.time: %I:%M %p, %B %d, %Y + +### +# Determines whether elapsed times will be given as "1 day, 2 hours, 3 +# minutes, and 15 seconds" or as "1d 2h 3m 15s". +# +# Default value: False +### +supybot.reply.format.time.elapsed.short: False + +### +# Determines the absolute maximum length of the bot's reply -- no reply +# will be passed through the bot with a length greater than this. +# +# Default value: 131072 +### +supybot.reply.maximumLength: 131072 + +### +# Determines whether the bot will break up long messages into chunks and +# allow users to use the 'more' command to get the remaining chunks. +# +# Default value: True +### +supybot.reply.mores: True + +### +# Determines what the maximum number of chunks (for use with the 'more' +# command) will be. +# +# Default value: 50 +### +supybot.reply.mores.maximum: 50 + +### +# Determines how long individual chunks will be. If set to 0, uses our +# super-tweaked, get-the-most-out-of-an-individual-message default. +# +# Default value: 0 +### +supybot.reply.mores.length: 0 + +### +# Determines how many mores will be sent instantly (i.e., without the +# use of the more command, immediately when they are formed). Defaults +# to 1, which means that a more command will be required for all but the +# first chunk. +# +# Default value: 1 +### +supybot.reply.mores.instant: 1 + +### +# Determines whether the bot will send multi-message replies in a single +# message or in multiple messages. For safety purposes (so the bot is +# less likely to flood) it will normally send everything in a single +# message, using mores if necessary. +# +# Default value: True +### +supybot.reply.oneToOne: True + +### +# Determines whether the bot will reply with an error message when it is +# addressed but not given a valid command. If this value is False, the +# bot will remain silent, as long as no other plugins override the +# normal behavior. +# +# Default value: True +### +supybot.reply.whenNotCommand: True + +### +# Determines whether error messages that result from bugs in the bot +# will show a detailed error message (the uncaught exception) or a +# generic error message. +# +# Default value: False +### +supybot.reply.error.detailed: False + +### +# Determines whether the bot will send error messages to users in +# private. You might want to do this in order to keep channel traffic to +# minimum. This can be used in combination with +# supybot.reply.error.withNotice. +# +# Default value: False +### +supybot.reply.error.inPrivate: False + +### +# Determines whether the bot will send error messages to users via +# NOTICE instead of PRIVMSG. You might want to do this so users can +# ignore NOTICEs from the bot and not have to see error messages; or you +# might want to use it in combination with supybot.reply.errorInPrivate +# so private errors don't open a query window in most IRC clients. +# +# Default value: False +### +supybot.reply.error.withNotice: False + +### +# Determines whether the bot will send an error message to users who +# attempt to call a command for which they do not have the necessary +# capability. You may wish to make this True if you don't want users to +# understand the underlying security system preventing them from running +# certain commands. +# +# Default value: False +### +supybot.reply.error.noCapability: False + +### +# Determines whether the bot will reply privately when replying in a +# channel, rather than replying to the whole channel. +# +# Default value: False +### +supybot.reply.inPrivate: False + +### +# Determines whether the bot will reply with a notice when replying in a +# channel, rather than replying with a privmsg as normal. +# +# Default value: False +### +supybot.reply.withNotice: False + +### +# Determines whether the bot will reply with a notice when it is sending +# a private message, in order not to open a /query window in clients. +# This can be overridden by individual users via the user configuration +# variable reply.withNoticeWhenPrivate. +# +# Default value: False +### +supybot.reply.withNoticeWhenPrivate: False + +### +# Determines whether the bot will always prefix the user's nick to its +# reply to that user's command. +# +# Default value: True +### +supybot.reply.withNickPrefix: True + +### +# Determines whether the bot should attempt to reply to all messages +# even if they don't address it (either via its nick or a prefix +# character). If you set this to True, you almost certainly want to set +# supybot.reply.whenNotCommand to False. +# +# Default value: False +### +supybot.reply.whenNotAddressed: False + +### +# Determines whether the bot will allow you to send channel-related +# commands outside of that channel. Sometimes people find it confusing +# if a channel-related command (like Filter.outfilter) changes the +# behavior of the channel but was sent outside the channel itself. +# +# Default value: False +### +supybot.reply.requireChannelCommandsToBeSentInChannel: False + +### +# Supybot normally replies with the full help whenever a user misuses a +# command. If this value is set to True, the bot will only reply with +# the syntax of the command (the first line of the help) rather than the +# full help. +# +# Default value: False +### +supybot.reply.showSimpleSyntax: False + +### +# Determines what prefix characters the bot will reply to. A prefix +# character is a single character that the bot will use to determine +# what messages are addressed to it; when there are no prefix characters +# set, it just uses its nick. Each character in this string is +# interpreted individually; you can have multiple prefix chars +# simultaneously, and if any one of them is used as a prefix the bot +# will assume it is being addressed. +# +# Default value: +### +supybot.reply.whenAddressedBy.chars: @ + +### +# Determines what strings the bot will reply to when they are at the +# beginning of the message. Whereas prefix.chars can only be one +# character (although there can be many of them), this variable is a +# space-separated list of strings, so you can set something like '@@ ??' +# and the bot will reply when a message is prefixed by either @@ or ??. +# +# Default value: +### +supybot.reply.whenAddressedBy.strings: + +### +# Determines whether the bot will reply when people address it by its +# nick, rather than with a prefix character. +# +# Default value: True +### +supybot.reply.whenAddressedBy.nick: True + +### +# Determines whether the bot will reply when people address it by its +# nick at the end of the message, rather than at the beginning. +# +# Default value: False +### +supybot.reply.whenAddressedBy.nick.atEnd: False + +### +# Determines what extra nicks the bot will always respond to when +# addressed by, even if its current nick is something else. +# +# Default value: +### +supybot.reply.whenAddressedBy.nicks: + +### +# Determines whether the bot will unidentify someone when that person +# changes his or her nick. Setting this to True will cause the bot to +# track such changes. It defaults to False for a little greater +# security. +# +# Default value: False +### +supybot.followIdentificationThroughNickChanges: False + +### +# Determines whether the bot will always join a channel when it's +# invited. If this value is False, the bot will only join a channel if +# the user inviting it has the 'admin' capability (or if it's explicitly +# told to join the channel using the Admin.join command) +# +# Default value: False +### +supybot.alwaysJoinOnInvite: False + +### +# Determines what message the bot replies with when a command succeeded. +# If this configuration variable is empty, no success message will be +# sent. +### +supybot.replies.success: The operation succeeded. + +### +# Determines what error message the bot gives when it wants to be +# ambiguous. +### +supybot.replies.error: An error has occurred and has been logged. Please\ + contact this bot's administrator for more\ + information. + +### +# Determines what message the bot replies with when someone tries to use +# a command that requires being identified or having a password and +# neither credential is correct. +### +supybot.replies.incorrectAuthentication: Your hostmask doesn't match or your\ + password is wrong. + +### +# Determines what error message the bot replies with when someone tries +# to accessing some information on a user the bot doesn't know about. +### +supybot.replies.noUser: I can't find %s in my user database. If you didn't\ + give a user name, then I might not know what your\ + user is, and you'll need to identify before this\ + command might work. + +### +# Determines what error message the bot replies with when someone tries +# to do something that requires them to be registered but they're not +# currently recognized. +### +supybot.replies.notRegistered: You must be registered to use this command.\ + If you are already registered, you must\ + either identify (using the identify command)\ + or add a hostmask matching your current\ + hostmask (using the "hostmask add" command). + +### +# Determines what error message is given when the bot is telling someone +# they aren't cool enough to use the command they tried to use. +### +supybot.replies.noCapability: You don't have the %s capability. If you think\ + that you should have this capability, be sure\ + that you are identified before trying again.\ + The 'whoami' command can tell you if you're\ + identified. + +### +# Determines what generic error message is given when the bot is telling +# someone that they aren't cool enough to use the command they tried to +# use, and the author of the code calling errorNoCapability didn't +# provide an explicit capability for whatever reason. +### +supybot.replies.genericNoCapability: You're missing some capability you\ + need. This could be because you\ + actually possess the anti-capability\ + for the capability that's required of\ + you, or because the channel provides\ + that anti-capability by default, or\ + because the global capabilities include\ + that anti-capability. Or, it could be\ + because the channel or\ + supybot.capabilities.default is set to\ + False, meaning that no commands are\ + allowed unless explicitly in your\ + capabilities. Either way, you can't do\ + what you want to do. + +### +# Determines what error messages the bot sends to people who try to do +# things in a channel that really should be done in private. +### +supybot.replies.requiresPrivacy: That operation cannot be done in a channel. + +### +# Determines what message the bot sends when it thinks you've +# encountered a bug that the developers don't know about. +### +supybot.replies.possibleBug: This may be a bug. If you think it is, please\ + file a bug report at . + +### +# A floating point number of seconds to throttle snarfed URLs, in order +# to prevent loops between two bots snarfing the same URLs and having +# the snarfed URL in the output of the snarf message. +# +# Default value: 10.0 +### +supybot.snarfThrottle: 10.0 + +### +# Determines the number of seconds between running the upkeep function +# that flushes (commits) open databases, collects garbage, and records +# some useful statistics at the debugging level. +# +# Default value: 3600 +### +supybot.upkeepInterval: 3600 + +### +# Determines whether the bot will periodically flush data and +# configuration files to disk. Generally, the only time you'll want to +# set this to False is when you want to modify those configuration files +# by hand and don't want the bot to flush its current version over your +# modifications. Do note that if you change this to False inside the +# bot, your changes won't be flushed. To make this change permanent, you +# must edit the registry yourself. +# +# Default value: True +### +supybot.flush: True + +### +# Determines what characters are valid for quoting arguments to commands +# in order to prevent them from being tokenized. +# +# Default value: " +### +supybot.commands.quotes: " + +### +# Determines whether the bot will allow nested commands, which rule. You +# definitely should keep this on. +# +# Default value: True +### +supybot.commands.nested: True + +### +# Determines what the maximum number of nested commands will be; users +# will receive an error if they attempt commands more nested than this. +# +# Default value: 10 +### +supybot.commands.nested.maximum: 10 + +### +# Supybot allows you to specify what brackets are used for your nested +# commands. Valid sets of brackets include [], <>, and {} (). [] has +# strong historical motivation, as well as being the brackets that don't +# require shift. <> or () might be slightly superior because they cannot +# occur in a nick. If this string is empty, nested commands will not be +# allowed in this channel. +# +# Default value: [] +### +supybot.commands.nested.brackets: [] + +### +# Supybot allows nested commands. Enabling this option will allow nested +# commands with a syntax similar to UNIX pipes, for example: 'bot: foo | +# bar'. +# +# Default value: False +### +supybot.commands.nested.pipeSyntax: False + +### +# Determines what commands have default plugins set, and which plugins +# are set to be the default for each of those commands. +### +supybot.commands.defaultPlugins.addcapability: Admin +supybot.commands.defaultPlugins.capabilities: User +supybot.commands.defaultPlugins.disable: Owner +supybot.commands.defaultPlugins.enable: Owner +supybot.commands.defaultPlugins.help: Misc +supybot.commands.defaultPlugins.ignore: Admin + +### +# Determines what plugins automatically get precedence over all other +# plugins when selecting a default plugin for a command. By default, +# this includes the standard loaded plugins. You probably shouldn't +# change this if you don't know what you're doing; if you do know what +# you're doing, then also know that this set is case-sensitive. +# +# Default value: Plugin Admin Misc User Owner Config Channel +### +supybot.commands.defaultPlugins.importantPlugins: Plugin Admin Misc User Owner Config Channel +supybot.commands.defaultPlugins.list: Misc +supybot.commands.defaultPlugins.reload: Owner +supybot.commands.defaultPlugins.removecapability: Admin +supybot.commands.defaultPlugins.unignore: Admin + +### +# Determines what commands are currently disabled. Such commands will +# not appear in command lists, etc. They will appear not even to exist. +# +# Default value: +### +supybot.commands.disabled: + +### +# Determines whether the bot will defend itself against command- +# flooding. +# +# Default value: True +### +supybot.abuse.flood.command: True + +### +# Determines how many commands users are allowed per minute. If a user +# sends more than this many commands in any 60 second period, he or she +# will be ignored for supybot.abuse.flood.command.punishment seconds. +# +# Default value: 12 +### +supybot.abuse.flood.command.maximum: 12 + +### +# Determines how many seconds the bot will ignore users who flood it +# with commands. +# +# Default value: 300 +### +supybot.abuse.flood.command.punishment: 300 + +### +# Determines whether the bot will defend itself against invalid command- +# flooding. +# +# Default value: True +### +supybot.abuse.flood.command.invalid: True + +### +# Determines how many invalid commands users are allowed per minute. If +# a user sends more than this many invalid commands in any 60 second +# period, he or she will be ignored for +# supybot.abuse.flood.command.invalid.punishment seconds. Typically, +# this value is lower than supybot.abuse.flood.command.maximum, since +# it's far less likely (and far more annoying) for users to flood with +# invalid commands than for them to flood with valid commands. +# +# Default value: 5 +### +supybot.abuse.flood.command.invalid.maximum: 5 + +### +# Determines how many seconds the bot will ignore users who flood it +# with invalid commands. Typically, this value is higher than +# supybot.abuse.flood.command.punishment, since it's far less likely +# (and far more annoying) for users to flood witih invalid commands than +# for them to flood with valid commands. +# +# Default value: 600 +### +supybot.abuse.flood.command.invalid.punishment: 600 + +### +# Determines the default length of time a driver should block waiting +# for input. +# +# Default value: 1.0 +### +supybot.drivers.poll: 1.0 + +### +# Determines what driver module the bot will use. Socket, a simple +# driver based on timeout sockets, is used by default because it's +# simple and stable. Twisted is very stable and simple, and if you've +# got Twisted installed, is probably your best bet. +# +# Default value: default +### +supybot.drivers.module: default + +### +# Determines the maximum time the bot will wait before attempting to +# reconnect to an IRC server. The bot may, of course, reconnect earlier +# if possible. +# +# Default value: 300.0 +### +supybot.drivers.maxReconnectWait: 300.0 + +### +# Determines what directory configuration data is put into. +# +# Default value: conf +### +supybot.directories.conf: /home/ska/tmp/supy-maciej/conf + +### +# Determines what directory data is put into. +# +# Default value: data +### +supybot.directories.data: /home/ska/tmp/supy-maciej/data + +### +# Determines what directory temporary files are put into. +# +# Default value: tmp +### +supybot.directories.data.tmp: /home/ska/tmp/supy-maciej/data/tmp + +### +# Determines what directory backup data is put into. +# +# Default value: backup +### +supybot.directories.backup: /home/ska/tmp/supy-maciej/backup + +### +# Determines what directories the bot will look for plugins in. Accepts +# a comma-separated list of strings. This means that to add another +# directory, you can nest the former value and add a new one. E.g. you +# can say: bot: 'config supybot.directories.plugins [config +# supybot.directories.plugins], newPluginDirectory'. +# +# Default value: +### +supybot.directories.plugins: /home/ska/tmp/supy-maciej/plugins + +### +# Determines what directory the bot will store its logfiles in. +# +# Default value: logs +### +supybot.directories.log: /home/ska/tmp/supy-maciej/logs + +### +# Determines what plugins will be loaded. +# +# Default value: +### +supybot.plugins: Admin Misc User Owner CSW Config Channel RSS + +### +# Determines whether this plugin is loaded by default. +### +supybot.plugins.Admin: True + +### +# Determines whether this plugin is publicly visible. +# +# Default value: True +### +supybot.plugins.Admin.public: True + +### +# Determines whether this plugin is loaded by default. +### +supybot.plugins.CSW: True + +### +# Determines whether this plugin is publicly visible. +# +# Default value: True +### +supybot.plugins.CSW.public: True + +### +# Determines whether this plugin is loaded by default. +### +supybot.plugins.Channel: True + +### +# Determines whether this plugin is publicly visible. +# +# Default value: True +### +supybot.plugins.Channel.public: True + +### +# Determines whether the bot will always try to rejoin a channel +# whenever it's kicked from the channel. +# +# Default value: True +### +supybot.plugins.Channel.alwaysRejoin: True + +### +# Determines whether this plugin is loaded by default. +### +supybot.plugins.Config: True + +### +# Determines whether this plugin is publicly visible. +# +# Default value: True +### +supybot.plugins.Config.public: True + +### +# Determines whether this plugin is loaded by default. +### +supybot.plugins.Misc: True + +### +# Determines whether this plugin is publicly visible. +# +# Default value: True +### +supybot.plugins.Misc.public: True + +### +# Determines whether the bot will list private plugins with the list +# command if given the --private switch. If this is disabled, non-owner +# users should be unable to see what private plugins are loaded. +# +# Default value: True +### +supybot.plugins.Misc.listPrivatePlugins: True + +### +# Determines the format string for timestamps in the Misc.last command. +# Refer to the Python documentation for the time module to see what +# formats are accepted. If you set this variable to the empty string, +# the timestamp will not be shown. +# +# Default value: [%H:%M:%S] +### +supybot.plugins.Misc.timestampFormat: [%H:%M:%S] + +### +# Determines whether or not the timestamp will be included in the output +# of last when it is part of a nested command +# +# Default value: False +### +supybot.plugins.Misc.last.nested.includeTimestamp: False + +### +# Determines whether or not the nick will be included in the output of +# last when it is part of a nested command +# +# Default value: False +### +supybot.plugins.Misc.last.nested.includeNick: False + +### +# Determines whether this plugin is loaded by default. +### +supybot.plugins.Owner: True + +### +# Determines whether this plugin is publicly visible. +# +# Default value: True +### +supybot.plugins.Owner.public: True + +### +# Determines what quit message will be used by default. If the quit +# command is called without a quit message, this will be used. If this +# value is empty, the nick of the person giving the quit command will be +# used. +# +# Default value: +### +supybot.plugins.Owner.quitMsg: + +### +# Determines whether this plugin is loaded by default. +### +supybot.plugins.RSS: True + +### +# Determines whether this plugin is publicly visible. +# +# Default value: True +### +supybot.plugins.RSS.public: True + +### +# Determines whether the bot will bold the title of the feed when it +# announces new news. +# +# Default value: True +### +supybot.plugins.RSS.bold: True + +### +# Determines what string is used to separate headlines in new feeds. +# +# Default value: || +### +supybot.plugins.RSS.headlineSeparator: || + +### +# Determines what prefix is prepended (if any) to the new news item +# announcements made in the channel. +# +# Default value: New news from +### +supybot.plugins.RSS.announcementPrefix: New news from + +### +# Determines which RSS feeds should be announced in the channel; valid +# input is a list of strings (either registered RSS feeds or RSS feed +# URLs) separated by spaces. +# +# Default value: +### +supybot.plugins.RSS.announce: + +### +# Determines whether the bot will list the link along with the title of +# the feed when a feed is automatically announced. +# +# Default value: False +### +supybot.plugins.RSS.announce.showLinks: False + +### +# Indicates how many seconds the bot will wait between retrieving RSS +# feeds; requests made within this period will return cached results. +# +# Default value: 1800 +### +supybot.plugins.RSS.waitPeriod: 1800 + +### +# Determines what feeds should be accessible as commands. +# +# Default value: +### +supybot.plugins.RSS.feeds: + +### +# Determines whether the bot will list the link along with the title of +# the feed when the rss command is called. +# supybot.plugins.RSS.announce.showLinks affects whether links will be +# listed when a feed is automatically announced. +# +# Default value: False +### +supybot.plugins.RSS.showLinks: False + +### +# Determines whether this plugin is loaded by default. +### +supybot.plugins.User: True + +### +# Determines whether this plugin is publicly visible. +# +# Default value: True +### +supybot.plugins.User.public: True + +### +# Determines whether the bot will always load important plugins (Admin, +# Channel, Config, Misc, Owner, and User) regardless of what their +# configured state is. Generally, if these plugins are configured not to +# load, you didn't do it on purpose, and you still want them to load. +# Users who don't want to load these plugins are smart enough to change +# the value of this variable appropriately :) +# +# Default value: True +### +supybot.plugins.alwaysLoadImportant: True + +### +# Determines what databases are available for use. If this value is not +# configured (that is, if its value is empty) then sane defaults will be +# provided. +# +# Default value: anydbm cdb flat pickle +### +supybot.databases: + +### +# Determines what filename will be used for the users database. This +# file will go into the directory specified by the +# supybot.directories.conf variable. +# +# Default value: users.conf +### +supybot.databases.users.filename: users.conf + +### +# Determines how long it takes identification to time out. If the value +# is less than or equal to zero, identification never times out. +# +# Default value: 0 +### +supybot.databases.users.timeoutIdentification: 0 + +### +# Determines whether the bot will allow users to unregister their users. +# This can wreak havoc with already-existing databases, so by default we +# don't allow it. Enable this at your own risk. (Do also note that this +# does not prevent the owner of the bot from using the unregister +# command.) +# +# Default value: False +### +supybot.databases.users.allowUnregistration: False + +### +# Determines what filename will be used for the ignores database. This +# file will go into the directory specified by the +# supybot.directories.conf variable. +# +# Default value: ignores.conf +### +supybot.databases.ignores.filename: ignores.conf + +### +# Determines what filename will be used for the channels database. This +# file will go into the directory specified by the +# supybot.directories.conf variable. +# +# Default value: channels.conf +### +supybot.databases.channels.filename: channels.conf + +### +# Determines whether database-based plugins that can be channel-specific +# will be so. This can be overridden by individual channels. Do note +# that the bot needs to be restarted immediately after changing this +# variable or your db plugins may not work for your channel; also note +# that you may wish to set +# supybot.databases.plugins.channelSpecific.link appropriately if you +# wish to share a certain channel's databases globally. +# +# Default value: True +### +supybot.databases.plugins.channelSpecific: True + +### +# Determines what channel global (non-channel-specific) databases will +# be considered a part of. This is helpful if you've been running +# channel-specific for awhile and want to turn the databases for your +# primary channel into global databases. If +# supybot.databases.plugins.channelSpecific.link.allow prevents linking, +# the current channel will be used. Do note that the bot needs to be +# restarted immediately after changing this variable or your db plugins +# may not work for your channel. +# +# Default value: # +### +supybot.databases.plugins.channelSpecific.link: # + +### +# Determines whether another channel's global (non-channel-specific) +# databases will be allowed to link to this channel's databases. Do note +# that the bot needs to be restarted immediately after changing this +# variable or your db plugins may not work for your channel. +# +# Default value: True +### +supybot.databases.plugins.channelSpecific.link.allow: True + +### +# Determines whether CDB databases will be allowed as a database +# implementation. +# +# Default value: True +### +supybot.databases.types.cdb: True + +### +# Determines how often CDB databases will have their modifications +# flushed to disk. When the number of modified records is greater than +# this part of the number of unmodified records, the database will be +# entirely flushed to disk. +# +# Default value: 0.5 +### +supybot.databases.types.cdb.maximumModifications: 0.5 + +### +# Determines what will be used as the default banmask style. +# +# Default value: host user +### +supybot.protocols.irc.banmask: host user + +### +# Determines whether the bot will strictly follow the RFC; currently +# this only affects what strings are considered to be nicks. If you're +# using a server or a network that requires you to message a nick such +# as services at this.network.server then you you should set this to False. +# +# Default value: False +### +supybot.protocols.irc.strictRfc: False + +### +# Determines what user modes the bot will request from the server when +# it first connects. Many people might choose +i; some networks allow +# +x, which indicates to the auth services on those networks that you +# should be given a fake host. +# +# Default value: +### +supybot.protocols.irc.umodes: + +### +# Determines what vhost the bot will bind to before connecting to the +# IRC server. +# +# Default value: +### +supybot.protocols.irc.vhost: + +### +# Determines how many old messages the bot will keep around in its +# history. Changing this variable will not take effect until the bot is +# restarted. +# +# Default value: 1000 +### +supybot.protocols.irc.maxHistoryLength: 1000 + +### +# A floating point number of seconds to throttle queued messages -- that +# is, messages will not be sent faster than once per throttleTime +# seconds. +# +# Default value: 1.0 +### +supybot.protocols.irc.throttleTime: 1.0 + +### +# Determines whether the bot will send PINGs to the server it's +# connected to in order to keep the connection alive and discover +# earlier when it breaks. Really, this option only exists for debugging +# purposes: you always should make it True unless you're testing some +# strange server issues. +# +# Default value: True +### +supybot.protocols.irc.ping: True + +### +# Determines the number of seconds between sending pings to the server, +# if pings are being sent to the server. +# +# Default value: 120 +### +supybot.protocols.irc.ping.interval: 120 + +### +# Determines whether the bot will refuse duplicate messages to be queued +# for delivery to the server. This is a safety mechanism put in place to +# prevent plugins from sending the same message multiple times; most of +# the time it doesn't matter, unless you're doing certain kinds of +# plugin hacking. +# +# Default value: False +### +supybot.protocols.irc.queuing.duplicates: False + +### +# Determines how many seconds must elapse between JOINs sent to the +# server. +# +# Default value: 0.0 +### +supybot.protocols.irc.queuing.rateLimit.join: 0.0 + +### +# Determines how many bytes the bot will 'peek' at when looking through +# a URL for a doctype or title or something similar. It'll give up after +# it reads this many bytes, even if it hasn't found what it was looking +# for. +# +# Default value: 4096 +### +supybot.protocols.http.peekSize: 4096 + +### +# Determines what proxy all HTTP requests should go through. The value +# should be of the form 'host:port'. +# +# Default value: +### +supybot.protocols.http.proxy: + +### +# Determines whether the bot will ignore unregistered users by default. +# Of course, that'll make it particularly hard for those users to +# register or identify with the bot, but that's your problem to solve. +# +# Default value: False +### +supybot.defaultIgnore: False + +### +# A string that is the external IP of the bot. If this is the empty +# string, the bot will attempt to find out its IP dynamically (though +# sometimes that doesn't work, hence this variable). +# +# Default value: +### +supybot.externalIP: + +### +# Determines what the default timeout for socket objects will be. This +# means that *all* sockets will timeout when this many seconds has gone +# by (unless otherwise modified by the author of the code that uses the +# sockets). +# +# Default value: 10 +### +supybot.defaultSocketTimeout: 10 + +### +# Determines what file the bot should write its PID (Process ID) to, so +# you can kill it more easily. If it's left unset (as is the default) +# then no PID file will be written. A restart is required for changes to +# this variable to take effect. +# +# Default value: +### +supybot.pidFile: + +### +# Determines whether the bot will automatically thread all commands. +# +# Default value: False +### +supybot.debug.threadAllCommands: False + +### +# Determines whether the bot will automatically flush all flushers +# *very* often. Useful for debugging when you don't know what's breaking +# or when, but think that it might be logged. +# +# Default value: False +### +supybot.debug.flushVeryOften: False + +### +# Determines what the bot's logging format will be. The relevant +# documentation on the available formattings is Python's documentation +# on its logging module. +# +# Default value: %(levelname)s %(asctime)s %(name)s %(message)s +### +supybot.log.format: %(levelname)s %(asctime)s %(name)s %(message)s + +### +# Determines what the minimum priority level logged to file will be. Do +# note that this value does not affect the level logged to stdout; for +# that, you should set the value of supybot.log.stdout.level. Valid +# values are DEBUG, INFO, WARNING, ERROR, and CRITICAL, in order of +# increasing priority. +# +# Default value: INFO +### +supybot.log.level: INFO + +### +# Determines the format string for timestamps in logfiles. Refer to the +# Python documentation for the time module to see what formats are +# accepted. If you set this variable to the empty string, times will be +# logged in a simple seconds-since-epoch format. +# +# Default value: %Y-%m-%dT%H:%M:%S +### +supybot.log.timestampFormat: %Y-%m-%dT%H:%M:%S + +### +# Determines whether the bot will log to stdout. +# +# Default value: True +### +supybot.log.stdout: True + +### +# Determines whether the bot's logs to stdout (if enabled) will be +# colorized with ANSI color. +# +# Default value: False +### +supybot.log.stdout.colorized: False + +### +# Determines whether the bot will wrap its logs when they're output to +# stdout. +# +# Default value: True +### +supybot.log.stdout.wrap: True + +### +# Determines what the bot's logging format will be. The relevant +# documentation on the available formattings is Python's documentation +# on its logging module. +# +# Default value: %(levelname)s %(asctime)s %(message)s +### +supybot.log.stdout.format: %(levelname)s %(asctime)s %(message)s + +### +# Determines what the minimum priority level logged will be. Valid +# values are DEBUG, INFO, WARNING, ERROR, and CRITICAL, in order of +# increasing priority. +# +# Default value: INFO +### +supybot.log.stdout.level: INFO + +### +# Determines whether the bot will separate plugin logs into their own +# individual logfiles. +# +# Default value: False +### +supybot.log.plugins.individualLogfiles: False + +### +# Determines what the bot's logging format will be. The relevant +# documentation on the available formattings is Python's documentation +# on its logging module. +# +# Default value: %(levelname)s %(asctime)s %(message)s +### +supybot.log.plugins.format: %(levelname)s %(asctime)s %(message)s + +### +# These are the capabilities that are given to everyone by default. If +# they are normal capabilities, then the user will have to have the +# appropriate anti-capability if you want to override these +# capabilities; if they are anti-capabilities, then the user will have +# to have the actual capability to override these capabilities. See +# docs/CAPABILITIES if you don't understand why these default to what +# they do. +# +# Default value: -owner -admin -trusted +### +supybot.capabilities: -owner -admin -trusted + +### +# Determines whether the bot by default will allow users to have a +# capability. If this is disabled, a user must explicitly have the +# capability for whatever command he wishes to run. +# +# Default value: True +### +supybot.capabilities.default: True Property changes on: ircbot/logs ___________________________________________________________________ Added: svn:ignore + * Copied: ircbot/plugins/AUTHORS (from rev 291, ircbot/AUTHORS) =================================================================== --- ircbot/plugins/AUTHORS (rev 0) +++ ircbot/plugins/AUTHORS 2011-02-18 16:44:07 UTC (rev 292) @@ -0,0 +1,2 @@ +Initial hack + Sebastian Kayser Copied: ircbot/plugins/README (from rev 291, ircbot/README) =================================================================== --- ircbot/plugins/README (rev 0) +++ ircbot/plugins/README 2011-02-18 16:44:07 UTC (rev 292) @@ -0,0 +1,52 @@ +The directory CSW is a plugin for the IRC bot supybot [1] and was hacked +together against supybot 0.83.4.1. To hook it into the bot, place the +whole CSW directory in one of the supybot plugin directories [2] and +query your bot with "load CSW". The CSW plugin currently doesn't have any +configuration variables of its own. + +IMPORTANT: The @buginfo function won't work out of the box. The +password has been stripped from plugin.py (see mantis_pass) so that it +won't be compromised in our public SVN. + +[1] http://supybot.sourceforge.net +[2] See config variable: supybot.directories.plugins + +-- + +Keep in mind that this is rather a POC than something polished. There are a +couple of things that could be improved: + +- Package/software name normalization layer required. Right now, functions + working with package/software name arguments only strip CSW when it + is encountered, but this is rather naive. Try to query the bot with + @pkginfo CSWdovecot-devel to see why (software name = dovecot_devel). + +- Exception handling could make query replies more meaningful. If there + is an exception within the plugin it doesn't harm the bot (the bot + will log the exception and respond with the value of supybot.replies.error + to the user), but it could be handled accordingly so that the user + knows what fails and whether he should try again. + +- The off-the shelf help system should be overloaded with one that + is meaningful to the user, i.e. @help should ideally just display + a list of commands that we want to offer along with their description. + If possible, the original @help should still be available under another + keyword. + +- The plugin runs with Threaded = True right now. Do we need this at all? + If we need it, do we also need some sort of locks throughout the code? + +Feature enhancement ideas: + +- @search keyword to search various of our resources (opencsw.org/standards, + opencsw.wikidot.com, gar.sf.net). + +- Enhance the URL builder to check and indicate whether a constructed URL is + valid. This would be especially useful for the gar url builder (@url gar + foo) so that one can check whether a build description for a package + exists in GAR. Requires input value sanitization though. + +Already integrated features (amongst others): + +- @explain keyword to explain GAR variables from + http://sourceforge.net/apps/trac/gar/wiki/GAR%20Variable%20Reference This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Fri Feb 18 17:45:36 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Fri, 18 Feb 2011 16:45:36 +0000 Subject: [csw-devel] SF.net SVN: gar:[13374] csw/mgar/pkg/java/ajchttpcl/trunk/Makefile Message-ID: Revision: 13374 http://gar.svn.sourceforge.net/gar/?rev=13374&view=rev Author: wbonnet Date: 2011-02-18 16:45:36 +0000 (Fri, 18 Feb 2011) Log Message: ----------- java/httpclient upgrade to 3.1 Modified Paths: -------------- csw/mgar/pkg/java/ajchttpcl/trunk/Makefile Modified: csw/mgar/pkg/java/ajchttpcl/trunk/Makefile =================================================================== --- csw/mgar/pkg/java/ajchttpcl/trunk/Makefile 2011-02-18 16:37:59 UTC (rev 13373) +++ csw/mgar/pkg/java/ajchttpcl/trunk/Makefile 2011-02-18 16:45:36 UTC (rev 13374) @@ -11,15 +11,24 @@ # Use jakarta sources MASTER_SITES = http://www.apache.org/dist/httpcomponents/commons-$(SHORTNAME)/binary/ -UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*)(-bin*).tar.gz # Set archive filename DISTFILES = $(NAME)-$(VERSION).tar.gz # Defines two packages, lib and doc -DISTFILES += $(call admfiles,CSWajchttpclient,) -DISTFILES += $(call admfiles,CSWajchttpcldoc,) +PACKAGES = CSWajchttpclient CSWajchttpcldoc +# Package architecture is ALL (pure java) +ARCHALL = 1 + +CATALOGNAME_CSWajchttpclient = commons_httpclient +CATALOGNAME_CSWajchttpcldoc = commons_httpcl_doc + +LICENSE = LICENSE.txt + +CHECKPKG_OVERRIDES_CSWajchttpclient += catalogname-does-not-match-pkgname|pkgname=CSWajchttpclient|catalogname=commons_httpclient|expected-catalogname=ajchttpclient +CHECKPKG_OVERRIDES_CSWajchttpcldoc += catalogname-does-not-match-pkgname|pkgname=CSWajchttpcldoc|catalogname=commons_httpcl_doc|expected-catalogname=ajchttpcldoc + # Defines package description SPKG_DESC_CSWajchttpclient = $(DESCRIPTION) SPKG_DESC_CSWajchttpcldoc = $(DESCRIPTION) documentation package @@ -28,7 +37,6 @@ RUNTIME_DEP_PKGS_CSWajchttpclient = CSWajclogging # Defines package content -PKGFILES_CSWajchttpclient = $(prefix)/share/doc/$(NAME)/License.txt PKGFILES_CSWajchttpclient += $(prefix)/share/java/.* # Defines custom steps since java libs do not use autotools @@ -48,7 +56,5 @@ ln -s $(NAME)-$(VERSION).jar $(NAME)-3.jar ; \ ln -s $(NAME)-$(VERSION).jar $(NAME).jar ) @ginstall -d $(DESTDIR)$(datadir)/doc/$(NAME) - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License.txt - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License-documentation.txt @gcp -frp $(WORKSRC)/$(DISTNAME)/docs/* $(DESTDIR)$(datadir)/doc/$(NAME) @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Fri Feb 18 17:46:00 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Fri, 18 Feb 2011 16:46:00 +0000 Subject: [csw-devel] SF.net SVN: gar:[13375] csw/mgar/gar/v2/gar.pkg.mk Message-ID: Revision: 13375 http://gar.svn.sourceforge.net/gar/?rev=13375&view=rev Author: bdwalton Date: 2011-02-18 16:46:00 +0000 (Fri, 18 Feb 2011) Log Message: ----------- gar/v2: use CSWfoo.cswreleasenotes instead of cswreleasenotes.CSWfoo (sort with other package files instead of with other release notes files) Modified Paths: -------------- csw/mgar/gar/v2/gar.pkg.mk Modified: csw/mgar/gar/v2/gar.pkg.mk =================================================================== --- csw/mgar/gar/v2/gar.pkg.mk 2011-02-18 16:45:36 UTC (rev 13374) +++ csw/mgar/gar/v2/gar.pkg.mk 2011-02-18 16:46:00 UTC (rev 13375) @@ -391,7 +391,7 @@ endef define cswreleasenotes_filter - | ( cat; if test -f "$(WORKDIR_GLOBAL)/cswreleasenotes.$(1)";then echo "i cswreleasenotes=cswreleasenotes.$(1)"; fi) + | ( cat; if test -f "$(WORKDIR_GLOBAL)/$(1).cswreleasenotes";then echo "i cswreleasenotes=$(1).cswreleasenotes"; fi) endef # This file contains all installed pathes. This can be used as a starting point This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Fri Feb 18 17:57:58 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Fri, 18 Feb 2011 16:57:58 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[293] web/wordpresscsw/wp-content/themes/opencsw/home. php Message-ID: Revision: 293 http://opencsw.svn.sourceforge.net/opencsw/?rev=293&view=rev Author: wbonnet Date: 2011-02-18 16:57:58 +0000 (Fri, 18 Feb 2011) Log Message: ----------- Modification of addition and update link. Now point to statistics URL Modified Paths: -------------- web/wordpresscsw/wp-content/themes/opencsw/home.php Modified: web/wordpresscsw/wp-content/themes/opencsw/home.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/home.php 2011-02-18 16:44:07 UTC (rev 292) +++ web/wordpresscsw/wp-content/themes/opencsw/home.php 2011-02-18 16:57:58 UTC (rev 293) @@ -77,7 +77,7 @@ - +
    @@ -96,7 +96,7 @@
    - +
    This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Fri Feb 18 19:04:17 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Fri, 18 Feb 2011 18:04:17 +0000 Subject: [csw-devel] SF.net SVN: gar:[13376] csw/mgar/pkg/lang-python/supybot/trunk Message-ID: Revision: 13376 http://gar.svn.sourceforge.net/gar/?rev=13376&view=rev Author: skayser Date: 2011-02-18 18:04:17 +0000 (Fri, 18 Feb 2011) Log Message: ----------- lang-python/supybot/trunk: cosmetic changes, split out changelog.CSW handling, update changelow.CSW Modified Paths: -------------- csw/mgar/pkg/lang-python/supybot/trunk/Makefile csw/mgar/pkg/lang-python/supybot/trunk/files/changelog.CSW Modified: csw/mgar/pkg/lang-python/supybot/trunk/Makefile =================================================================== --- csw/mgar/pkg/lang-python/supybot/trunk/Makefile 2011-02-18 16:46:00 UTC (rev 13375) +++ csw/mgar/pkg/lang-python/supybot/trunk/Makefile 2011-02-18 18:04:17 UTC (rev 13376) @@ -12,10 +12,10 @@ plugins providing around 400 actual commands. endef -SPKG_SOURCEURL = http://supybot.com/ +VENDOR_URL = http://supybot.com/ MASTER_SITES = $(SF_MIRRORS) -DISTNAME = Supybot-$(VERSION) -DISTFILES = $(DISTNAME).tar.gz +DISTFILES = $(DISTNAME).tar.gz +DISTNAME = Supybot-$(VERSION) ARCHALL = 1 RUNTIME_DEP_PKGS = CSWpysqlite CSWtwisted @@ -30,7 +30,13 @@ post-install-modulated: MANDEST=$(DESTDIR)$(mandir)/man1 post-install-modulated: ginstall -d $(DOCDEST) - cp $(FILEDIR)/changelog.CSW $(DOCDEST) -cp $(addprefix $(WORKSRC)/, $(DOCS)) $(DOCDEST) ginstall -d $(MANDEST) && cp $(WORKSRC)/docs/man/* $(MANDEST) @$(MAKECOOKIE) + +# Install changelog.CSW +post-merge: $(foreach P,$(_PKG_SPECS),install-changelog-$P) +install-changelog-%: + ginstall -D $(FILEDIR)/changelog.CSW \ + $(PKGROOT)$(docdir)/$(call catalogname,$*)/changelog.CSW + @$(MAKECOOKIE) Modified: csw/mgar/pkg/lang-python/supybot/trunk/files/changelog.CSW =================================================================== --- csw/mgar/pkg/lang-python/supybot/trunk/files/changelog.CSW 2011-02-18 16:46:00 UTC (rev 13375) +++ csw/mgar/pkg/lang-python/supybot/trunk/files/changelog.CSW 2011-02-18 18:04:17 UTC (rev 13376) @@ -1,5 +1,5 @@ -supybot (0.83.4.1,REV=2009.09.24) +supybot (0.83.4.1,REV=2011.02.18) * Initial release. - -- Sebastian Kayser Thu, 24 Sep 2009 21:24:03 +0200 + -- Sebastian Kayser Fri, 18 Feb 2011 19:00:12 +0100 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Feb 18 19:07:51 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 18 Feb 2011 18:07:51 +0000 Subject: [csw-devel] SF.net SVN: gar:[13377] csw/mgar/pkg/wmf/trunk/Makefile Message-ID: Revision: 13377 http://gar.svn.sourceforge.net/gar/?rev=13377&view=rev Author: dmichelsen Date: 2011-02-18 18:07:50 +0000 (Fri, 18 Feb 2011) Log Message: ----------- libwmf: Add overrides Modified Paths: -------------- csw/mgar/pkg/wmf/trunk/Makefile Modified: csw/mgar/pkg/wmf/trunk/Makefile =================================================================== --- csw/mgar/pkg/wmf/trunk/Makefile 2011-02-18 18:04:17 UTC (rev 13376) +++ csw/mgar/pkg/wmf/trunk/Makefile 2011-02-18 18:07:50 UTC (rev 13377) @@ -64,11 +64,17 @@ PACKAGES += CSWlibwmfdevel CATALOGNAME_CSWlibwmfdevel = libwmf_devel +# This is a legacy name +CHECKPKG_OVERRIDES_CSWlibwmfdevel += catalogname-does-not-match-pkgname|pkgname=CSWlibwmfdevel|catalogname=libwmf_devel|expected-catalogname=libwmfdevel SPKG_DESC_CSWlibwmfdevel = Transitional package as contents moved to CSWlibwmf-dev PKGFILES_CSWlibwmfdevel = NOFILES ARCHALL_CSWlibwmfdevel = 1 +# Come on, it has no files +CHECKPKG_OVERRIDES_CSWlibwmfdevel += archall-devel-package RUNTIME_DEP_PKGs_CSWlibwmfdevel = CSWlibwmf-dev +PACKAGES += CSWlibwmf-dev +CATALOGNAME_CSWlibwmf-dev = libwmf_dev SPKG_DESC_CSWlibwmf-dev += Library and tools for manipulating Windows metafiles - developer package PKGFILES_CSWlibwmf-dev = $(PKGFILES_DEVEL) RUNTIME_DEP_PKGS_CSWlibwmf-dev += CSWlibwmflite0-2-7 @@ -76,18 +82,24 @@ PACKAGES += CSWlibwmfdoc CATALOGNAME_CSWlibwmfdoc = libwmf_doc +# This is a legacy name +CHECKPKG_OVERRIDES_CSWlibwmfdoc += catalogname-does-not-match-pkgname|pkgname=CSWlibwmfdoc|catalogname=libwmf_doc|expected-catalogname=libwmfdoc SPKG_DESC_CSWlibwmfdoc += Library and tools for manipulating Windows metafiles - documentation PKGFILES_CSWlibwmfdoc = $(sharedstatedir)/doc/.* ARCHALL_CSWlibwmfdoc = 1 PACKAGES += CSWwmffonts CATALOGNAME_CSWwmffonts = wmf_fonts +# This is a legacy name +CHECKPKG_OVERRIDES_CSWwmffonts += catalogname-does-not-match-pkgname|pkgname=CSWwmffonts|catalogname=wmf_fonts|expected-catalogname=wmffonts SPKG_DESC_CSWwmffonts += Library and tools for manipulating Windows metafiles - fonts PKGFILES_CSWwmffonts = $(sharedstatedir)/libwmf/fonts/.* ARCHALL_CSWwmffonts = 1 PACKAGES += CSWlibwmfgtk CATALOGNAME_CSWlibwmfgtk = libwmf_gtk +# This is a legacy package name +CHECKPKG_OVERRIDES_CSWlibwmfgtk += catalogname-does-not-match-pkgname|pkgname=CSWlibwmfgtk|catalogname=libwmf_gtk|expected-catalogname=libwmfgtk SPKG_DESC_CSWlibwmfgtk += Library and tools for manipulating Windows metafiles - GTK loader PKGFILES_CSWlibwmfgtk = $(libdir).*/io-wmf.so RUNTIME_DEP_PKGS_CSWlibwmfgtk += CSWggettextrt @@ -120,6 +132,11 @@ # default fontpath for unix systems = /usr/share/fonts/truetype # Are our fonts picked up correctly? -CHECKPKG_OVERRIDES_CSWlibwmfdevel += file-with-bad-content|/usr/share|root/opt/csw/include/libwmf/gd/gd.h +CHECKPKG_OVERRIDES_CSWlibwmf-dev += file-with-bad-content|/usr/share|root/opt/csw/include/libwmf/gd/gd.h +CHECKPKG_OVERRIDES_CSWlibwmf0-2-7 += file-with-bad-content|/usr/share|root/opt/csw/lib/libwmf-0.2.so.7.1.0 +CHECKPKG_OVERRIDES_CSWlibwmf0-2-7 += file-with-bad-content|/usr/share|root/opt/csw/lib/sparcv9/libwmf-0.2.so.7.1.0 +# These are just docs +CHECKPKG_OVERRIDES_CSWlibwmfdoc += file-with-bad-content + include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Fri Feb 18 19:13:00 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Fri, 18 Feb 2011 18:13:00 +0000 Subject: [csw-devel] SF.net SVN: gar:[13378] csw/mgar/pkg/java/ajcio/trunk Message-ID: Revision: 13378 http://gar.svn.sourceforge.net/gar/?rev=13378&view=rev Author: wbonnet Date: 2011-02-18 18:13:00 +0000 (Fri, 18 Feb 2011) Log Message: ----------- java/io upgrade to 2.0.1 Modified Paths: -------------- csw/mgar/pkg/java/ajcio/trunk/Makefile csw/mgar/pkg/java/ajcio/trunk/checksums Modified: csw/mgar/pkg/java/ajcio/trunk/Makefile =================================================================== --- csw/mgar/pkg/java/ajcio/trunk/Makefile 2011-02-18 18:07:50 UTC (rev 13377) +++ csw/mgar/pkg/java/ajcio/trunk/Makefile 2011-02-18 18:13:00 UTC (rev 13378) @@ -1,5 +1,5 @@ SHORTNAME = io -VERSION = 1.4 +VERSION = 2.0.1 NAME = commons-$(SHORTNAME) CATEGORIES = java @@ -11,15 +11,24 @@ # Use jakarta sources MASTER_SITES = http://apache.cict.fr/commons/$(SHORTNAME)/binaries/ -UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*)(?:-bin*).tar.gz +# Defines two packages, lib and doc +PACKAGES = CSWajcio CSWajciodoc + +# Package architecture is ALL (pure java) +ARCHALL = 1 + +CATALOGNAME_CSWajcio = commons_io +CATALOGNAME_CSWajciodoc = commons_io_doc + +LICENSE = LICENSE.txt + +CHECKPKG_OVERRIDES_CSWajcio += catalogname-does-not-match-pkgname|pkgname=CSWajcio|catalogname=commons_io|expected-catalogname=ajcio +CHECKPKG_OVERRIDES_CSWajciodoc += catalogname-does-not-match-pkgname|pkgname=CSWajciodoc|catalogname=commons_io_doc|expected-catalogname=ajciodoc + # Set archive filename DISTFILES = $(NAME)-$(VERSION)-bin.tar.gz -# Defines two packages, lib and doc -DISTFILES += $(call admfiles,CSWajcio,) -DISTFILES += $(call admfiles,CSWajciodoc,) - # Defines package description SPKG_DESC_CSWajcio = $(DESCRIPTION) SPKG_DESC_CSWajciodoc = $(DESCRIPTION) documentation package @@ -28,7 +37,6 @@ # RUNTIME_DEP_PKGS_CSWajcio = No dependency # Defines package content -PKGFILES_CSWajcio = $(prefix)/share/doc/$(NAME)/License.txt PKGFILES_CSWajcio += $(prefix)/share/java/.* # Defines custom steps since java libs do not use autotools @@ -45,10 +53,9 @@ @ginstall -d $(DESTDIR)$(datadir)/java @gcp -fp $(WORKSRC)/$(DISTNAME)/$(NAME)-$(VERSION).jar $(DESTDIR)$(datadir)/java @( cd $(DESTDIR)$(datadir)/java ; \ - ln -s $(NAME)-$(VERSION).jar $(NAME)-1.jar ; \ + ln -s $(NAME)-$(VERSION).jar $(NAME)-2.0.jar ; \ + ln -s $(NAME)-$(VERSION).jar $(NAME)-2.jar ; \ ln -s $(NAME)-$(VERSION).jar $(NAME).jar ) @ginstall -d $(DESTDIR)$(datadir)/doc/$(NAME) - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License.txt - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License-documentation.txt @gcp -frp $(WORKSRC)/$(DISTNAME)/docs/* $(DESTDIR)$(datadir)/doc/$(NAME) @$(MAKECOOKIE) Modified: csw/mgar/pkg/java/ajcio/trunk/checksums =================================================================== --- csw/mgar/pkg/java/ajcio/trunk/checksums 2011-02-18 18:07:50 UTC (rev 13377) +++ csw/mgar/pkg/java/ajcio/trunk/checksums 2011-02-18 18:13:00 UTC (rev 13378) @@ -1,3 +1 @@ -2cef2d863797d4f06ea447199da56648 download/commons-io-1.4-bin.tar.gz -5d5b95a8cde69870e2f598c69eb3ec0a download/CSWajcio.gspec -2448b5c0a4ba74bd43ab5875ca47572a download/CSWajciodoc.gspec +4f2c26f9d80f89d15939619cc8524f78 commons-io-2.0.1-bin.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Fri Feb 18 19:19:35 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Fri, 18 Feb 2011 18:19:35 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[294] ircbot Message-ID: Revision: 294 http://opencsw.svn.sourceforge.net/opencsw/?rev=294&view=rev Author: skayser Date: 2011-02-18 18:19:35 +0000 (Fri, 18 Feb 2011) Log Message: ----------- ircbot: add bot instance setup helper Added Paths: ----------- ircbot/add-instance.sh Property Changed: ---------------- ircbot/ Property changes on: ircbot ___________________________________________________________________ Added: svn:ignore + *.bak Added: ircbot/add-instance.sh =================================================================== --- ircbot/add-instance.sh (rev 0) +++ ircbot/add-instance.sh 2011-02-18 18:19:35 UTC (rev 294) @@ -0,0 +1,17 @@ +#!/bin/bash +# +# add-instance.sh [channel]: +# Create a supybot configuration based on example-bot.conf +# + +[ $# -lt 1 ] && { echo "Usage: $0 [channel]"; exit 1; } + +BOTNAME=$1 +CHANNEL=${2:-} + +sed \ + -e "s,^\(supybot.nick:\).*,\1 $BOTNAME," \ + -e "s,^\(supybot.networks.freenode.channels:\).*,\1 $CHANNEL," \ + example-bot.conf >> $BOTNAME.conf + +echo "Your bot is setup. To run it, execute: supybot $BOTNAME.conf" Property changes on: ircbot/add-instance.sh ___________________________________________________________________ Added: svn:executable + * This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Fri Feb 18 19:24:58 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Fri, 18 Feb 2011 18:24:58 +0000 Subject: [csw-devel] SF.net SVN: gar:[13379] csw/mgar/pkg/lang-python/supybot/trunk/Makefile Message-ID: Revision: 13379 http://gar.svn.sourceforge.net/gar/?rev=13379&view=rev Author: skayser Date: 2011-02-18 18:24:57 +0000 (Fri, 18 Feb 2011) Log Message: ----------- lang-python/supybot/trunk: added license file and checkpkg overrides Modified Paths: -------------- csw/mgar/pkg/lang-python/supybot/trunk/Makefile Modified: csw/mgar/pkg/lang-python/supybot/trunk/Makefile =================================================================== --- csw/mgar/pkg/lang-python/supybot/trunk/Makefile 2011-02-18 18:13:00 UTC (rev 13378) +++ csw/mgar/pkg/lang-python/supybot/trunk/Makefile 2011-02-18 18:24:57 UTC (rev 13379) @@ -16,6 +16,7 @@ MASTER_SITES = $(SF_MIRRORS) DISTFILES = $(DISTNAME).tar.gz DISTNAME = Supybot-$(VERSION) +LICENSE = LICENSE ARCHALL = 1 RUNTIME_DEP_PKGS = CSWpysqlite CSWtwisted @@ -23,6 +24,12 @@ EXTRA_PAX_ARGS = '-s,ChangeLog$$,changelog,p' TEST_SCRIPTS = +CHECKPKG_OVERRIDES_CSWsupybot += pkgname-does-not-start-with-CSWpy- +CHECKPKG_OVERRIDES_CSWsupybot += catalogname-does-not-start-with-py_ +CHECKPKG_OVERRIDES_CSWsupybot += surplus-dependency|CSWtwisted +CHECKPKG_OVERRIDES_CSWsupybot += surplus-dependency|CSWpython +CHECKPKG_OVERRIDES_CSWsupybot += surplus-dependency|CSWpysqlite + include gar/category.mk post-install-modulated: DOCDEST=$(DESTDIR)$(docdir)/$(NAME) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sat Feb 19 02:56:02 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sat, 19 Feb 2011 01:56:02 +0000 Subject: [csw-devel] SF.net SVN: gar:[13380] csw/mgar/pkg/java/ajclang/trunk Message-ID: Revision: 13380 http://gar.svn.sourceforge.net/gar/?rev=13380&view=rev Author: wbonnet Date: 2011-02-19 01:56:01 +0000 (Sat, 19 Feb 2011) Log Message: ----------- java/lang update to 2.6 Modified Paths: -------------- csw/mgar/pkg/java/ajclang/trunk/Makefile csw/mgar/pkg/java/ajclang/trunk/checksums Modified: csw/mgar/pkg/java/ajclang/trunk/Makefile =================================================================== --- csw/mgar/pkg/java/ajclang/trunk/Makefile 2011-02-18 18:24:57 UTC (rev 13379) +++ csw/mgar/pkg/java/ajclang/trunk/Makefile 2011-02-19 01:56:01 UTC (rev 13380) @@ -1,5 +1,5 @@ SHORTNAME = lang -VERSION = 2.4 +VERSION = 2.6 NAME = commons-$(SHORTNAME) CATEGORIES = java @@ -11,15 +11,21 @@ # Use jakarta sources MASTER_SITES = http://apache.cict.fr/commons/$(SHORTNAME)/binaries/ -UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*)(-bin*).tar.gz # Set archive filename DISTFILES = $(NAME)-$(VERSION)-bin.tar.gz # Defines two packages, lib and doc -DISTFILES += $(call admfiles,CSWajclang,) -DISTFILES += $(call admfiles,CSWajclangdoc,) +PACKAGES = CSWajclang CSWajclangdoc +# Package architecture is ALL (pure java) +ARCHALL = 1 + +CATALOGNAME_CSWajclang = commons_lang +CATALOGNAME_CSWajclangdoc = commons_lang_doc + +LICENSE = LICENSE.txt + # Defines package description SPKG_DESC_CSWajclang = $(DESCRIPTION) SPKG_DESC_CSWajclangdoc = $(DESCRIPTION) documentation package @@ -27,8 +33,10 @@ # Defines dependencies RUNTIME_DEP_PKGS_CSWajclang = CSWajcconfig +CHECKPKG_OVERRIDES_CSWajclang += catalogname-does-not-match-pkgname|pkgname=CSWajclang|catalogname=commons_lang|expected-catalogname=ajclang +CHECKPKG_OVERRIDES_CSWajclangdoc += catalogname-does-not-match-pkgname|pkgname=CSWajclangdoc|catalogname=commons_lang_doc|expected-catalogname=ajclangdoc + # Defines package content -PKGFILES_CSWajclang = $(prefix)/share/doc/$(NAME)/License.txt PKGFILES_CSWajclang += $(prefix)/share/java/.* # Defines custom steps since java libs do not use autotools @@ -48,7 +56,5 @@ ln -s $(NAME)-$(VERSION).jar $(NAME)-2.jar ; \ ln -s $(NAME)-$(VERSION).jar $(NAME).jar ) @ginstall -d $(DESTDIR)$(datadir)/doc/$(NAME) - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License.txt - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License-documentation.txt @gcp -frp $(WORKSRC)/$(DISTNAME)/apidocs/* $(DESTDIR)$(datadir)/doc/$(NAME) @$(MAKECOOKIE) Modified: csw/mgar/pkg/java/ajclang/trunk/checksums =================================================================== --- csw/mgar/pkg/java/ajclang/trunk/checksums 2011-02-18 18:24:57 UTC (rev 13379) +++ csw/mgar/pkg/java/ajclang/trunk/checksums 2011-02-19 01:56:01 UTC (rev 13380) @@ -1,3 +1 @@ -5ff5d890e46021a2dbd77caba80f90f2 download/commons-lang-2.4-bin.tar.gz -4cbc407e39410177a18ae06e9c421923 download/CSWajclang.gspec -c5b33b5a694a837ebf14f7d33deadc84 download/CSWajclangdoc.gspec +444075803459bffebfb5e28877861d23 commons-lang-2.6-bin.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sat Feb 19 03:03:13 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sat, 19 Feb 2011 02:03:13 +0000 Subject: [csw-devel] SF.net SVN: gar:[13381] csw/mgar/pkg/java/ajclogging/trunk/Makefile Message-ID: Revision: 13381 http://gar.svn.sourceforge.net/gar/?rev=13381&view=rev Author: wbonnet Date: 2011-02-19 02:03:13 +0000 (Sat, 19 Feb 2011) Log Message: ----------- java/logging fix makefile Modified Paths: -------------- csw/mgar/pkg/java/ajclogging/trunk/Makefile Modified: csw/mgar/pkg/java/ajclogging/trunk/Makefile =================================================================== --- csw/mgar/pkg/java/ajclogging/trunk/Makefile 2011-02-19 01:56:01 UTC (rev 13380) +++ csw/mgar/pkg/java/ajclogging/trunk/Makefile 2011-02-19 02:03:13 UTC (rev 13381) @@ -11,15 +11,24 @@ # Use jakarta sources MASTER_SITES = http://apache.cict.fr/commons/$(SHORTNAME)/binaries/ -UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*)(-bin*).tar.gz # Set archive filename DISTFILES = $(NAME)-$(VERSION)-bin.tar.gz # Defines two packages, lib and doc -DISTFILES += $(call admfiles,CSWajclogging,) -DISTFILES += $(call admfiles,CSWajcloggingdoc,) +PACKAGES = CSWajclogging CSWajcloggingdoc +# Package architecture is ALL (pure java) +ARCHALL = 1 + +CATALOGNAME_CSWajclogging = commons_logging +CATALOGNAME_CSWajcloggingdoc = commons_logging_doc + +LICENSE = LICENSE.txt + +CHECKPKG_OVERRIDES_CSWajclogging += catalogname-does-not-match-pkgname|pkgname=CSWajclogging|catalogname=commons_logging|expected-catalogname=ajclogging +CHECKPKG_OVERRIDES_CSWajcloggingdoc += catalogname-does-not-match-pkgname|pkgname=CSWajcloggingdoc|catalogname=commons_logging_doc|expected-catalogname=ajcloggingdoc + # Defines package description SPKG_DESC_CSWajclogging = $(DESCRIPTION) SPKG_DESC_CSWajcloggingdoc = $(DESCRIPTION) documentation package @@ -28,7 +37,6 @@ RUNTIME_DEP_PKGS_CSWajclogging = CSWlog4j # Defines package content -PKGFILES_CSWajclogging = $(prefix)/share/doc/$(NAME)/License.txt PKGFILES_CSWajclogging += $(prefix)/share/java/.* # Defines custom steps since java libs do not use autotools @@ -49,7 +57,5 @@ ln -s $(NAME)-$(VERSION).jar $(NAME)-1.jar ; \ ln -s $(NAME)-$(VERSION).jar $(NAME).jar ) @ginstall -d $(DESTDIR)$(datadir)/doc/$(NAME) - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License.txt - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License-documentation.txt @gcp -frp $(WORKSRC)/$(DISTNAME)/site/* $(DESTDIR)$(datadir)/doc/$(NAME) @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sat Feb 19 03:14:30 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sat, 19 Feb 2011 02:14:30 +0000 Subject: [csw-devel] SF.net SVN: gar:[13382] csw/mgar/pkg/java/ajcmath/trunk Message-ID: Revision: 13382 http://gar.svn.sourceforge.net/gar/?rev=13382&view=rev Author: wbonnet Date: 2011-02-19 02:14:30 +0000 (Sat, 19 Feb 2011) Log Message: ----------- java/math updating to 2.1 Modified Paths: -------------- csw/mgar/pkg/java/ajcmath/trunk/Makefile csw/mgar/pkg/java/ajcmath/trunk/checksums Modified: csw/mgar/pkg/java/ajcmath/trunk/Makefile =================================================================== --- csw/mgar/pkg/java/ajcmath/trunk/Makefile 2011-02-19 02:03:13 UTC (rev 13381) +++ csw/mgar/pkg/java/ajcmath/trunk/Makefile 2011-02-19 02:14:30 UTC (rev 13382) @@ -1,5 +1,5 @@ SHORTNAME = math -VERSION = 1.2 +VERSION = 2.1 NAME = commons-$(SHORTNAME) CATEGORIES = java @@ -11,15 +11,24 @@ # Use jakarta sources MASTER_SITES = http://apache.cict.fr/commons/$(SHORTNAME)/binaries/ -UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*)(-bin*).tar.gz # Set archive filename DISTFILES = $(NAME)-$(VERSION).tar.gz # Defines two packages, lib and doc -DISTFILES += $(call admfiles,CSWajcmath,) -DISTFILES += $(call admfiles,CSWajcmathdoc,) +PACKAGES = CSWajcmath CSWajcmathdoc +# Package architecture is ALL (pure java) +ARCHALL = 1 + +CATALOGNAME_CSWajcmath = commons_math +CATALOGNAME_CSWajcmathdoc = commons_math_doc + +LICENSE = LICENSE.txt + +CHECKPKG_OVERRIDES_CSWajcmath += catalogname-does-not-match-pkgname|pkgname=CSWajcmath|catalogname=commons_math|expected-catalogname=ajcmath +CHECKPKG_OVERRIDES_CSWajcmathdoc += catalogname-does-not-match-pkgname|pkgname=CSWajcmathdoc|catalogname=commons_math_doc|expected-catalogname=ajcmathdoc + # Defines package description SPKG_DESC_CSWajcmath = $(DESCRIPTION) SPKG_DESC_CSWajcmathdoc = $(DESCRIPTION) documentation package @@ -28,7 +37,6 @@ RUNTIME_DEP_PKGS_CSWajcmath = CSWajcdiscovery # Defines package content -PKGFILES_CSWajcmath = $(prefix)/share/doc/$(NAME)/License.txt PKGFILES_CSWajcmath += $(prefix)/share/java/.* # Defines custom steps since java libs do not use autotools @@ -45,10 +53,8 @@ @ginstall -d $(DESTDIR)$(datadir)/java @gcp -fp $(WORKSRC)/$(DISTNAME)/$(NAME)-$(VERSION).jar $(DESTDIR)$(datadir)/java @( cd $(DESTDIR)$(datadir)/java ; \ - ln -s $(NAME)-$(VERSION).jar $(NAME)-1.jar ; \ + ln -s $(NAME)-$(VERSION).jar $(NAME)-2.jar ; \ ln -s $(NAME)-$(VERSION).jar $(NAME).jar ) @ginstall -d $(DESTDIR)$(datadir)/doc/$(NAME) - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License.txt - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License-documentation.txt @gcp -frp $(WORKSRC)/$(DISTNAME)/docs/* $(DESTDIR)$(datadir)/doc/$(NAME) @$(MAKECOOKIE) Modified: csw/mgar/pkg/java/ajcmath/trunk/checksums =================================================================== --- csw/mgar/pkg/java/ajcmath/trunk/checksums 2011-02-19 02:03:13 UTC (rev 13381) +++ csw/mgar/pkg/java/ajcmath/trunk/checksums 2011-02-19 02:14:30 UTC (rev 13382) @@ -1,3 +1 @@ -6296081b9b9c0f3f7469565a96454a35 download/commons-math-1.2.tar.gz -7299a462f2b113ab49bf7820db254da5 download/CSWajcmath.gspec -399e3dab33c386cc7e5799855aea0738 download/CSWajcmathdoc.gspec +96114338b7e3b36c3e79bce26ff5827a commons-math-2.1.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sat Feb 19 03:27:42 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sat, 19 Feb 2011 02:27:42 +0000 Subject: [csw-devel] SF.net SVN: gar:[13383] csw/mgar/pkg/java/ajcnet/trunk Message-ID: Revision: 13383 http://gar.svn.sourceforge.net/gar/?rev=13383&view=rev Author: wbonnet Date: 2011-02-19 02:27:41 +0000 (Sat, 19 Feb 2011) Log Message: ----------- java/net upgrade to 2.2 Modified Paths: -------------- csw/mgar/pkg/java/ajcnet/trunk/Makefile csw/mgar/pkg/java/ajcnet/trunk/checksums Modified: csw/mgar/pkg/java/ajcnet/trunk/Makefile =================================================================== --- csw/mgar/pkg/java/ajcnet/trunk/Makefile 2011-02-19 02:14:30 UTC (rev 13382) +++ csw/mgar/pkg/java/ajcnet/trunk/Makefile 2011-02-19 02:27:41 UTC (rev 13383) @@ -1,5 +1,5 @@ SHORTNAME = net -VERSION = 2.0 +VERSION = 2.2 NAME = commons-$(SHORTNAME) CATEGORIES = java @@ -11,24 +11,32 @@ # Use jakarta sources MASTER_SITES = http://apache.cict.fr/commons/$(SHORTNAME)/binaries/ -UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*)(-bin*).tar.gz # Set archive filename -DISTFILES = $(NAME)-$(VERSION).tar.gz +DISTFILES = $(NAME)-$(VERSION)-bin.tar.gz # Defines two packages, lib and doc -DISTFILES += $(call admfiles,CSWajcnet,) -DISTFILES += $(call admfiles,CSWajcnetdoc,) +PACKAGES = CSWajcnet CSWajcnetdoc +# Package architecture is ALL (pure java) +ARCHALL = 1 + +CATALOGNAME_CSWajcnet = commons_net +CATALOGNAME_CSWajcnetdoc = commons_net_doc + +LICENSE = LICENSE.txt + +CHECKPKG_OVERRIDES_CSWajcnetdoc += catalogname-does-not-match-pkgname|pkgname=CSWajcnetdoc|catalogname=commons_net_doc|expected-catalogname=ajcnetdoc +CHECKPKG_OVERRIDES_CSWajcnet += catalogname-does-not-match-pkgname|pkgname=CSWajcnet|catalogname=commons_net|expected-catalogname=ajcnet + # Defines package description SPKG_DESC_CSWajcnet = $(DESCRIPTION) SPKG_DESC_CSWajcnetdoc = $(DESCRIPTION) documentation package # Defines dependencies -RUNTIME_DEP_PKGS_CSWajcnet = CSWajclogging CSWajccollect CSWajcbeanutils +RUNTIME_DEP_PKGS_CSWajcnet = CSWajclogging CSWajccollect CSWajcbeanutils # Defines package content -PKGFILES_CSWajcnet = $(prefix)/share/doc/$(NAME)/License.txt PKGFILES_CSWajcnet += $(prefix)/share/java/.* # Defines custom steps since java libs do not use autotools @@ -48,7 +56,5 @@ ln -s $(NAME)-$(VERSION).jar $(NAME)-2.jar ; \ ln -s $(NAME)-$(VERSION).jar $(NAME).jar ) @ginstall -d $(DESTDIR)$(datadir)/doc/$(NAME) - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License.txt - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License-documentation.txt @gcp -frp $(WORKSRC)/$(DISTNAME)/apidocs/* $(DESTDIR)$(datadir)/doc/$(NAME) @$(MAKECOOKIE) Modified: csw/mgar/pkg/java/ajcnet/trunk/checksums =================================================================== --- csw/mgar/pkg/java/ajcnet/trunk/checksums 2011-02-19 02:14:30 UTC (rev 13382) +++ csw/mgar/pkg/java/ajcnet/trunk/checksums 2011-02-19 02:27:41 UTC (rev 13383) @@ -1,3 +1 @@ -52fee591a8be0688a57af64ade1af237 download/commons-net-2.0.tar.gz -82bf2124f0409750525f68e7075c9fee download/CSWajcnet.gspec -b5b88f3af8255f933204a1a9f1031f94 download/CSWajcnetdoc.gspec +9da0cd8e4d8d174eb08f5c9d3b9ec2ae commons-net-2.2-bin.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Sat Feb 19 03:26:43 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Sat, 19 Feb 2011 02:26:43 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[295] ircbot Message-ID: Revision: 295 http://opencsw.svn.sourceforge.net/opencsw/?rev=295&view=rev Author: skayser Date: 2011-02-19 02:26:43 +0000 (Sat, 19 Feb 2011) Log Message: ----------- ircbot: added owner setup and path adjustments to add-instance.sh Modified Paths: -------------- ircbot/add-instance.sh Added Paths: ----------- ircbot/template.conf Removed Paths: ------------- ircbot/example-bot.conf Modified: ircbot/add-instance.sh =================================================================== --- ircbot/add-instance.sh 2011-02-18 18:19:35 UTC (rev 294) +++ ircbot/add-instance.sh 2011-02-19 02:26:43 UTC (rev 295) @@ -4,14 +4,22 @@ # Create a supybot configuration based on example-bot.conf # -[ $# -lt 1 ] && { echo "Usage: $0 [channel]"; exit 1; } +[ $# -ge 1 ] || { echo "Usage: $0 [channel]"; exit 1; } +DIRNAME=`dirname $0` BOTNAME=$1 CHANNEL=${2:-} sed \ -e "s,^\(supybot.nick:\).*,\1 $BOTNAME," \ -e "s,^\(supybot.networks.freenode.channels:\).*,\1 $CHANNEL," \ - example-bot.conf >> $BOTNAME.conf + -e "s,/path/to/bot,$DIRNAME," \ + $DIRNAME/template.conf >> $DIRNAME/$BOTNAME.conf -echo "Your bot is setup. To run it, execute: supybot $BOTNAME.conf" +echo "Adding an owner user to the bot database. You can later identify via +echo "these credentials to the bot on IRC." +echo +supybot-adduser -c owner $DIRNAME/conf/users.conf + +echo "Your bot is setup. To run it, execute:" +echo " supybot $DIRNAME/$BOTNAME.conf" Deleted: ircbot/example-bot.conf =================================================================== --- ircbot/example-bot.conf 2011-02-18 18:19:35 UTC (rev 294) +++ ircbot/example-bot.conf 2011-02-19 02:26:43 UTC (rev 295) @@ -1,1277 +0,0 @@ -### -# Determines the bot's default nick. -# -# Default value: supybot -### -supybot.nick: - -### -# Determines what alternative nicks will be used if the primary nick -# (supybot.nick) isn't available. A %s in this nick is replaced by the -# value of supybot.nick when used. If no alternates are given, or if all -# are used, the supybot.nick will be perturbed appropriately until an -# unused nick is found. -# -# Default value: %s` %s_ -### -supybot.nick.alternates: %s` %s_ - -### -# Determines the bot's ident string, if the server doesn't provide one -# by default. -# -# Default value: supybot -### -supybot.ident: supybot - -### -# Determines the user the bot sends to the server. A standard user using -# the current version of the bot will be generated if this is left -# empty. -# -# Default value: -### -supybot.user: - -### -# Determines what networks the bot will connect to. -# -# Default value: -### -supybot.networks: freenode - -### -# Determines what password will be used on freenode. Yes, we know that -# technically passwords are server-specific and not network-specific, -# but this is the best we can do right now. -# -# Default value: -### -supybot.networks.freenode.password: - -### -# Determines what servers the bot will connect to for freenode. Each -# will be tried in order, wrapping back to the first when the cycle is -# completed. -# -# Default value: -### -supybot.networks.freenode.servers: irc.freenode.net:6667 - -### -# Determines what channels the bot will join only on freenode. -# -# Default value: -### -supybot.networks.freenode.channels: - -### -# Determines what key (if any) will be used to join the channel. -# -# Default value: -### -supybot.networks.freenode.channels.key: - -### -# Determines whether the bot will attempt to connect with SSL sockets to -# freenode. -# -# Default value: False -### -supybot.networks.freenode.ssl: False - -### -# Determines how timestamps printed for human reading should be -# formatted. Refer to the Python documentation for the time module to -# see valid formatting characters for time formats. -# -# Default value: %I:%M %p, %B %d, %Y -### -supybot.reply.format.time: %I:%M %p, %B %d, %Y - -### -# Determines whether elapsed times will be given as "1 day, 2 hours, 3 -# minutes, and 15 seconds" or as "1d 2h 3m 15s". -# -# Default value: False -### -supybot.reply.format.time.elapsed.short: False - -### -# Determines the absolute maximum length of the bot's reply -- no reply -# will be passed through the bot with a length greater than this. -# -# Default value: 131072 -### -supybot.reply.maximumLength: 131072 - -### -# Determines whether the bot will break up long messages into chunks and -# allow users to use the 'more' command to get the remaining chunks. -# -# Default value: True -### -supybot.reply.mores: True - -### -# Determines what the maximum number of chunks (for use with the 'more' -# command) will be. -# -# Default value: 50 -### -supybot.reply.mores.maximum: 50 - -### -# Determines how long individual chunks will be. If set to 0, uses our -# super-tweaked, get-the-most-out-of-an-individual-message default. -# -# Default value: 0 -### -supybot.reply.mores.length: 0 - -### -# Determines how many mores will be sent instantly (i.e., without the -# use of the more command, immediately when they are formed). Defaults -# to 1, which means that a more command will be required for all but the -# first chunk. -# -# Default value: 1 -### -supybot.reply.mores.instant: 1 - -### -# Determines whether the bot will send multi-message replies in a single -# message or in multiple messages. For safety purposes (so the bot is -# less likely to flood) it will normally send everything in a single -# message, using mores if necessary. -# -# Default value: True -### -supybot.reply.oneToOne: True - -### -# Determines whether the bot will reply with an error message when it is -# addressed but not given a valid command. If this value is False, the -# bot will remain silent, as long as no other plugins override the -# normal behavior. -# -# Default value: True -### -supybot.reply.whenNotCommand: True - -### -# Determines whether error messages that result from bugs in the bot -# will show a detailed error message (the uncaught exception) or a -# generic error message. -# -# Default value: False -### -supybot.reply.error.detailed: False - -### -# Determines whether the bot will send error messages to users in -# private. You might want to do this in order to keep channel traffic to -# minimum. This can be used in combination with -# supybot.reply.error.withNotice. -# -# Default value: False -### -supybot.reply.error.inPrivate: False - -### -# Determines whether the bot will send error messages to users via -# NOTICE instead of PRIVMSG. You might want to do this so users can -# ignore NOTICEs from the bot and not have to see error messages; or you -# might want to use it in combination with supybot.reply.errorInPrivate -# so private errors don't open a query window in most IRC clients. -# -# Default value: False -### -supybot.reply.error.withNotice: False - -### -# Determines whether the bot will send an error message to users who -# attempt to call a command for which they do not have the necessary -# capability. You may wish to make this True if you don't want users to -# understand the underlying security system preventing them from running -# certain commands. -# -# Default value: False -### -supybot.reply.error.noCapability: False - -### -# Determines whether the bot will reply privately when replying in a -# channel, rather than replying to the whole channel. -# -# Default value: False -### -supybot.reply.inPrivate: False - -### -# Determines whether the bot will reply with a notice when replying in a -# channel, rather than replying with a privmsg as normal. -# -# Default value: False -### -supybot.reply.withNotice: False - -### -# Determines whether the bot will reply with a notice when it is sending -# a private message, in order not to open a /query window in clients. -# This can be overridden by individual users via the user configuration -# variable reply.withNoticeWhenPrivate. -# -# Default value: False -### -supybot.reply.withNoticeWhenPrivate: False - -### -# Determines whether the bot will always prefix the user's nick to its -# reply to that user's command. -# -# Default value: True -### -supybot.reply.withNickPrefix: True - -### -# Determines whether the bot should attempt to reply to all messages -# even if they don't address it (either via its nick or a prefix -# character). If you set this to True, you almost certainly want to set -# supybot.reply.whenNotCommand to False. -# -# Default value: False -### -supybot.reply.whenNotAddressed: False - -### -# Determines whether the bot will allow you to send channel-related -# commands outside of that channel. Sometimes people find it confusing -# if a channel-related command (like Filter.outfilter) changes the -# behavior of the channel but was sent outside the channel itself. -# -# Default value: False -### -supybot.reply.requireChannelCommandsToBeSentInChannel: False - -### -# Supybot normally replies with the full help whenever a user misuses a -# command. If this value is set to True, the bot will only reply with -# the syntax of the command (the first line of the help) rather than the -# full help. -# -# Default value: False -### -supybot.reply.showSimpleSyntax: False - -### -# Determines what prefix characters the bot will reply to. A prefix -# character is a single character that the bot will use to determine -# what messages are addressed to it; when there are no prefix characters -# set, it just uses its nick. Each character in this string is -# interpreted individually; you can have multiple prefix chars -# simultaneously, and if any one of them is used as a prefix the bot -# will assume it is being addressed. -# -# Default value: -### -supybot.reply.whenAddressedBy.chars: @ - -### -# Determines what strings the bot will reply to when they are at the -# beginning of the message. Whereas prefix.chars can only be one -# character (although there can be many of them), this variable is a -# space-separated list of strings, so you can set something like '@@ ??' -# and the bot will reply when a message is prefixed by either @@ or ??. -# -# Default value: -### -supybot.reply.whenAddressedBy.strings: - -### -# Determines whether the bot will reply when people address it by its -# nick, rather than with a prefix character. -# -# Default value: True -### -supybot.reply.whenAddressedBy.nick: True - -### -# Determines whether the bot will reply when people address it by its -# nick at the end of the message, rather than at the beginning. -# -# Default value: False -### -supybot.reply.whenAddressedBy.nick.atEnd: False - -### -# Determines what extra nicks the bot will always respond to when -# addressed by, even if its current nick is something else. -# -# Default value: -### -supybot.reply.whenAddressedBy.nicks: - -### -# Determines whether the bot will unidentify someone when that person -# changes his or her nick. Setting this to True will cause the bot to -# track such changes. It defaults to False for a little greater -# security. -# -# Default value: False -### -supybot.followIdentificationThroughNickChanges: False - -### -# Determines whether the bot will always join a channel when it's -# invited. If this value is False, the bot will only join a channel if -# the user inviting it has the 'admin' capability (or if it's explicitly -# told to join the channel using the Admin.join command) -# -# Default value: False -### -supybot.alwaysJoinOnInvite: False - -### -# Determines what message the bot replies with when a command succeeded. -# If this configuration variable is empty, no success message will be -# sent. -### -supybot.replies.success: The operation succeeded. - -### -# Determines what error message the bot gives when it wants to be -# ambiguous. -### -supybot.replies.error: An error has occurred and has been logged. Please\ - contact this bot's administrator for more\ - information. - -### -# Determines what message the bot replies with when someone tries to use -# a command that requires being identified or having a password and -# neither credential is correct. -### -supybot.replies.incorrectAuthentication: Your hostmask doesn't match or your\ - password is wrong. - -### -# Determines what error message the bot replies with when someone tries -# to accessing some information on a user the bot doesn't know about. -### -supybot.replies.noUser: I can't find %s in my user database. If you didn't\ - give a user name, then I might not know what your\ - user is, and you'll need to identify before this\ - command might work. - -### -# Determines what error message the bot replies with when someone tries -# to do something that requires them to be registered but they're not -# currently recognized. -### -supybot.replies.notRegistered: You must be registered to use this command.\ - If you are already registered, you must\ - either identify (using the identify command)\ - or add a hostmask matching your current\ - hostmask (using the "hostmask add" command). - -### -# Determines what error message is given when the bot is telling someone -# they aren't cool enough to use the command they tried to use. -### -supybot.replies.noCapability: You don't have the %s capability. If you think\ - that you should have this capability, be sure\ - that you are identified before trying again.\ - The 'whoami' command can tell you if you're\ - identified. - -### -# Determines what generic error message is given when the bot is telling -# someone that they aren't cool enough to use the command they tried to -# use, and the author of the code calling errorNoCapability didn't -# provide an explicit capability for whatever reason. -### -supybot.replies.genericNoCapability: You're missing some capability you\ - need. This could be because you\ - actually possess the anti-capability\ - for the capability that's required of\ - you, or because the channel provides\ - that anti-capability by default, or\ - because the global capabilities include\ - that anti-capability. Or, it could be\ - because the channel or\ - supybot.capabilities.default is set to\ - False, meaning that no commands are\ - allowed unless explicitly in your\ - capabilities. Either way, you can't do\ - what you want to do. - -### -# Determines what error messages the bot sends to people who try to do -# things in a channel that really should be done in private. -### -supybot.replies.requiresPrivacy: That operation cannot be done in a channel. - -### -# Determines what message the bot sends when it thinks you've -# encountered a bug that the developers don't know about. -### -supybot.replies.possibleBug: This may be a bug. If you think it is, please\ - file a bug report at . - -### -# A floating point number of seconds to throttle snarfed URLs, in order -# to prevent loops between two bots snarfing the same URLs and having -# the snarfed URL in the output of the snarf message. -# -# Default value: 10.0 -### -supybot.snarfThrottle: 10.0 - -### -# Determines the number of seconds between running the upkeep function -# that flushes (commits) open databases, collects garbage, and records -# some useful statistics at the debugging level. -# -# Default value: 3600 -### -supybot.upkeepInterval: 3600 - -### -# Determines whether the bot will periodically flush data and -# configuration files to disk. Generally, the only time you'll want to -# set this to False is when you want to modify those configuration files -# by hand and don't want the bot to flush its current version over your -# modifications. Do note that if you change this to False inside the -# bot, your changes won't be flushed. To make this change permanent, you -# must edit the registry yourself. -# -# Default value: True -### -supybot.flush: True - -### -# Determines what characters are valid for quoting arguments to commands -# in order to prevent them from being tokenized. -# -# Default value: " -### -supybot.commands.quotes: " - -### -# Determines whether the bot will allow nested commands, which rule. You -# definitely should keep this on. -# -# Default value: True -### -supybot.commands.nested: True - -### -# Determines what the maximum number of nested commands will be; users -# will receive an error if they attempt commands more nested than this. -# -# Default value: 10 -### -supybot.commands.nested.maximum: 10 - -### -# Supybot allows you to specify what brackets are used for your nested -# commands. Valid sets of brackets include [], <>, and {} (). [] has -# strong historical motivation, as well as being the brackets that don't -# require shift. <> or () might be slightly superior because they cannot -# occur in a nick. If this string is empty, nested commands will not be -# allowed in this channel. -# -# Default value: [] -### -supybot.commands.nested.brackets: [] - -### -# Supybot allows nested commands. Enabling this option will allow nested -# commands with a syntax similar to UNIX pipes, for example: 'bot: foo | -# bar'. -# -# Default value: False -### -supybot.commands.nested.pipeSyntax: False - -### -# Determines what commands have default plugins set, and which plugins -# are set to be the default for each of those commands. -### -supybot.commands.defaultPlugins.addcapability: Admin -supybot.commands.defaultPlugins.capabilities: User -supybot.commands.defaultPlugins.disable: Owner -supybot.commands.defaultPlugins.enable: Owner -supybot.commands.defaultPlugins.help: Misc -supybot.commands.defaultPlugins.ignore: Admin - -### -# Determines what plugins automatically get precedence over all other -# plugins when selecting a default plugin for a command. By default, -# this includes the standard loaded plugins. You probably shouldn't -# change this if you don't know what you're doing; if you do know what -# you're doing, then also know that this set is case-sensitive. -# -# Default value: Plugin Admin Misc User Owner Config Channel -### -supybot.commands.defaultPlugins.importantPlugins: Plugin Admin Misc User Owner Config Channel -supybot.commands.defaultPlugins.list: Misc -supybot.commands.defaultPlugins.reload: Owner -supybot.commands.defaultPlugins.removecapability: Admin -supybot.commands.defaultPlugins.unignore: Admin - -### -# Determines what commands are currently disabled. Such commands will -# not appear in command lists, etc. They will appear not even to exist. -# -# Default value: -### -supybot.commands.disabled: - -### -# Determines whether the bot will defend itself against command- -# flooding. -# -# Default value: True -### -supybot.abuse.flood.command: True - -### -# Determines how many commands users are allowed per minute. If a user -# sends more than this many commands in any 60 second period, he or she -# will be ignored for supybot.abuse.flood.command.punishment seconds. -# -# Default value: 12 -### -supybot.abuse.flood.command.maximum: 12 - -### -# Determines how many seconds the bot will ignore users who flood it -# with commands. -# -# Default value: 300 -### -supybot.abuse.flood.command.punishment: 300 - -### -# Determines whether the bot will defend itself against invalid command- -# flooding. -# -# Default value: True -### -supybot.abuse.flood.command.invalid: True - -### -# Determines how many invalid commands users are allowed per minute. If -# a user sends more than this many invalid commands in any 60 second -# period, he or she will be ignored for -# supybot.abuse.flood.command.invalid.punishment seconds. Typically, -# this value is lower than supybot.abuse.flood.command.maximum, since -# it's far less likely (and far more annoying) for users to flood with -# invalid commands than for them to flood with valid commands. -# -# Default value: 5 -### -supybot.abuse.flood.command.invalid.maximum: 5 - -### -# Determines how many seconds the bot will ignore users who flood it -# with invalid commands. Typically, this value is higher than -# supybot.abuse.flood.command.punishment, since it's far less likely -# (and far more annoying) for users to flood witih invalid commands than -# for them to flood with valid commands. -# -# Default value: 600 -### -supybot.abuse.flood.command.invalid.punishment: 600 - -### -# Determines the default length of time a driver should block waiting -# for input. -# -# Default value: 1.0 -### -supybot.drivers.poll: 1.0 - -### -# Determines what driver module the bot will use. Socket, a simple -# driver based on timeout sockets, is used by default because it's -# simple and stable. Twisted is very stable and simple, and if you've -# got Twisted installed, is probably your best bet. -# -# Default value: default -### -supybot.drivers.module: default - -### -# Determines the maximum time the bot will wait before attempting to -# reconnect to an IRC server. The bot may, of course, reconnect earlier -# if possible. -# -# Default value: 300.0 -### -supybot.drivers.maxReconnectWait: 300.0 - -### -# Determines what directory configuration data is put into. -# -# Default value: conf -### -supybot.directories.conf: /home/ska/tmp/supy-maciej/conf - -### -# Determines what directory data is put into. -# -# Default value: data -### -supybot.directories.data: /home/ska/tmp/supy-maciej/data - -### -# Determines what directory temporary files are put into. -# -# Default value: tmp -### -supybot.directories.data.tmp: /home/ska/tmp/supy-maciej/data/tmp - -### -# Determines what directory backup data is put into. -# -# Default value: backup -### -supybot.directories.backup: /home/ska/tmp/supy-maciej/backup - -### -# Determines what directories the bot will look for plugins in. Accepts -# a comma-separated list of strings. This means that to add another -# directory, you can nest the former value and add a new one. E.g. you -# can say: bot: 'config supybot.directories.plugins [config -# supybot.directories.plugins], newPluginDirectory'. -# -# Default value: -### -supybot.directories.plugins: /home/ska/tmp/supy-maciej/plugins - -### -# Determines what directory the bot will store its logfiles in. -# -# Default value: logs -### -supybot.directories.log: /home/ska/tmp/supy-maciej/logs - -### -# Determines what plugins will be loaded. -# -# Default value: -### -supybot.plugins: Admin Misc User Owner CSW Config Channel RSS - -### -# Determines whether this plugin is loaded by default. -### -supybot.plugins.Admin: True - -### -# Determines whether this plugin is publicly visible. -# -# Default value: True -### -supybot.plugins.Admin.public: True - -### -# Determines whether this plugin is loaded by default. -### -supybot.plugins.CSW: True - -### -# Determines whether this plugin is publicly visible. -# -# Default value: True -### -supybot.plugins.CSW.public: True - -### -# Determines whether this plugin is loaded by default. -### -supybot.plugins.Channel: True - -### -# Determines whether this plugin is publicly visible. -# -# Default value: True -### -supybot.plugins.Channel.public: True - -### -# Determines whether the bot will always try to rejoin a channel -# whenever it's kicked from the channel. -# -# Default value: True -### -supybot.plugins.Channel.alwaysRejoin: True - -### -# Determines whether this plugin is loaded by default. -### -supybot.plugins.Config: True - -### -# Determines whether this plugin is publicly visible. -# -# Default value: True -### -supybot.plugins.Config.public: True - -### -# Determines whether this plugin is loaded by default. -### -supybot.plugins.Misc: True - -### -# Determines whether this plugin is publicly visible. -# -# Default value: True -### -supybot.plugins.Misc.public: True - -### -# Determines whether the bot will list private plugins with the list -# command if given the --private switch. If this is disabled, non-owner -# users should be unable to see what private plugins are loaded. -# -# Default value: True -### -supybot.plugins.Misc.listPrivatePlugins: True - -### -# Determines the format string for timestamps in the Misc.last command. -# Refer to the Python documentation for the time module to see what -# formats are accepted. If you set this variable to the empty string, -# the timestamp will not be shown. -# -# Default value: [%H:%M:%S] -### -supybot.plugins.Misc.timestampFormat: [%H:%M:%S] - -### -# Determines whether or not the timestamp will be included in the output -# of last when it is part of a nested command -# -# Default value: False -### -supybot.plugins.Misc.last.nested.includeTimestamp: False - -### -# Determines whether or not the nick will be included in the output of -# last when it is part of a nested command -# -# Default value: False -### -supybot.plugins.Misc.last.nested.includeNick: False - -### -# Determines whether this plugin is loaded by default. -### -supybot.plugins.Owner: True - -### -# Determines whether this plugin is publicly visible. -# -# Default value: True -### -supybot.plugins.Owner.public: True - -### -# Determines what quit message will be used by default. If the quit -# command is called without a quit message, this will be used. If this -# value is empty, the nick of the person giving the quit command will be -# used. -# -# Default value: -### -supybot.plugins.Owner.quitMsg: - -### -# Determines whether this plugin is loaded by default. -### -supybot.plugins.RSS: True - -### -# Determines whether this plugin is publicly visible. -# -# Default value: True -### -supybot.plugins.RSS.public: True - -### -# Determines whether the bot will bold the title of the feed when it -# announces new news. -# -# Default value: True -### -supybot.plugins.RSS.bold: True - -### -# Determines what string is used to separate headlines in new feeds. -# -# Default value: || -### -supybot.plugins.RSS.headlineSeparator: || - -### -# Determines what prefix is prepended (if any) to the new news item -# announcements made in the channel. -# -# Default value: New news from -### -supybot.plugins.RSS.announcementPrefix: New news from - -### -# Determines which RSS feeds should be announced in the channel; valid -# input is a list of strings (either registered RSS feeds or RSS feed -# URLs) separated by spaces. -# -# Default value: -### -supybot.plugins.RSS.announce: - -### -# Determines whether the bot will list the link along with the title of -# the feed when a feed is automatically announced. -# -# Default value: False -### -supybot.plugins.RSS.announce.showLinks: False - -### -# Indicates how many seconds the bot will wait between retrieving RSS -# feeds; requests made within this period will return cached results. -# -# Default value: 1800 -### -supybot.plugins.RSS.waitPeriod: 1800 - -### -# Determines what feeds should be accessible as commands. -# -# Default value: -### -supybot.plugins.RSS.feeds: - -### -# Determines whether the bot will list the link along with the title of -# the feed when the rss command is called. -# supybot.plugins.RSS.announce.showLinks affects whether links will be -# listed when a feed is automatically announced. -# -# Default value: False -### -supybot.plugins.RSS.showLinks: False - -### -# Determines whether this plugin is loaded by default. -### -supybot.plugins.User: True - -### -# Determines whether this plugin is publicly visible. -# -# Default value: True -### -supybot.plugins.User.public: True - -### -# Determines whether the bot will always load important plugins (Admin, -# Channel, Config, Misc, Owner, and User) regardless of what their -# configured state is. Generally, if these plugins are configured not to -# load, you didn't do it on purpose, and you still want them to load. -# Users who don't want to load these plugins are smart enough to change -# the value of this variable appropriately :) -# -# Default value: True -### -supybot.plugins.alwaysLoadImportant: True - -### -# Determines what databases are available for use. If this value is not -# configured (that is, if its value is empty) then sane defaults will be -# provided. -# -# Default value: anydbm cdb flat pickle -### -supybot.databases: - -### -# Determines what filename will be used for the users database. This -# file will go into the directory specified by the -# supybot.directories.conf variable. -# -# Default value: users.conf -### -supybot.databases.users.filename: users.conf - -### -# Determines how long it takes identification to time out. If the value -# is less than or equal to zero, identification never times out. -# -# Default value: 0 -### -supybot.databases.users.timeoutIdentification: 0 - -### -# Determines whether the bot will allow users to unregister their users. -# This can wreak havoc with already-existing databases, so by default we -# don't allow it. Enable this at your own risk. (Do also note that this -# does not prevent the owner of the bot from using the unregister -# command.) -# -# Default value: False -### -supybot.databases.users.allowUnregistration: False - -### -# Determines what filename will be used for the ignores database. This -# file will go into the directory specified by the -# supybot.directories.conf variable. -# -# Default value: ignores.conf -### -supybot.databases.ignores.filename: ignores.conf - -### -# Determines what filename will be used for the channels database. This -# file will go into the directory specified by the -# supybot.directories.conf variable. -# -# Default value: channels.conf -### -supybot.databases.channels.filename: channels.conf - -### -# Determines whether database-based plugins that can be channel-specific -# will be so. This can be overridden by individual channels. Do note -# that the bot needs to be restarted immediately after changing this -# variable or your db plugins may not work for your channel; also note -# that you may wish to set -# supybot.databases.plugins.channelSpecific.link appropriately if you -# wish to share a certain channel's databases globally. -# -# Default value: True -### -supybot.databases.plugins.channelSpecific: True - -### -# Determines what channel global (non-channel-specific) databases will -# be considered a part of. This is helpful if you've been running -# channel-specific for awhile and want to turn the databases for your -# primary channel into global databases. If -# supybot.databases.plugins.channelSpecific.link.allow prevents linking, -# the current channel will be used. Do note that the bot needs to be -# restarted immediately after changing this variable or your db plugins -# may not work for your channel. -# -# Default value: # -### -supybot.databases.plugins.channelSpecific.link: # - -### -# Determines whether another channel's global (non-channel-specific) -# databases will be allowed to link to this channel's databases. Do note -# that the bot needs to be restarted immediately after changing this -# variable or your db plugins may not work for your channel. -# -# Default value: True -### -supybot.databases.plugins.channelSpecific.link.allow: True - -### -# Determines whether CDB databases will be allowed as a database -# implementation. -# -# Default value: True -### -supybot.databases.types.cdb: True - -### -# Determines how often CDB databases will have their modifications -# flushed to disk. When the number of modified records is greater than -# this part of the number of unmodified records, the database will be -# entirely flushed to disk. -# -# Default value: 0.5 -### -supybot.databases.types.cdb.maximumModifications: 0.5 - -### -# Determines what will be used as the default banmask style. -# -# Default value: host user -### -supybot.protocols.irc.banmask: host user - -### -# Determines whether the bot will strictly follow the RFC; currently -# this only affects what strings are considered to be nicks. If you're -# using a server or a network that requires you to message a nick such -# as services at this.network.server then you you should set this to False. -# -# Default value: False -### -supybot.protocols.irc.strictRfc: False - -### -# Determines what user modes the bot will request from the server when -# it first connects. Many people might choose +i; some networks allow -# +x, which indicates to the auth services on those networks that you -# should be given a fake host. -# -# Default value: -### -supybot.protocols.irc.umodes: - -### -# Determines what vhost the bot will bind to before connecting to the -# IRC server. -# -# Default value: -### -supybot.protocols.irc.vhost: - -### -# Determines how many old messages the bot will keep around in its -# history. Changing this variable will not take effect until the bot is -# restarted. -# -# Default value: 1000 -### -supybot.protocols.irc.maxHistoryLength: 1000 - -### -# A floating point number of seconds to throttle queued messages -- that -# is, messages will not be sent faster than once per throttleTime -# seconds. -# -# Default value: 1.0 -### -supybot.protocols.irc.throttleTime: 1.0 - -### -# Determines whether the bot will send PINGs to the server it's -# connected to in order to keep the connection alive and discover -# earlier when it breaks. Really, this option only exists for debugging -# purposes: you always should make it True unless you're testing some -# strange server issues. -# -# Default value: True -### -supybot.protocols.irc.ping: True - -### -# Determines the number of seconds between sending pings to the server, -# if pings are being sent to the server. -# -# Default value: 120 -### -supybot.protocols.irc.ping.interval: 120 - -### -# Determines whether the bot will refuse duplicate messages to be queued -# for delivery to the server. This is a safety mechanism put in place to -# prevent plugins from sending the same message multiple times; most of -# the time it doesn't matter, unless you're doing certain kinds of -# plugin hacking. -# -# Default value: False -### -supybot.protocols.irc.queuing.duplicates: False - -### -# Determines how many seconds must elapse between JOINs sent to the -# server. -# -# Default value: 0.0 -### -supybot.protocols.irc.queuing.rateLimit.join: 0.0 - -### -# Determines how many bytes the bot will 'peek' at when looking through -# a URL for a doctype or title or something similar. It'll give up after -# it reads this many bytes, even if it hasn't found what it was looking -# for. -# -# Default value: 4096 -### -supybot.protocols.http.peekSize: 4096 - -### -# Determines what proxy all HTTP requests should go through. The value -# should be of the form 'host:port'. -# -# Default value: -### -supybot.protocols.http.proxy: - -### -# Determines whether the bot will ignore unregistered users by default. -# Of course, that'll make it particularly hard for those users to -# register or identify with the bot, but that's your problem to solve. -# -# Default value: False -### -supybot.defaultIgnore: False - -### -# A string that is the external IP of the bot. If this is the empty -# string, the bot will attempt to find out its IP dynamically (though -# sometimes that doesn't work, hence this variable). -# -# Default value: -### -supybot.externalIP: - -### -# Determines what the default timeout for socket objects will be. This -# means that *all* sockets will timeout when this many seconds has gone -# by (unless otherwise modified by the author of the code that uses the -# sockets). -# -# Default value: 10 -### -supybot.defaultSocketTimeout: 10 - -### -# Determines what file the bot should write its PID (Process ID) to, so -# you can kill it more easily. If it's left unset (as is the default) -# then no PID file will be written. A restart is required for changes to -# this variable to take effect. -# -# Default value: -### -supybot.pidFile: - -### -# Determines whether the bot will automatically thread all commands. -# -# Default value: False -### -supybot.debug.threadAllCommands: False - -### -# Determines whether the bot will automatically flush all flushers -# *very* often. Useful for debugging when you don't know what's breaking -# or when, but think that it might be logged. -# -# Default value: False -### -supybot.debug.flushVeryOften: False - -### -# Determines what the bot's logging format will be. The relevant -# documentation on the available formattings is Python's documentation -# on its logging module. -# -# Default value: %(levelname)s %(asctime)s %(name)s %(message)s -### -supybot.log.format: %(levelname)s %(asctime)s %(name)s %(message)s - -### -# Determines what the minimum priority level logged to file will be. Do -# note that this value does not affect the level logged to stdout; for -# that, you should set the value of supybot.log.stdout.level. Valid -# values are DEBUG, INFO, WARNING, ERROR, and CRITICAL, in order of -# increasing priority. -# -# Default value: INFO -### -supybot.log.level: INFO - -### -# Determines the format string for timestamps in logfiles. Refer to the -# Python documentation for the time module to see what formats are -# accepted. If you set this variable to the empty string, times will be -# logged in a simple seconds-since-epoch format. -# -# Default value: %Y-%m-%dT%H:%M:%S -### -supybot.log.timestampFormat: %Y-%m-%dT%H:%M:%S - -### -# Determines whether the bot will log to stdout. -# -# Default value: True -### -supybot.log.stdout: True - -### -# Determines whether the bot's logs to stdout (if enabled) will be -# colorized with ANSI color. -# -# Default value: False -### -supybot.log.stdout.colorized: False - -### -# Determines whether the bot will wrap its logs when they're output to -# stdout. -# -# Default value: True -### -supybot.log.stdout.wrap: True - -### -# Determines what the bot's logging format will be. The relevant -# documentation on the available formattings is Python's documentation -# on its logging module. -# -# Default value: %(levelname)s %(asctime)s %(message)s -### -supybot.log.stdout.format: %(levelname)s %(asctime)s %(message)s - -### -# Determines what the minimum priority level logged will be. Valid -# values are DEBUG, INFO, WARNING, ERROR, and CRITICAL, in order of -# increasing priority. -# -# Default value: INFO -### -supybot.log.stdout.level: INFO - -### -# Determines whether the bot will separate plugin logs into their own -# individual logfiles. -# -# Default value: False -### -supybot.log.plugins.individualLogfiles: False - -### -# Determines what the bot's logging format will be. The relevant -# documentation on the available formattings is Python's documentation -# on its logging module. -# -# Default value: %(levelname)s %(asctime)s %(message)s -### -supybot.log.plugins.format: %(levelname)s %(asctime)s %(message)s - -### -# These are the capabilities that are given to everyone by default. If -# they are normal capabilities, then the user will have to have the -# appropriate anti-capability if you want to override these -# capabilities; if they are anti-capabilities, then the user will have -# to have the actual capability to override these capabilities. See -# docs/CAPABILITIES if you don't understand why these default to what -# they do. -# -# Default value: -owner -admin -trusted -### -supybot.capabilities: -owner -admin -trusted - -### -# Determines whether the bot by default will allow users to have a -# capability. If this is disabled, a user must explicitly have the -# capability for whatever command he wishes to run. -# -# Default value: True -### -supybot.capabilities.default: True Copied: ircbot/template.conf (from rev 294, ircbot/example-bot.conf) =================================================================== --- ircbot/template.conf (rev 0) +++ ircbot/template.conf 2011-02-19 02:26:43 UTC (rev 295) @@ -0,0 +1,1277 @@ +### +# Determines the bot's default nick. +# +# Default value: supybot +### +supybot.nick: + +### +# Determines what alternative nicks will be used if the primary nick +# (supybot.nick) isn't available. A %s in this nick is replaced by the +# value of supybot.nick when used. If no alternates are given, or if all +# are used, the supybot.nick will be perturbed appropriately until an +# unused nick is found. +# +# Default value: %s` %s_ +### +supybot.nick.alternates: %s` %s_ + +### +# Determines the bot's ident string, if the server doesn't provide one +# by default. +# +# Default value: supybot +### +supybot.ident: supybot + +### +# Determines the user the bot sends to the server. A standard user using +# the current version of the bot will be generated if this is left +# empty. +# +# Default value: +### +supybot.user: + +### +# Determines what networks the bot will connect to. +# +# Default value: +### +supybot.networks: freenode + +### +# Determines what password will be used on freenode. Yes, we know that +# technically passwords are server-specific and not network-specific, +# but this is the best we can do right now. +# +# Default value: +### +supybot.networks.freenode.password: + +### +# Determines what servers the bot will connect to for freenode. Each +# will be tried in order, wrapping back to the first when the cycle is +# completed. +# +# Default value: +### +supybot.networks.freenode.servers: irc.freenode.net:6667 + +### +# Determines what channels the bot will join only on freenode. +# +# Default value: +### +supybot.networks.freenode.channels: + +### +# Determines what key (if any) will be used to join the channel. +# +# Default value: +### +supybot.networks.freenode.channels.key: + +### +# Determines whether the bot will attempt to connect with SSL sockets to +# freenode. +# +# Default value: False +### +supybot.networks.freenode.ssl: False + +### +# Determines how timestamps printed for human reading should be +# formatted. Refer to the Python documentation for the time module to +# see valid formatting characters for time formats. +# +# Default value: %I:%M %p, %B %d, %Y +### +supybot.reply.format.time: %I:%M %p, %B %d, %Y + +### +# Determines whether elapsed times will be given as "1 day, 2 hours, 3 +# minutes, and 15 seconds" or as "1d 2h 3m 15s". +# +# Default value: False +### +supybot.reply.format.time.elapsed.short: False + +### +# Determines the absolute maximum length of the bot's reply -- no reply +# will be passed through the bot with a length greater than this. +# +# Default value: 131072 +### +supybot.reply.maximumLength: 131072 + +### +# Determines whether the bot will break up long messages into chunks and +# allow users to use the 'more' command to get the remaining chunks. +# +# Default value: True +### +supybot.reply.mores: True + +### +# Determines what the maximum number of chunks (for use with the 'more' +# command) will be. +# +# Default value: 50 +### +supybot.reply.mores.maximum: 50 + +### +# Determines how long individual chunks will be. If set to 0, uses our +# super-tweaked, get-the-most-out-of-an-individual-message default. +# +# Default value: 0 +### +supybot.reply.mores.length: 0 + +### +# Determines how many mores will be sent instantly (i.e., without the +# use of the more command, immediately when they are formed). Defaults +# to 1, which means that a more command will be required for all but the +# first chunk. +# +# Default value: 1 +### +supybot.reply.mores.instant: 1 + +### +# Determines whether the bot will send multi-message replies in a single +# message or in multiple messages. For safety purposes (so the bot is +# less likely to flood) it will normally send everything in a single +# message, using mores if necessary. +# +# Default value: True +### +supybot.reply.oneToOne: True + +### +# Determines whether the bot will reply with an error message when it is +# addressed but not given a valid command. If this value is False, the +# bot will remain silent, as long as no other plugins override the +# normal behavior. +# +# Default value: True +### +supybot.reply.whenNotCommand: True + +### +# Determines whether error messages that result from bugs in the bot +# will show a detailed error message (the uncaught exception) or a +# generic error message. +# +# Default value: False +### +supybot.reply.error.detailed: False + +### +# Determines whether the bot will send error messages to users in +# private. You might want to do this in order to keep channel traffic to +# minimum. This can be used in combination with +# supybot.reply.error.withNotice. +# +# Default value: False +### +supybot.reply.error.inPrivate: False + +### +# Determines whether the bot will send error messages to users via +# NOTICE instead of PRIVMSG. You might want to do this so users can +# ignore NOTICEs from the bot and not have to see error messages; or you +# might want to use it in combination with supybot.reply.errorInPrivate +# so private errors don't open a query window in most IRC clients. +# +# Default value: False +### +supybot.reply.error.withNotice: False + +### +# Determines whether the bot will send an error message to users who +# attempt to call a command for which they do not have the necessary +# capability. You may wish to make this True if you don't want users to +# understand the underlying security system preventing them from running +# certain commands. +# +# Default value: False +### +supybot.reply.error.noCapability: False + +### +# Determines whether the bot will reply privately when replying in a +# channel, rather than replying to the whole channel. +# +# Default value: False +### +supybot.reply.inPrivate: False + +### +# Determines whether the bot will reply with a notice when replying in a +# channel, rather than replying with a privmsg as normal. +# +# Default value: False +### +supybot.reply.withNotice: False + +### +# Determines whether the bot will reply with a notice when it is sending +# a private message, in order not to open a /query window in clients. +# This can be overridden by individual users via the user configuration +# variable reply.withNoticeWhenPrivate. +# +# Default value: False +### +supybot.reply.withNoticeWhenPrivate: False + +### +# Determines whether the bot will always prefix the user's nick to its +# reply to that user's command. +# +# Default value: True +### +supybot.reply.withNickPrefix: True + +### +# Determines whether the bot should attempt to reply to all messages +# even if they don't address it (either via its nick or a prefix +# character). If you set this to True, you almost certainly want to set +# supybot.reply.whenNotCommand to False. +# +# Default value: False +### +supybot.reply.whenNotAddressed: False + +### +# Determines whether the bot will allow you to send channel-related +# commands outside of that channel. Sometimes people find it confusing +# if a channel-related command (like Filter.outfilter) changes the +# behavior of the channel but was sent outside the channel itself. +# +# Default value: False +### +supybot.reply.requireChannelCommandsToBeSentInChannel: False + +### +# Supybot normally replies with the full help whenever a user misuses a +# command. If this value is set to True, the bot will only reply with +# the syntax of the command (the first line of the help) rather than the +# full help. +# +# Default value: False +### +supybot.reply.showSimpleSyntax: False + +### +# Determines what prefix characters the bot will reply to. A prefix +# character is a single character that the bot will use to determine +# what messages are addressed to it; when there are no prefix characters +# set, it just uses its nick. Each character in this string is +# interpreted individually; you can have multiple prefix chars +# simultaneously, and if any one of them is used as a prefix the bot +# will assume it is being addressed. +# +# Default value: +### +supybot.reply.whenAddressedBy.chars: @ + +### +# Determines what strings the bot will reply to when they are at the +# beginning of the message. Whereas prefix.chars can only be one +# character (although there can be many of them), this variable is a +# space-separated list of strings, so you can set something like '@@ ??' +# and the bot will reply when a message is prefixed by either @@ or ??. +# +# Default value: +### +supybot.reply.whenAddressedBy.strings: + +### +# Determines whether the bot will reply when people address it by its +# nick, rather than with a prefix character. +# +# Default value: True +### +supybot.reply.whenAddressedBy.nick: True + +### +# Determines whether the bot will reply when people address it by its +# nick at the end of the message, rather than at the beginning. +# +# Default value: False +### +supybot.reply.whenAddressedBy.nick.atEnd: False + +### +# Determines what extra nicks the bot will always respond to when +# addressed by, even if its current nick is something else. +# +# Default value: +### +supybot.reply.whenAddressedBy.nicks: + +### +# Determines whether the bot will unidentify someone when that person +# changes his or her nick. Setting this to True will cause the bot to +# track such changes. It defaults to False for a little greater +# security. +# +# Default value: False +### +supybot.followIdentificationThroughNickChanges: False + +### +# Determines whether the bot will always join a channel when it's +# invited. If this value is False, the bot will only join a channel if +# the user inviting it has the 'admin' capability (or if it's explicitly +# told to join the channel using the Admin.join command) +# +# Default value: False +### +supybot.alwaysJoinOnInvite: False + +### +# Determines what message the bot replies with when a command succeeded. +# If this configuration variable is empty, no success message will be +# sent. +### +supybot.replies.success: The operation succeeded. + +### +# Determines what error message the bot gives when it wants to be +# ambiguous. +### +supybot.replies.error: An error has occurred and has been logged. Please\ + contact this bot's administrator for more\ + information. + +### +# Determines what message the bot replies with when someone tries to use +# a command that requires being identified or having a password and +# neither credential is correct. +### +supybot.replies.incorrectAuthentication: Your hostmask doesn't match or your\ + password is wrong. + +### +# Determines what error message the bot replies with when someone tries +# to accessing some information on a user the bot doesn't know about. +### +supybot.replies.noUser: I can't find %s in my user database. If you didn't\ + give a user name, then I might not know what your\ + user is, and you'll need to identify before this\ + command might work. + +### +# Determines what error message the bot replies with when someone tries +# to do something that requires them to be registered but they're not +# currently recognized. +### +supybot.replies.notRegistered: You must be registered to use this command.\ + If you are already registered, you must\ + either identify (using the identify command)\ + or add a hostmask matching your current\ + hostmask (using the "hostmask add" command). + +### +# Determines what error message is given when the bot is telling someone +# they aren't cool enough to use the command they tried to use. +### +supybot.replies.noCapability: You don't have the %s capability. If you think\ + that you should have this capability, be sure\ + that you are identified before trying again.\ + The 'whoami' command can tell you if you're\ + identified. + +### +# Determines what generic error message is given when the bot is telling +# someone that they aren't cool enough to use the command they tried to +# use, and the author of the code calling errorNoCapability didn't +# provide an explicit capability for whatever reason. +### +supybot.replies.genericNoCapability: You're missing some capability you\ + need. This could be because you\ + actually possess the anti-capability\ + for the capability that's required of\ + you, or because the channel provides\ + that anti-capability by default, or\ + because the global capabilities include\ + that anti-capability. Or, it could be\ + because the channel or\ + supybot.capabilities.default is set to\ + False, meaning that no commands are\ + allowed unless explicitly in your\ + capabilities. Either way, you can't do\ + what you want to do. + +### +# Determines what error messages the bot sends to people who try to do +# things in a channel that really should be done in private. +### +supybot.replies.requiresPrivacy: That operation cannot be done in a channel. + +### +# Determines what message the bot sends when it thinks you've +# encountered a bug that the developers don't know about. +### +supybot.replies.possibleBug: This may be a bug. If you think it is, please\ + file a bug report at . + +### +# A floating point number of seconds to throttle snarfed URLs, in order +# to prevent loops between two bots snarfing the same URLs and having +# the snarfed URL in the output of the snarf message. +# +# Default value: 10.0 +### +supybot.snarfThrottle: 10.0 + +### +# Determines the number of seconds between running the upkeep function +# that flushes (commits) open databases, collects garbage, and records +# some useful statistics at the debugging level. +# +# Default value: 3600 +### +supybot.upkeepInterval: 3600 + +### +# Determines whether the bot will periodically flush data and +# configuration files to disk. Generally, the only time you'll want to +# set this to False is when you want to modify those configuration files +# by hand and don't want the bot to flush its current version over your +# modifications. Do note that if you change this to False inside the +# bot, your changes won't be flushed. To make this change permanent, you +# must edit the registry yourself. +# +# Default value: True +### +supybot.flush: True + +### +# Determines what characters are valid for quoting arguments to commands +# in order to prevent them from being tokenized. +# +# Default value: " +### +supybot.commands.quotes: " + +### +# Determines whether the bot will allow nested commands, which rule. You +# definitely should keep this on. +# +# Default value: True +### +supybot.commands.nested: True + +### +# Determines what the maximum number of nested commands will be; users +# will receive an error if they attempt commands more nested than this. +# +# Default value: 10 +### +supybot.commands.nested.maximum: 10 + +### +# Supybot allows you to specify what brackets are used for your nested +# commands. Valid sets of brackets include [], <>, and {} (). [] has +# strong historical motivation, as well as being the brackets that don't +# require shift. <> or () might be slightly superior because they cannot +# occur in a nick. If this string is empty, nested commands will not be +# allowed in this channel. +# +# Default value: [] +### +supybot.commands.nested.brackets: [] + +### +# Supybot allows nested commands. Enabling this option will allow nested +# commands with a syntax similar to UNIX pipes, for example: 'bot: foo | +# bar'. +# +# Default value: False +### +supybot.commands.nested.pipeSyntax: False + +### +# Determines what commands have default plugins set, and which plugins +# are set to be the default for each of those commands. +### +supybot.commands.defaultPlugins.addcapability: Admin +supybot.commands.defaultPlugins.capabilities: User +supybot.commands.defaultPlugins.disable: Owner +supybot.commands.defaultPlugins.enable: Owner +supybot.commands.defaultPlugins.help: Misc +supybot.commands.defaultPlugins.ignore: Admin + +### +# Determines what plugins automatically get precedence over all other +# plugins when selecting a default plugin for a command. By default, +# this includes the standard loaded plugins. You probably shouldn't +# change this if you don't know what you're doing; if you do know what +# you're doing, then also know that this set is case-sensitive. +# +# Default value: Plugin Admin Misc User Owner Config Channel +### +supybot.commands.defaultPlugins.importantPlugins: Plugin Admin Misc User Owner Config Channel +supybot.commands.defaultPlugins.list: Misc +supybot.commands.defaultPlugins.reload: Owner +supybot.commands.defaultPlugins.removecapability: Admin +supybot.commands.defaultPlugins.unignore: Admin + +### +# Determines what commands are currently disabled. Such commands will +# not appear in command lists, etc. They will appear not even to exist. +# +# Default value: +### +supybot.commands.disabled: + +### +# Determines whether the bot will defend itself against command- +# flooding. +# +# Default value: True +### +supybot.abuse.flood.command: True + +### +# Determines how many commands users are allowed per minute. If a user +# sends more than this many commands in any 60 second period, he or she +# will be ignored for supybot.abuse.flood.command.punishment seconds. +# +# Default value: 12 +### +supybot.abuse.flood.command.maximum: 12 + +### +# Determines how many seconds the bot will ignore users who flood it +# with commands. +# +# Default value: 300 +### +supybot.abuse.flood.command.punishment: 300 + +### +# Determines whether the bot will defend itself against invalid command- +# flooding. +# +# Default value: True +### +supybot.abuse.flood.command.invalid: True + +### +# Determines how many invalid commands users are allowed per minute. If +# a user sends more than this many invalid commands in any 60 second +# period, he or she will be ignored for +# supybot.abuse.flood.command.invalid.punishment seconds. Typically, +# this value is lower than supybot.abuse.flood.command.maximum, since +# it's far less likely (and far more annoying) for users to flood with +# invalid commands than for them to flood with valid commands. +# +# Default value: 5 +### +supybot.abuse.flood.command.invalid.maximum: 5 + +### +# Determines how many seconds the bot will ignore users who flood it +# with invalid commands. Typically, this value is higher than +# supybot.abuse.flood.command.punishment, since it's far less likely +# (and far more annoying) for users to flood witih invalid commands than +# for them to flood with valid commands. +# +# Default value: 600 +### +supybot.abuse.flood.command.invalid.punishment: 600 + +### +# Determines the default length of time a driver should block waiting +# for input. +# +# Default value: 1.0 +### +supybot.drivers.poll: 1.0 + +### +# Determines what driver module the bot will use. Socket, a simple +# driver based on timeout sockets, is used by default because it's +# simple and stable. Twisted is very stable and simple, and if you've +# got Twisted installed, is probably your best bet. +# +# Default value: default +### +supybot.drivers.module: default + +### +# Determines the maximum time the bot will wait before attempting to +# reconnect to an IRC server. The bot may, of course, reconnect earlier +# if possible. +# +# Default value: 300.0 +### +supybot.drivers.maxReconnectWait: 300.0 + +### +# Determines what directory configuration data is put into. +# +# Default value: conf +### +supybot.directories.conf: /path/to/bot/conf + +### +# Determines what directory data is put into. +# +# Default value: data +### +supybot.directories.data: /path/to/bot/data + +### +# Determines what directory temporary files are put into. +# +# Default value: tmp +### +supybot.directories.data.tmp: /path/to/bot/data/tmp + +### +# Determines what directory backup data is put into. +# +# Default value: backup +### +supybot.directories.backup: /path/to/bot/backup + +### +# Determines what directories the bot will look for plugins in. Accepts +# a comma-separated list of strings. This means that to add another +# directory, you can nest the former value and add a new one. E.g. you +# can say: bot: 'config supybot.directories.plugins [config +# supybot.directories.plugins], newPluginDirectory'. +# +# Default value: +### +supybot.directories.plugins: /path/to/bot/plugins + +### +# Determines what directory the bot will store its logfiles in. +# +# Default value: logs +### +supybot.directories.log: /path/to/bot/logs + +### +# Determines what plugins will be loaded. +# +# Default value: +### +supybot.plugins: Admin Misc User Owner CSW Config Channel RSS + +### +# Determines whether this plugin is loaded by default. +### +supybot.plugins.Admin: True + +### +# Determines whether this plugin is publicly visible. +# +# Default value: True +### +supybot.plugins.Admin.public: True + +### +# Determines whether this plugin is loaded by default. +### +supybot.plugins.CSW: True + +### +# Determines whether this plugin is publicly visible. +# +# Default value: True +### +supybot.plugins.CSW.public: True + +### +# Determines whether this plugin is loaded by default. +### +supybot.plugins.Channel: True + +### +# Determines whether this plugin is publicly visible. +# +# Default value: True +### +supybot.plugins.Channel.public: True + +### +# Determines whether the bot will always try to rejoin a channel +# whenever it's kicked from the channel. +# +# Default value: True +### +supybot.plugins.Channel.alwaysRejoin: True + +### +# Determines whether this plugin is loaded by default. +### +supybot.plugins.Config: True + +### +# Determines whether this plugin is publicly visible. +# +# Default value: True +### +supybot.plugins.Config.public: True + +### +# Determines whether this plugin is loaded by default. +### +supybot.plugins.Misc: True + +### +# Determines whether this plugin is publicly visible. +# +# Default value: True +### +supybot.plugins.Misc.public: True + +### +# Determines whether the bot will list private plugins with the list +# command if given the --private switch. If this is disabled, non-owner +# users should be unable to see what private plugins are loaded. +# +# Default value: True +### +supybot.plugins.Misc.listPrivatePlugins: True + +### +# Determines the format string for timestamps in the Misc.last command. +# Refer to the Python documentation for the time module to see what +# formats are accepted. If you set this variable to the empty string, +# the timestamp will not be shown. +# +# Default value: [%H:%M:%S] +### +supybot.plugins.Misc.timestampFormat: [%H:%M:%S] + +### +# Determines whether or not the timestamp will be included in the output +# of last when it is part of a nested command +# +# Default value: False +### +supybot.plugins.Misc.last.nested.includeTimestamp: False + +### +# Determines whether or not the nick will be included in the output of +# last when it is part of a nested command +# +# Default value: False +### +supybot.plugins.Misc.last.nested.includeNick: False + +### +# Determines whether this plugin is loaded by default. +### +supybot.plugins.Owner: True + +### +# Determines whether this plugin is publicly visible. +# +# Default value: True +### +supybot.plugins.Owner.public: True + +### +# Determines what quit message will be used by default. If the quit +# command is called without a quit message, this will be used. If this +# value is empty, the nick of the person giving the quit command will be +# used. +# +# Default value: +### +supybot.plugins.Owner.quitMsg: + +### +# Determines whether this plugin is loaded by default. +### +supybot.plugins.RSS: True + +### +# Determines whether this plugin is publicly visible. +# +# Default value: True +### +supybot.plugins.RSS.public: True + +### +# Determines whether the bot will bold the title of the feed when it +# announces new news. +# +# Default value: True +### +supybot.plugins.RSS.bold: True + +### +# Determines what string is used to separate headlines in new feeds. +# +# Default value: || +### +supybot.plugins.RSS.headlineSeparator: || + +### +# Determines what prefix is prepended (if any) to the new news item +# announcements made in the channel. +# +# Default value: New news from +### +supybot.plugins.RSS.announcementPrefix: New news from + +### +# Determines which RSS feeds should be announced in the channel; valid +# input is a list of strings (either registered RSS feeds or RSS feed +# URLs) separated by spaces. +# +# Default value: +### +supybot.plugins.RSS.announce: + +### +# Determines whether the bot will list the link along with the title of +# the feed when a feed is automatically announced. +# +# Default value: False +### +supybot.plugins.RSS.announce.showLinks: False + +### +# Indicates how many seconds the bot will wait between retrieving RSS +# feeds; requests made within this period will return cached results. +# +# Default value: 1800 +### +supybot.plugins.RSS.waitPeriod: 1800 + +### +# Determines what feeds should be accessible as commands. +# +# Default value: +### +supybot.plugins.RSS.feeds: + +### +# Determines whether the bot will list the link along with the title of +# the feed when the rss command is called. +# supybot.plugins.RSS.announce.showLinks affects whether links will be +# listed when a feed is automatically announced. +# +# Default value: False +### +supybot.plugins.RSS.showLinks: False + +### +# Determines whether this plugin is loaded by default. +### +supybot.plugins.User: True + +### +# Determines whether this plugin is publicly visible. +# +# Default value: True +### +supybot.plugins.User.public: True + +### +# Determines whether the bot will always load important plugins (Admin, +# Channel, Config, Misc, Owner, and User) regardless of what their +# configured state is. Generally, if these plugins are configured not to +# load, you didn't do it on purpose, and you still want them to load. +# Users who don't want to load these plugins are smart enough to change +# the value of this variable appropriately :) +# +# Default value: True +### +supybot.plugins.alwaysLoadImportant: True + +### +# Determines what databases are available for use. If this value is not +# configured (that is, if its value is empty) then sane defaults will be +# provided. +# +# Default value: anydbm cdb flat pickle +### +supybot.databases: + +### +# Determines what filename will be used for the users database. This +# file will go into the directory specified by the +# supybot.directories.conf variable. +# +# Default value: users.conf +### +supybot.databases.users.filename: users.conf + +### +# Determines how long it takes identification to time out. If the value +# is less than or equal to zero, identification never times out. +# +# Default value: 0 +### +supybot.databases.users.timeoutIdentification: 0 + +### +# Determines whether the bot will allow users to unregister their users. +# This can wreak havoc with already-existing databases, so by default we +# don't allow it. Enable this at your own risk. (Do also note that this +# does not prevent the owner of the bot from using the unregister +# command.) +# +# Default value: False +### +supybot.databases.users.allowUnregistration: False + +### +# Determines what filename will be used for the ignores database. This +# file will go into the directory specified by the +# supybot.directories.conf variable. +# +# Default value: ignores.conf +### +supybot.databases.ignores.filename: ignores.conf + +### +# Determines what filename will be used for the channels database. This +# file will go into the directory specified by the +# supybot.directories.conf variable. +# +# Default value: channels.conf +### +supybot.databases.channels.filename: channels.conf + +### +# Determines whether database-based plugins that can be channel-specific +# will be so. This can be overridden by individual channels. Do note +# that the bot needs to be restarted immediately after changing this +# variable or your db plugins may not work for your channel; also note +# that you may wish to set +# supybot.databases.plugins.channelSpecific.link appropriately if you +# wish to share a certain channel's databases globally. +# +# Default value: True +### +supybot.databases.plugins.channelSpecific: True + +### +# Determines what channel global (non-channel-specific) databases will +# be considered a part of. This is helpful if you've been running +# channel-specific for awhile and want to turn the databases for your +# primary channel into global databases. If +# supybot.databases.plugins.channelSpecific.link.allow prevents linking, +# the current channel will be used. Do note that the bot needs to be +# restarted immediately after changing this variable or your db plugins +# may not work for your channel. +# +# Default value: # +### +supybot.databases.plugins.channelSpecific.link: # + +### +# Determines whether another channel's global (non-channel-specific) +# databases will be allowed to link to this channel's databases. Do note +# that the bot needs to be restarted immediately after changing this +# variable or your db plugins may not work for your channel. +# +# Default value: True +### +supybot.databases.plugins.channelSpecific.link.allow: True + +### +# Determines whether CDB databases will be allowed as a database +# implementation. +# +# Default value: True +### +supybot.databases.types.cdb: True + +### +# Determines how often CDB databases will have their modifications +# flushed to disk. When the number of modified records is greater than +# this part of the number of unmodified records, the database will be +# entirely flushed to disk. +# +# Default value: 0.5 +### +supybot.databases.types.cdb.maximumModifications: 0.5 + +### +# Determines what will be used as the default banmask style. +# +# Default value: host user +### +supybot.protocols.irc.banmask: host user + +### +# Determines whether the bot will strictly follow the RFC; currently +# this only affects what strings are considered to be nicks. If you're +# using a server or a network that requires you to message a nick such +# as services at this.network.server then you you should set this to False. +# +# Default value: False +### +supybot.protocols.irc.strictRfc: False + +### +# Determines what user modes the bot will request from the server when +# it first connects. Many people might choose +i; some networks allow +# +x, which indicates to the auth services on those networks that you +# should be given a fake host. +# +# Default value: +### +supybot.protocols.irc.umodes: + +### +# Determines what vhost the bot will bind to before connecting to the +# IRC server. +# +# Default value: +### +supybot.protocols.irc.vhost: + +### +# Determines how many old messages the bot will keep around in its +# history. Changing this variable will not take effect until the bot is +# restarted. +# +# Default value: 1000 +### +supybot.protocols.irc.maxHistoryLength: 1000 + +### +# A floating point number of seconds to throttle queued messages -- that +# is, messages will not be sent faster than once per throttleTime +# seconds. +# +# Default value: 1.0 +### +supybot.protocols.irc.throttleTime: 1.0 + +### +# Determines whether the bot will send PINGs to the server it's +# connected to in order to keep the connection alive and discover +# earlier when it breaks. Really, this option only exists for debugging +# purposes: you always should make it True unless you're testing some +# strange server issues. +# +# Default value: True +### +supybot.protocols.irc.ping: True + +### +# Determines the number of seconds between sending pings to the server, +# if pings are being sent to the server. +# +# Default value: 120 +### +supybot.protocols.irc.ping.interval: 120 + +### +# Determines whether the bot will refuse duplicate messages to be queued +# for delivery to the server. This is a safety mechanism put in place to +# prevent plugins from sending the same message multiple times; most of +# the time it doesn't matter, unless you're doing certain kinds of +# plugin hacking. +# +# Default value: False +### +supybot.protocols.irc.queuing.duplicates: False + +### +# Determines how many seconds must elapse between JOINs sent to the +# server. +# +# Default value: 0.0 +### +supybot.protocols.irc.queuing.rateLimit.join: 0.0 + +### +# Determines how many bytes the bot will 'peek' at when looking through +# a URL for a doctype or title or something similar. It'll give up after +# it reads this many bytes, even if it hasn't found what it was looking +# for. +# +# Default value: 4096 +### +supybot.protocols.http.peekSize: 4096 + +### +# Determines what proxy all HTTP requests should go through. The value +# should be of the form 'host:port'. +# +# Default value: +### +supybot.protocols.http.proxy: + +### +# Determines whether the bot will ignore unregistered users by default. +# Of course, that'll make it particularly hard for those users to +# register or identify with the bot, but that's your problem to solve. +# +# Default value: False +### +supybot.defaultIgnore: False + +### +# A string that is the external IP of the bot. If this is the empty +# string, the bot will attempt to find out its IP dynamically (though +# sometimes that doesn't work, hence this variable). +# +# Default value: +### +supybot.externalIP: + +### +# Determines what the default timeout for socket objects will be. This +# means that *all* sockets will timeout when this many seconds has gone +# by (unless otherwise modified by the author of the code that uses the +# sockets). +# +# Default value: 10 +### +supybot.defaultSocketTimeout: 10 + +### +# Determines what file the bot should write its PID (Process ID) to, so +# you can kill it more easily. If it's left unset (as is the default) +# then no PID file will be written. A restart is required for changes to +# this variable to take effect. +# +# Default value: +### +supybot.pidFile: + +### +# Determines whether the bot will automatically thread all commands. +# +# Default value: False +### +supybot.debug.threadAllCommands: False + +### +# Determines whether the bot will automatically flush all flushers +# *very* often. Useful for debugging when you don't know what's breaking +# or when, but think that it might be logged. +# +# Default value: False +### +supybot.debug.flushVeryOften: False + +### +# Determines what the bot's logging format will be. The relevant +# documentation on the available formattings is Python's documentation +# on its logging module. +# +# Default value: %(levelname)s %(asctime)s %(name)s %(message)s +### +supybot.log.format: %(levelname)s %(asctime)s %(name)s %(message)s + +### +# Determines what the minimum priority level logged to file will be. Do +# note that this value does not affect the level logged to stdout; for +# that, you should set the value of supybot.log.stdout.level. Valid +# values are DEBUG, INFO, WARNING, ERROR, and CRITICAL, in order of +# increasing priority. +# +# Default value: INFO +### +supybot.log.level: INFO + +### +# Determines the format string for timestamps in logfiles. Refer to the +# Python documentation for the time module to see what formats are +# accepted. If you set this variable to the empty string, times will be +# logged in a simple seconds-since-epoch format. +# +# Default value: %Y-%m-%dT%H:%M:%S +### +supybot.log.timestampFormat: %Y-%m-%dT%H:%M:%S + +### +# Determines whether the bot will log to stdout. +# +# Default value: True +### +supybot.log.stdout: True + +### +# Determines whether the bot's logs to stdout (if enabled) will be +# colorized with ANSI color. +# +# Default value: False +### +supybot.log.stdout.colorized: False + +### +# Determines whether the bot will wrap its logs when they're output to +# stdout. +# +# Default value: True +### +supybot.log.stdout.wrap: True + +### +# Determines what the bot's logging format will be. The relevant +# documentation on the available formattings is Python's documentation +# on its logging module. +# +# Default value: %(levelname)s %(asctime)s %(message)s +### +supybot.log.stdout.format: %(levelname)s %(asctime)s %(message)s + +### +# Determines what the minimum priority level logged will be. Valid +# values are DEBUG, INFO, WARNING, ERROR, and CRITICAL, in order of +# increasing priority. +# +# Default value: INFO +### +supybot.log.stdout.level: INFO + +### +# Determines whether the bot will separate plugin logs into their own +# individual logfiles. +# +# Default value: False +### +supybot.log.plugins.individualLogfiles: False + +### +# Determines what the bot's logging format will be. The relevant +# documentation on the available formattings is Python's documentation +# on its logging module. +# +# Default value: %(levelname)s %(asctime)s %(message)s +### +supybot.log.plugins.format: %(levelname)s %(asctime)s %(message)s + +### +# These are the capabilities that are given to everyone by default. If +# they are normal capabilities, then the user will have to have the +# appropriate anti-capability if you want to override these +# capabilities; if they are anti-capabilities, then the user will have +# to have the actual capability to override these capabilities. See +# docs/CAPABILITIES if you don't understand why these default to what +# they do. +# +# Default value: -owner -admin -trusted +### +supybot.capabilities: -owner -admin -trusted + +### +# Determines whether the bot by default will allow users to have a +# capability. If this is disabled, a user must explicitly have the +# capability for whatever command he wishes to run. +# +# Default value: True +### +supybot.capabilities.default: True This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Sat Feb 19 03:36:17 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Sat, 19 Feb 2011 02:36:17 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[296] ircbot/add-instance.sh Message-ID: Revision: 296 http://opencsw.svn.sourceforge.net/opencsw/?rev=296&view=rev Author: skayser Date: 2011-02-19 02:36:17 +0000 (Sat, 19 Feb 2011) Log Message: ----------- ircbot: only create user database if none present Modified Paths: -------------- ircbot/add-instance.sh Modified: ircbot/add-instance.sh =================================================================== --- ircbot/add-instance.sh 2011-02-19 02:26:43 UTC (rev 295) +++ ircbot/add-instance.sh 2011-02-19 02:36:17 UTC (rev 296) @@ -16,10 +16,14 @@ -e "s,/path/to/bot,$DIRNAME," \ $DIRNAME/template.conf >> $DIRNAME/$BOTNAME.conf -echo "Adding an owner user to the bot database. You can later identify via -echo "these credentials to the bot on IRC." -echo -supybot-adduser -c owner $DIRNAME/conf/users.conf +if [ ! -f $DIRNAME/conf/users.conf ]; then + echo "No local user database found, creating one with an initial bot owner." + echo "You can later identify with these credentials to the bot on IRC." + echo + supybot-adduser -c owner $DIRNAME/conf/users.conf +fi echo "Your bot is setup. To run it, execute:" +echo echo " supybot $DIRNAME/$BOTNAME.conf" +echo This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sat Feb 19 03:38:41 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sat, 19 Feb 2011 02:38:41 +0000 Subject: [csw-devel] SF.net SVN: gar:[13384] csw/mgar/pkg/java/ajcpool/trunk Message-ID: Revision: 13384 http://gar.svn.sourceforge.net/gar/?rev=13384&view=rev Author: wbonnet Date: 2011-02-19 02:38:40 +0000 (Sat, 19 Feb 2011) Log Message: ----------- java/pool upgrade to 1.5.5 Modified Paths: -------------- csw/mgar/pkg/java/ajcpool/trunk/Makefile csw/mgar/pkg/java/ajcpool/trunk/checksums Modified: csw/mgar/pkg/java/ajcpool/trunk/Makefile =================================================================== --- csw/mgar/pkg/java/ajcpool/trunk/Makefile 2011-02-19 02:27:41 UTC (rev 13383) +++ csw/mgar/pkg/java/ajcpool/trunk/Makefile 2011-02-19 02:38:40 UTC (rev 13384) @@ -1,5 +1,5 @@ SHORTNAME = pool -VERSION = 1.5 +VERSION = 1.5.5 NAME = commons-$(SHORTNAME) CATEGORIES = java @@ -11,7 +11,6 @@ # Use jakarta sources MASTER_SITES = http://apache.cict.fr/commons/$(SHORTNAME)/binaries/ -UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*)(-bin*).tar.gz # Set archive filename DISTFILES = $(NAME)-$(VERSION)-bin.tar.gz @@ -19,24 +18,27 @@ # Defines two packages, lib and doc PACKAGES = CSWajcpool CSWajcpooldoc -ARCHALL_CSWajcpool = 1 -ARCHALL_CSWajcpooldoc = 1 +# Package architecture is ALL (pure java) +ARCHALL = 1 +CATALOGNAME_CSWajcpool = commons_pool +CATALOGNAME_CSWajcpooldoc = commons_pool_doc + +LICENSE = LICENSE.txt + +CHECKPKG_OVERRIDES_CSWajcpooldoc += catalogname-does-not-match-pkgname|pkgname=CSWajcpooldoc|catalogname=commons_pool_doc|expected-catalogname=ajcpooldoc +CHECKPKG_OVERRIDES_CSWajcpool += catalogname-does-not-match-pkgname|pkgname=CSWajcpool|catalogname=commons_pool|expected-catalogname=ajcpool + # Defines package description SPKG_DESC_CSWajcpool = $(DESCRIPTION) SPKG_DESC_CSWajcpooldoc = $(DESCRIPTION) documentation package -CATALOGNAME_CSWajcpool = commons_pool -CATALOGNAME_CSWajcpooldoc = commons_pool_doc - # Defines dependencies RUNTIME_DEP_PKGS_CSWajcpool = CSWajclogging CSWajcdigester # Defines package content PKGFILES_CSWajcpool = $(prefix)/share/java/.* -LICENSE = LICENSE.txt - # Defines custom steps since java libs do not use autotools WORKSRC = $(WORKDIR) @@ -51,6 +53,7 @@ @ginstall -d $(DESTDIR)$(datadir)/java @gcp -fp $(WORKSRC)/$(DISTNAME)/$(NAME)-$(VERSION).jar $(DESTDIR)$(datadir)/java @( cd $(DESTDIR)$(datadir)/java ; \ + ln -s $(NAME)-$(VERSION).jar $(NAME)-1.5.jar ; \ ln -s $(NAME)-$(VERSION).jar $(NAME)-1.jar ; \ ln -s $(NAME)-$(VERSION).jar $(NAME).jar ) @ginstall -d $(DESTDIR)$(datadir)/doc/$(NAME) Modified: csw/mgar/pkg/java/ajcpool/trunk/checksums =================================================================== --- csw/mgar/pkg/java/ajcpool/trunk/checksums 2011-02-19 02:27:41 UTC (rev 13383) +++ csw/mgar/pkg/java/ajcpool/trunk/checksums 2011-02-19 02:38:40 UTC (rev 13384) @@ -1 +1 @@ -a05509a6674ce29317d809d64dfd2987 download/commons-pool-1.5-bin.tar.gz +d6249971b825b6a52c592e192f8fdca8 commons-pool-1.5.5-bin.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sat Feb 19 03:47:59 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sat, 19 Feb 2011 02:47:59 +0000 Subject: [csw-devel] SF.net SVN: gar:[13385] csw/mgar/pkg/java/ajcprimitives/trunk/Makefile Message-ID: Revision: 13385 http://gar.svn.sourceforge.net/gar/?rev=13385&view=rev Author: wbonnet Date: 2011-02-19 02:47:59 +0000 (Sat, 19 Feb 2011) Log Message: ----------- java/primitives fix Makefile Modified Paths: -------------- csw/mgar/pkg/java/ajcprimitives/trunk/Makefile Modified: csw/mgar/pkg/java/ajcprimitives/trunk/Makefile =================================================================== --- csw/mgar/pkg/java/ajcprimitives/trunk/Makefile 2011-02-19 02:38:40 UTC (rev 13384) +++ csw/mgar/pkg/java/ajcprimitives/trunk/Makefile 2011-02-19 02:47:59 UTC (rev 13385) @@ -11,15 +11,24 @@ # Use jakarta sources MASTER_SITES = http://apache.cict.fr/commons/$(SHORTNAME)/binaries/ -UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz # Set archive filename DISTFILES = $(NAME)-$(VERSION).tar.gz # Defines two packages, lib and doc -DISTFILES += $(call admfiles,CSWajcprimitives,) -DISTFILES += $(call admfiles,CSWajcprimitivesdoc,) +PACKAGES = CSWajcprimitives CSWajcprimitivesdoc +# Package architecture is ALL (pure java) +ARCHALL = 1 + +CATALOGNAME_CSWajcprimitives = commons_primitives +CATALOGNAME_CSWajcprimitivesdoc = commons_primit_doc + +LICENSE = LICENSE.txt + +CHECKPKG_OVERRIDES_CSWajcprimitives += catalogname-does-not-match-pkgname|pkgname=CSWajcprimitives|catalogname=commons_primitives|expected-catalogname=ajcprimitives +CHECKPKG_OVERRIDES_CSWajcprimitivesdoc += catalogname-does-not-match-pkgname|pkgname=CSWajcprimitivesdoc|catalogname=commons_primit_doc|expected-catalogname=ajcprimitivesdoc + # Defines package description SPKG_DESC_CSWajcprimitives = $(DESCRIPTION) SPKG_DESC_CSWajcprimitivesdoc = $(DESCRIPTION) documentation package @@ -28,7 +37,6 @@ RUNTIME_DEP_PKGS_CSWajcprimitives = CSWajclogging CSWajccollect CSWajcbeanutils # Defines package content -PKGFILES_CSWajcprimitives = $(prefix)/share/doc/$(NAME)/LICENSE.txt PKGFILES_CSWajcprimitives += $(prefix)/share/java/.* # Defines custom steps since java libs do not use autotools @@ -48,7 +56,5 @@ ln -s $(NAME)-$(VERSION).jar $(NAME)-1.jar ; \ ln -s $(NAME)-$(VERSION).jar $(NAME).jar ) @ginstall -d $(DESTDIR)$(datadir)/doc/$(NAME) - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License.txt - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License-documentation.txt @gcp -frp $(WORKSRC)/$(DISTNAME)/docs/* $(DESTDIR)$(datadir)/doc/$(NAME) @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sat Feb 19 03:50:07 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sat, 19 Feb 2011 02:50:07 +0000 Subject: [csw-devel] SF.net SVN: gar:[13386] csw/mgar/pkg/java/ajcprimitives/trunk/checksums Message-ID: Revision: 13386 http://gar.svn.sourceforge.net/gar/?rev=13386&view=rev Author: wbonnet Date: 2011-02-19 02:50:06 +0000 (Sat, 19 Feb 2011) Log Message: ----------- java/primitives fix Makefile Added Paths: ----------- csw/mgar/pkg/java/ajcprimitives/trunk/checksums Added: csw/mgar/pkg/java/ajcprimitives/trunk/checksums =================================================================== --- csw/mgar/pkg/java/ajcprimitives/trunk/checksums (rev 0) +++ csw/mgar/pkg/java/ajcprimitives/trunk/checksums 2011-02-19 02:50:06 UTC (rev 13386) @@ -0,0 +1 @@ +2ce92656204f2fa63dad6dfa88e1458b commons-primitives-1.0.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sat Feb 19 11:35:00 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sat, 19 Feb 2011 10:35:00 +0000 Subject: [csw-devel] SF.net SVN: gar:[13387] csw/mgar/pkg/java/ajcupload/trunk Message-ID: Revision: 13387 http://gar.svn.sourceforge.net/gar/?rev=13387&view=rev Author: wbonnet Date: 2011-02-19 10:35:00 +0000 (Sat, 19 Feb 2011) Log Message: ----------- java/upload upgrade to 1.2.2 Modified Paths: -------------- csw/mgar/pkg/java/ajcupload/trunk/Makefile csw/mgar/pkg/java/ajcupload/trunk/checksums Modified: csw/mgar/pkg/java/ajcupload/trunk/Makefile =================================================================== --- csw/mgar/pkg/java/ajcupload/trunk/Makefile 2011-02-19 02:50:06 UTC (rev 13386) +++ csw/mgar/pkg/java/ajcupload/trunk/Makefile 2011-02-19 10:35:00 UTC (rev 13387) @@ -1,5 +1,5 @@ SHORTNAME = fileupload -VERSION = 1.2.1 +VERSION = 1.2.2 NAME = commons-$(SHORTNAME) CATEGORIES = java @@ -11,25 +11,33 @@ # Use jakarta sources MASTER_SITES = http://apache.cict.fr/commons/$(SHORTNAME)/binaries/ -UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*)(-bin*).tar.gz # Set archive filename DISTFILES = $(NAME)-$(VERSION)-bin.tar.gz # Defines two packages, lib and doc -DISTFILES += $(call admfiles,CSWajcupload,) -DISTFILES += $(call admfiles,CSWajcuploaddoc,) +PACKAGES = CSWajcpeupload CSWajcuploaddoc +# Package architecture is ALL (pure java) +ARCHALL = 1 + +CATALOGNAME_CSWajcpeupload = commons_upload +CATALOGNAME_CSWajcuploaddoc = commons_upload_doc + +LICENSE = LICENSE.txt + +CHECKPKG_OVERRIDES_CSWajcpeupload += catalogname-does-not-match-pkgname|pkgname=CSWajcpeupload|catalogname=commons_upload|expected-catalogname=ajcpeupload +CHECKPKG_OVERRIDES_CSWajcuploaddoc += catalogname-does-not-match-pkgname|pkgname=CSWajcuploaddoc|catalogname=commons_upload_doc|expected-catalogname=ajcuploaddoc + # Defines package description -SPKG_DESC_CSWajcupload = $(DESCRIPTION) +SPKG_DESC_CSWajcpeupload = $(DESCRIPTION) SPKG_DESC_CSWajcuploaddoc = $(DESCRIPTION) documentation package # Defines dependencies -RUNTIME_DEP_PKGS_CSWajcupload = CSWajclogging CSWajcdigester +RUNTIME_DEP_PKGS_CSWajcpeupload = CSWajclogging CSWajcdigester # Defines package content -PKGFILES_CSWajcupload = $(prefix)/share/doc/$(NAME)/License.txt -PKGFILES_CSWajcupload += $(prefix)/share/java/.* +PKGFILES_CSWajcpeupload += $(prefix)/share/java/.* # Defines custom steps since java libs do not use autotools WORKSRC = $(WORKDIR) @@ -49,7 +57,5 @@ ln -s $(NAME)-$(VERSION).jar $(NAME)-1.jar ; \ ln -s $(NAME)-$(VERSION).jar $(NAME).jar ) @ginstall -d $(DESTDIR)$(datadir)/doc/$(NAME) - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License.txt - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License-documentation.txt @gcp -frp $(WORKSRC)/$(DISTNAME)/site/* $(DESTDIR)$(datadir)/doc/$(NAME) @$(MAKECOOKIE) Modified: csw/mgar/pkg/java/ajcupload/trunk/checksums =================================================================== --- csw/mgar/pkg/java/ajcupload/trunk/checksums 2011-02-19 02:50:06 UTC (rev 13386) +++ csw/mgar/pkg/java/ajcupload/trunk/checksums 2011-02-19 10:35:00 UTC (rev 13387) @@ -1,3 +1 @@ -d8cccd7b9938c17169751ed978265673 download/commons-fileupload-1.2.1-bin.tar.gz -f07adfd3f198606e0ac4a312a8bdeab6 download/CSWajcupload.gspec -f3376106fd0d1ec93bded90deadf84d2 download/CSWajcuploaddoc.gspec +fa280caadb0a31b1658167a26f73b2d6 commons-fileupload-1.2.2-bin.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From idogan23 at users.sourceforge.net Sat Feb 19 11:46:22 2011 From: idogan23 at users.sourceforge.net (idogan23 at users.sourceforge.net) Date: Sat, 19 Feb 2011 10:46:22 +0000 Subject: [csw-devel] SF.net SVN: gar:[13388] csw/mgar/pkg/tomcat6/trunk/files Message-ID: Revision: 13388 http://gar.svn.sourceforge.net/gar/?rev=13388&view=rev Author: idogan23 Date: 2011-02-19 10:46:22 +0000 (Sat, 19 Feb 2011) Log Message: ----------- tomcat6: add LICENSE, change init scripts Modified Paths: -------------- csw/mgar/pkg/tomcat6/trunk/files/cswtomcat6 Added Paths: ----------- csw/mgar/pkg/tomcat6/trunk/files/LICENSE Removed Paths: ------------- csw/mgar/pkg/tomcat6/trunk/files/CSWtomcat6.depend csw/mgar/pkg/tomcat6/trunk/files/CSWtomcat6.gspec csw/mgar/pkg/tomcat6/trunk/files/CSWtomcat6.prototype csw/mgar/pkg/tomcat6/trunk/files/checkinstall csw/mgar/pkg/tomcat6/trunk/files/i.smfno csw/mgar/pkg/tomcat6/trunk/files/i.smfyes csw/mgar/pkg/tomcat6/trunk/files/postinstall csw/mgar/pkg/tomcat6/trunk/files/preinstall csw/mgar/pkg/tomcat6/trunk/files/preremove csw/mgar/pkg/tomcat6/trunk/files/space csw/mgar/pkg/tomcat6/trunk/files/svc-tomcat6 csw/mgar/pkg/tomcat6/trunk/files/tomcat6 csw/mgar/pkg/tomcat6/trunk/files/tomcat6.xml Deleted: csw/mgar/pkg/tomcat6/trunk/files/CSWtomcat6.depend =================================================================== Deleted: csw/mgar/pkg/tomcat6/trunk/files/CSWtomcat6.gspec =================================================================== --- csw/mgar/pkg/tomcat6/trunk/files/CSWtomcat6.gspec 2011-02-19 10:35:00 UTC (rev 13387) +++ csw/mgar/pkg/tomcat6/trunk/files/CSWtomcat6.gspec 2011-02-19 10:46:22 UTC (rev 13388) @@ -1,5 +0,0 @@ -%var bitname tomcat6 -%var pkgname CSWtomcat6 -%var arch all -%include url file://%{PKGLIB}/csw_dyndepend.gspec -%copyright url file://%{WORKSRC}/LICENSE Deleted: csw/mgar/pkg/tomcat6/trunk/files/CSWtomcat6.prototype =================================================================== --- csw/mgar/pkg/tomcat6/trunk/files/CSWtomcat6.prototype 2011-02-19 10:35:00 UTC (rev 13387) +++ csw/mgar/pkg/tomcat6/trunk/files/CSWtomcat6.prototype 2011-02-19 10:46:22 UTC (rev 13388) @@ -1,702 +0,0 @@ -l smfno /etc/rc0.d/K17cswtomcat6=/etc/init.d/cswtomcat6 -l smfno /etc/rc1.d/K17cswtomcat6=/etc/init.d/cswtomcat6 -l smfno /etc/rc2.d/K17cswtomcat6=/etc/init.d/cswtomcat6 -l smfno /etc/rc3.d/S51cswtomcat6=/etc/init.d/cswtomcat6 -l smfno /etc/rcS.d/K17cswtomcat6=/etc/init.d/cswtomcat6 -d smfyes /opt/csw/var/svc 0755 root bin -d smfyes /opt/csw/var/svc/manifest 0755 root bin -d smfyes /opt/csw/var/svc/manifest/network 0755 root bin -f smfyes /opt/csw/var/svc/manifest/network/tomcat6.xml=tomcat6.xml 0644 root bin -d smfyes /opt/csw/lib/svc 0755 root bin -d smfyes /opt/csw/lib/svc/method 0755 root bin -f smfyes /opt/csw/lib/svc/method/svc-tomcat6=svc-tomcat6 0755 root bin -f none /etc/init.d/cswtomcat6 0755 root bin -f none /etc/opt/csw/tomcat6 0644 root bin -s none /etc/rc0.d/K17tomcat6=/etc/init.d/cswtomcat6 -s none /etc/rc1.d/K17tomcat6=/etc/init.d/cswtomcat6 -s none /etc/rc2.d/K17tomcat6=/etc/init.d/cswtomcat6 -s none /etc/rc3.d/S51tomcat6=/etc/init.d/cswtomcat6 -s none /etc/rcS.d/K17tomcat6=/etc/init.d/cswtomcat6 -d none /opt/csw/etc/tomcat6 0755 root bin -d none /opt/csw/etc/tomcat6/conf 0755 tomcat tomcat -f none /opt/csw/etc/tomcat6/conf/catalina.policy.CSW 0640 tomcat tomcat -f none /opt/csw/etc/tomcat6/conf/catalina.properties.CSW 0640 tomcat tomcat -f none /opt/csw/etc/tomcat6/conf/context.xml.CSW 0640 tomcat tomcat -f none /opt/csw/etc/tomcat6/conf/logging.properties.CSW 0640 tomcat tomcat -f none /opt/csw/etc/tomcat6/conf/server.xml.CSW 0640 tomcat tomcat -f none /opt/csw/etc/tomcat6/conf/tomcat-users.xml.CSW 0640 tomcat tomcat -f none /opt/csw/etc/tomcat6/conf/web.xml.CSW 0640 tomcat tomcat -d none /opt/csw/share 0755 root bin -d none /opt/csw/share/tomcat6 0755 root bin -f none /opt/csw/share/tomcat6/LICENSE 0644 root bin -f none /opt/csw/share/tomcat6/NOTICE 0644 root bin -f none /opt/csw/share/tomcat6/RELEASE-NOTES 0644 root bin -f none /opt/csw/share/tomcat6/RUNNING.txt 0644 root bin -d none /opt/csw/share/tomcat6/bin 0755 root bin -f none /opt/csw/share/tomcat6/bin/bootstrap.jar 0644 root bin -f none /opt/csw/share/tomcat6/bin/catalina-tasks.xml 0644 root bin -f none /opt/csw/share/tomcat6/bin/catalina.bat 0644 root bin -f none /opt/csw/share/tomcat6/bin/catalina.sh 0755 root bin -f none /opt/csw/share/tomcat6/bin/commons-daemon.jar 0644 root bin -f none /opt/csw/share/tomcat6/bin/cpappend.bat 0644 root bin -f none /opt/csw/share/tomcat6/bin/digest.bat 0644 root bin -f none /opt/csw/share/tomcat6/bin/digest.sh 0755 root bin -f none /opt/csw/share/tomcat6/bin/jsvc.tar.gz 0644 root bin -f none /opt/csw/share/tomcat6/bin/service.bat 0644 root bin -f none /opt/csw/share/tomcat6/bin/setclasspath.bat 0644 root bin -f none /opt/csw/share/tomcat6/bin/setclasspath.sh 0755 root bin -f none /opt/csw/share/tomcat6/bin/shutdown.bat 0644 root bin -f none /opt/csw/share/tomcat6/bin/shutdown.sh 0755 root bin -f none /opt/csw/share/tomcat6/bin/startup.bat 0644 root bin -f none /opt/csw/share/tomcat6/bin/startup.sh 0755 root bin -f none /opt/csw/share/tomcat6/bin/tomcat-juli.jar 0644 root bin -f none /opt/csw/share/tomcat6/bin/tomcat-native.tar.gz 0644 root bin -f none /opt/csw/share/tomcat6/bin/tomcat6.exe 0644 root bin -f none /opt/csw/share/tomcat6/bin/tomcat6w.exe 0644 root bin -f none /opt/csw/share/tomcat6/bin/tool-wrapper.bat 0644 root bin -f none /opt/csw/share/tomcat6/bin/tool-wrapper.sh 0755 root bin -f none /opt/csw/share/tomcat6/bin/version.bat 0644 root bin -f none /opt/csw/share/tomcat6/bin/version.sh 0755 root bin -s none /opt/csw/share/tomcat6/conf=/opt/csw/etc/tomcat6/conf -d none /opt/csw/share/tomcat6/lib 0755 root bin -f none /opt/csw/share/tomcat6/lib/annotations-api.jar 0644 root bin -f none /opt/csw/share/tomcat6/lib/catalina-ant.jar 0644 root bin -f none /opt/csw/share/tomcat6/lib/catalina-ha.jar 0644 root bin -f none /opt/csw/share/tomcat6/lib/catalina-tribes.jar 0644 root bin -f none /opt/csw/share/tomcat6/lib/catalina.jar 0644 root bin -f none /opt/csw/share/tomcat6/lib/el-api.jar 0644 root bin -f none /opt/csw/share/tomcat6/lib/jasper-el.jar 0644 root bin -f none /opt/csw/share/tomcat6/lib/jasper-jdt.jar 0644 root bin -f none /opt/csw/share/tomcat6/lib/jasper.jar 0644 root bin -f none /opt/csw/share/tomcat6/lib/jsp-api.jar 0644 root bin -f none /opt/csw/share/tomcat6/lib/servlet-api.jar 0644 root bin -f none /opt/csw/share/tomcat6/lib/tomcat-coyote.jar 0644 root bin -f none /opt/csw/share/tomcat6/lib/tomcat-dbcp.jar 0644 root bin -f none /opt/csw/share/tomcat6/lib/tomcat-i18n-es.jar 0644 root bin -f none /opt/csw/share/tomcat6/lib/tomcat-i18n-fr.jar 0644 root bin -f none /opt/csw/share/tomcat6/lib/tomcat-i18n-ja.jar 0644 root bin -s none /opt/csw/share/tomcat6/logs=/var/opt/csw/tomcat6/logs -s none /opt/csw/share/tomcat6/temp=/var/opt/csw/tomcat6/temp -d none /opt/csw/share/tomcat6/webapps 0755 root bin -d none /opt/csw/share/tomcat6/webapps/ROOT 0755 root bin -f none /opt/csw/share/tomcat6/webapps/ROOT/RELEASE-NOTES.txt 0644 root bin -d none /opt/csw/share/tomcat6/webapps/ROOT/WEB-INF 0755 root bin -f none /opt/csw/share/tomcat6/webapps/ROOT/WEB-INF/web.xml 0644 root bin -f none /opt/csw/share/tomcat6/webapps/ROOT/asf-logo-wide.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/ROOT/build.xml 0644 root bin -f none /opt/csw/share/tomcat6/webapps/ROOT/favicon.ico 0644 root bin -f none /opt/csw/share/tomcat6/webapps/ROOT/index.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/ROOT/index.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/ROOT/tomcat-power.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/ROOT/tomcat.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/ROOT/tomcat.svg 0644 root bin -d none /opt/csw/share/tomcat6/webapps/docs 0755 root bin -f none /opt/csw/share/tomcat6/webapps/docs/BUILDING.txt 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/NOTICE 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/RELEASE-NOTES.txt 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/RUNNING.txt 0644 root bin -d none /opt/csw/share/tomcat6/webapps/docs/WEB-INF 0755 root bin -f none /opt/csw/share/tomcat6/webapps/docs/WEB-INF/web.xml 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/aio.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/docs/api 0755 root bin -f none /opt/csw/share/tomcat6/webapps/docs/api/index.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/docs/appdev 0755 root bin -f none /opt/csw/share/tomcat6/webapps/docs/appdev/build.xml.txt 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/appdev/deployment.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/appdev/index.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/appdev/installation.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/appdev/introduction.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/docs/appdev/printer 0755 root bin -f none /opt/csw/share/tomcat6/webapps/docs/appdev/printer/deployment.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/docs/appdev/printer/docs 0755 root bin -d none /opt/csw/share/tomcat6/webapps/docs/appdev/printer/docs/appdev 0755 root bin -f none /opt/csw/share/tomcat6/webapps/docs/appdev/printer/docs/appdev/build.xml.txt 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/appdev/printer/docs/appdev/web.xml.txt 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/appdev/printer/index.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/appdev/printer/installation.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/appdev/printer/introduction.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/appdev/printer/processes.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/appdev/printer/source.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/appdev/processes.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/docs/appdev/sample 0755 root bin -f none /opt/csw/share/tomcat6/webapps/docs/appdev/sample/build.xml 0644 root bin -d none /opt/csw/share/tomcat6/webapps/docs/appdev/sample/docs 0755 root bin -f none /opt/csw/share/tomcat6/webapps/docs/appdev/sample/docs/README.txt 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/appdev/sample/index.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/appdev/sample/sample.war 0644 root bin -d none /opt/csw/share/tomcat6/webapps/docs/appdev/sample/src 0755 root bin -d none /opt/csw/share/tomcat6/webapps/docs/appdev/sample/src/mypackage 0755 root bin -f none /opt/csw/share/tomcat6/webapps/docs/appdev/sample/src/mypackage/Hello.java 0644 root bin -d none /opt/csw/share/tomcat6/webapps/docs/appdev/sample/web 0755 root bin -d none /opt/csw/share/tomcat6/webapps/docs/appdev/sample/web/WEB-INF 0755 root bin -f none /opt/csw/share/tomcat6/webapps/docs/appdev/sample/web/WEB-INF/web.xml 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/appdev/sample/web/hello.jsp 0644 root bin -d none /opt/csw/share/tomcat6/webapps/docs/appdev/sample/web/images 0755 root bin -f none /opt/csw/share/tomcat6/webapps/docs/appdev/sample/web/images/tomcat.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/appdev/sample/web/index.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/appdev/source.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/appdev/web.xml.txt 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/apr.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/docs/architecture 0755 root bin -f none /opt/csw/share/tomcat6/webapps/docs/architecture/index.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/architecture/overview.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/docs/architecture/printer 0755 root bin -f none /opt/csw/share/tomcat6/webapps/docs/architecture/printer/index.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/architecture/printer/overview.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/architecture/printer/requestProcess.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/architecture/printer/startup.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/docs/architecture/requestProcess 0755 root bin -f none /opt/csw/share/tomcat6/webapps/docs/architecture/requestProcess.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/architecture/requestProcess/requestProcess.pdf 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/architecture/requestProcess/roseModel.mdl 0644 root bin -d none /opt/csw/share/tomcat6/webapps/docs/architecture/startup 0755 root bin -f none /opt/csw/share/tomcat6/webapps/docs/architecture/startup.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/architecture/startup/serverStartup.pdf 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/architecture/startup/serverStartup.txt 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/balancer-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/building.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/cgi-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/changelog.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/class-loader-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/cluster-howto.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/docs/config 0755 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/ajp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/cluster-channel.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/cluster-deployer.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/cluster-interceptor.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/cluster-listener.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/cluster-manager.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/cluster-membership.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/cluster-receiver.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/cluster-sender.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/cluster-valve.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/cluster.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/context.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/engine.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/executor.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/globalresources.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/host.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/http.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/index.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/loader.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/manager.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/docs/config/printer 0755 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/ajp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/cluster-channel.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/cluster-deployer.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/cluster-interceptor.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/cluster-listener.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/cluster-manager.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/cluster-membership.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/cluster-receiver.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/cluster-sender.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/cluster-valve.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/cluster.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/context.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/engine.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/executor.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/globalresources.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/host.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/http.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/index.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/loader.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/manager.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/realm.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/resources.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/server.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/service.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/systemprops.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/printer/valve.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/realm.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/resources.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/server.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/service.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/systemprops.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/config/valve.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/connectors.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/default-servlet.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/deployer-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/developers.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/extras.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/docs/funcspecs 0755 root bin -f none /opt/csw/share/tomcat6/webapps/docs/funcspecs/fs-admin-apps.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/funcspecs/fs-admin-objects.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/funcspecs/fs-admin-opers.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/funcspecs/fs-default.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/funcspecs/fs-invoker.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/funcspecs/fs-jdbc-realm.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/funcspecs/fs-jndi-realm.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/funcspecs/fs-memory-realm.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/funcspecs/index.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/funcspecs/mbean-names.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/docs/funcspecs/printer 0755 root bin -f none /opt/csw/share/tomcat6/webapps/docs/funcspecs/printer/fs-admin-apps.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/funcspecs/printer/fs-admin-objects.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/funcspecs/printer/fs-admin-opers.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/funcspecs/printer/fs-default.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/funcspecs/printer/fs-invoker.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/funcspecs/printer/fs-jdbc-realm.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/funcspecs/printer/fs-jndi-realm.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/funcspecs/printer/fs-memory-realm.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/funcspecs/printer/index.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/funcspecs/printer/mbean-names.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/html-manager-howto.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/docs/images 0755 root bin -f none /opt/csw/share/tomcat6/webapps/docs/images/add.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/images/asf-logo.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/images/code.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/images/design.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/images/docs.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/images/fix.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/images/printer.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/images/tomcat.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/images/tomcat.svg 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/images/update.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/images/void.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/index.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/introduction.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/jasper-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/jndi-datasource-examples-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/jndi-resources-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/logging.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/manager-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/maven-jars.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/mbeans-descriptor-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/monitoring.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/docs/printer 0755 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/BUILDING.txt 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/NOTICE 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/RUNNING.txt 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/aio.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/apr.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/balancer-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/building.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/cgi-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/changelog.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/class-loader-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/cluster-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/connectors.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/default-servlet.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/deployer-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/developers.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/extras.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/html-manager-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/index.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/introduction.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/jasper-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/jndi-datasource-examples-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/jndi-resources-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/logging.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/manager-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/maven-jars.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/mbeans-descriptor-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/monitoring.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/proxy-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/realm-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/security-manager-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/setup.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/ssi-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/ssl-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/virtual-hosting-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/printer/windows-service-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/proxy-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/realm-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/security-manager-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/setup.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/ssi-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/ssl-howto.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/docs/tribes 0755 root bin -f none /opt/csw/share/tomcat6/webapps/docs/tribes/faq.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/tribes/introduction.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/tribes/setup.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/virtual-hosting-howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/docs/windows-service-howto.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples 0755 root bin -d none /opt/csw/share/tomcat6/webapps/examples/WEB-INF 0755 root bin -d none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/CookieExample.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/CookieExample.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/HelloWorldExample.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/HelloWorldExample.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/LocalStrings.properties 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/LocalStrings_en.properties 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/LocalStrings_es.properties 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/LocalStrings_fr.properties 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/LocalStrings_pt.properties 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/RequestHeaderExample.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/RequestHeaderExample.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/RequestInfoExample.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/RequestInfoExample.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/RequestParamExample.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/RequestParamExample.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/SessionExample.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/SessionExample.java 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/cal 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/cal/Entries.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/cal/Entries.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/cal/Entry.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/cal/Entry.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/cal/JspCalendar.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/cal/JspCalendar.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/cal/TableBean.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/cal/TableBean.java 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/chat 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/chat/ChatServlet$MessageSender.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/chat/ChatServlet.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/chat/ChatServlet.java 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/checkbox 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/checkbox/CheckTest.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/checkbox/CheckTest.java 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/colors 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/colors/ColorGameBean.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/colors/ColorGameBean.java 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/compressionFilters 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/compressionFilters/CompressionFilter.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/compressionFilters/CompressionFilter.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/compressionFilters/CompressionFilterTestServlet.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/compressionFilters/CompressionFilterTestServlet.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/compressionFilters/CompressionResponseStream.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/compressionFilters/CompressionResponseStream.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/compressionFilters/CompressionServletResponseWrapper.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/compressionFilters/CompressionServletResponseWrapper.java 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/dates 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/dates/JspCalendar.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/dates/JspCalendar.java 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/error 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/error/Smart.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/error/Smart.java 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/examples 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/examples/ExampleTagBase.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/examples/ExampleTagBase.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/examples/FooTag.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/examples/FooTag.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/examples/FooTagExtraInfo.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/examples/FooTagExtraInfo.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/examples/LogTag.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/examples/LogTag.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/examples/ShowSource.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/examples/ShowSource.java 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/filters 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/filters/ExampleFilter.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/filters/ExampleFilter.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/filters/RequestDumperFilter.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/filters/RequestDumperFilter.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/filters/SetCharacterEncodingFilter.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/filters/SetCharacterEncodingFilter.java 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/jsp2 0755 root bin -d none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/jsp2/examples 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/jsp2/examples/BookBean.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/jsp2/examples/BookBean.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/jsp2/examples/FooBean.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/jsp2/examples/FooBean.java 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/jsp2/examples/el 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/jsp2/examples/el/Functions.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/jsp2/examples/el/Functions.java 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/EchoAttributesTag.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/EchoAttributesTag.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/FindBookSimpleTag.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/FindBookSimpleTag.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/HelloWorldSimpleTag.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/HelloWorldSimpleTag.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/RepeatSimpleTag.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/RepeatSimpleTag.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/ShuffleSimpleTag.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/ShuffleSimpleTag.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/TileSimpleTag.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/jsp2/examples/simpletag/TileSimpleTag.java 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/listeners 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/listeners/ContextListener.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/listeners/ContextListener.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/listeners/SessionListener.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/listeners/SessionListener.java 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/num 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/num/NumberGuessBean.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/num/NumberGuessBean.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/servletToJsp.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/servletToJsp.java 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/sessions 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/sessions/DummyCart.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/sessions/DummyCart.java 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/util 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/util/HTMLFilter.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/util/HTMLFilter.java 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/validators 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/validators/DebugValidator.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/classes/validators/DebugValidator.java 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/jsp 0755 root bin -d none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/jsp/applet 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/jsp/applet/Clock2.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/jsp/debug-taglib.tld 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/jsp/example-taglib.tld 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/jsp2 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/jsp2/jsp2-example-taglib.tld 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/lib 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/lib/jstl.jar 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/lib/standard.jar 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/tags 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/tags/displayProducts.tag 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/tags/helloWorld.tag 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/tags/panel.tag 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/tags/xhtmlbasic.tag 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/WEB-INF/web.xml 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/index.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp 0755 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/cal 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/cal/Entries.java.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/cal/Entry.java.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/cal/JspCalendar.java.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/cal/TableBean.java.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/cal/cal1.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/cal/cal1.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/cal/cal2.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/cal/cal2.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/cal/calendar.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/cal/login.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/chat 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/chat/chat.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/chat/chat.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/chat/login.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/chat/login.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/chat/post.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/chat/post.jsp.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/checkbox 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/checkbox/CheckTest.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/checkbox/check.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/checkbox/checkresult.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/checkbox/checkresult.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/checkbox/cresult.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/colors 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/colors/ColorGameBean.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/colors/clr.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/colors/colors.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/colors/colrs.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/colors/colrs.jsp.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/dates 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/dates/date.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/dates/date.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/dates/date.jsp.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/error 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/error/er.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/error/err.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/error/err.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/error/error.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/error/errorpge.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/error/errorpge.jsp.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/forward 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/forward/forward.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/forward/forward.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/forward/fwd.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/forward/one.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/forward/one.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/forward/two.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/images 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/images/code.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/images/execute.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/images/read.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/images/return.gif 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/include 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/include/foo.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/include/foo.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/include/foo.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/include/inc.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/include/include.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/include/include.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/index.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2 0755 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/el 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/el/Functions.java.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/el/basic-arithmetic.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/el/basic-arithmetic.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/el/basic-arithmetic.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/el/basic-comparisons.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/el/basic-comparisons.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/el/basic-comparisons.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/el/functions.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/el/functions.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/el/functions.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/el/implicit-objects.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/el/implicit-objects.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/el/implicit-objects.jsp.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/jspattribute 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/jspattribute/FooBean.java.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/jspattribute/HelloWorldSimpleTag.java.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/jspattribute/ShuffleSimpleTag.java.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/jspattribute/TileSimpleTag.java.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/jspattribute/jspattribute.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/jspattribute/jspattribute.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/jspattribute/jspattribute.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/jspattribute/shuffle.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/jspattribute/shuffle.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/jspattribute/shuffle.jsp.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/jspx 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/jspx/basic.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/jspx/basic.jspx 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/jspx/basic.jspx.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/jspx/svgexample.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/jspx/textRotate.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/jspx/textRotate.jpg 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/jspx/textRotate.jspx 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/jspx/textRotate.jspx.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/misc 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/misc/EchoAttributesTag.java.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/misc/coda.jspf 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/misc/coda.jspf.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/misc/config.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/misc/config.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/misc/config.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/misc/dynamicattrs.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/misc/dynamicattrs.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/misc/dynamicattrs.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/misc/prelude.jspf 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/misc/prelude.jspf.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/simpletag 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/simpletag/BookBean.java.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/simpletag/FindBookSimpleTag.java.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/simpletag/Functions.java.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/simpletag/HelloWorldSimpleTag.java.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/simpletag/RepeatSimpleTag.java.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/simpletag/book.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/simpletag/book.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/simpletag/book.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/simpletag/hello.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/simpletag/hello.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/simpletag/hello.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/simpletag/repeat.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/simpletag/repeat.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/simpletag/repeat.jsp.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/tagfiles 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/tagfiles/displayProducts.tag.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/tagfiles/hello.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/tagfiles/hello.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/tagfiles/hello.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/tagfiles/helloWorld.tag.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/tagfiles/panel.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/tagfiles/panel.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/tagfiles/panel.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/tagfiles/panel.tag.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/tagfiles/products.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/tagfiles/products.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/tagfiles/products.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsp2/tagfiles/xhtmlbasic.tag.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/jsptoserv 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsptoserv/hello.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsptoserv/hello.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsptoserv/jsptoservlet.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsptoserv/jsptoservlet.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsptoserv/jts.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/jsptoserv/servletToJsp.java.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/num 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/num/numguess.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/num/numguess.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/num/numguess.jsp.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/plugin 0755 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/plugin/applet 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/plugin/applet/Clock2.class 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/plugin/applet/Clock2.java 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/plugin/plugin.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/plugin/plugin.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/plugin/plugin.jsp.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/security 0755 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/security/protected 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/security/protected/error.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/security/protected/error.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/security/protected/index.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/security/protected/index.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/security/protected/login.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/security/protected/login.jsp.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/sessions 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/sessions/DummyCart.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/sessions/carts.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/sessions/carts.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/sessions/carts.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/sessions/crt.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/simpletag 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/simpletag/foo.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/simpletag/foo.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/simpletag/foo.jsp.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/snp 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/snp/snoop.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/snp/snoop.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/snp/snoop.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/source.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/source.jsp.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/tagplugin 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/tagplugin/choose.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/tagplugin/choose.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/tagplugin/choose.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/tagplugin/foreach.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/tagplugin/foreach.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/tagplugin/foreach.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/tagplugin/howto.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/tagplugin/if.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/tagplugin/if.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/tagplugin/if.jsp.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/tagplugin/notes.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/jsp/xml 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/xml/xml.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/xml/xml.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/jsp/xml/xml.jsp.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/servlets 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/servlets/cookies.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/servlets/helloworld.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/examples/servlets/images 0755 root bin -f none /opt/csw/share/tomcat6/webapps/examples/servlets/images/code.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/servlets/images/execute.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/servlets/images/return.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/servlets/index.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/servlets/reqheaders.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/servlets/reqinfo.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/servlets/reqparams.html 0644 root bin -f none /opt/csw/share/tomcat6/webapps/examples/servlets/sessions.html 0644 root bin -d none /opt/csw/share/tomcat6/webapps/host-manager 0755 root bin -d none /opt/csw/share/tomcat6/webapps/host-manager/META-INF 0755 root bin -f none /opt/csw/share/tomcat6/webapps/host-manager/META-INF/context.xml 0644 root bin -d none /opt/csw/share/tomcat6/webapps/host-manager/WEB-INF 0755 root bin -f none /opt/csw/share/tomcat6/webapps/host-manager/WEB-INF/web.xml 0644 root bin -d none /opt/csw/share/tomcat6/webapps/host-manager/images 0755 root bin -f none /opt/csw/share/tomcat6/webapps/host-manager/images/add.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/host-manager/images/asf-logo.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/host-manager/images/code.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/host-manager/images/design.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/host-manager/images/docs.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/host-manager/images/fix.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/host-manager/images/tomcat.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/host-manager/images/update.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/host-manager/images/void.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/host-manager/manager.xml 0644 root bin -d none /opt/csw/share/tomcat6/webapps/manager 0755 root bin -f none /opt/csw/share/tomcat6/webapps/manager/401.jsp 0644 root bin -d none /opt/csw/share/tomcat6/webapps/manager/META-INF 0755 root bin -f none /opt/csw/share/tomcat6/webapps/manager/META-INF/context.xml 0644 root bin -d none /opt/csw/share/tomcat6/webapps/manager/WEB-INF 0755 root bin -f none /opt/csw/share/tomcat6/webapps/manager/WEB-INF/web.xml 0644 root bin -d none /opt/csw/share/tomcat6/webapps/manager/images 0755 root bin -f none /opt/csw/share/tomcat6/webapps/manager/images/add.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/manager/images/asf-logo.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/manager/images/code.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/manager/images/design.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/manager/images/docs.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/manager/images/fix.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/manager/images/tomcat.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/manager/images/update.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/manager/images/void.gif 0644 root bin -f none /opt/csw/share/tomcat6/webapps/manager/sessionDetail.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/manager/sessionsList.jsp 0644 root bin -f none /opt/csw/share/tomcat6/webapps/manager/status.xsd 0644 root bin -f none /opt/csw/share/tomcat6/webapps/manager/xform.xsl 0644 root bin -s none /opt/csw/share/tomcat6/work=/var/opt/csw/tomcat6/work -d none /var/opt/csw/tomcat6 0755 root bin -d none /var/opt/csw/tomcat6/logs 0755 tomcat tomcat -d none /var/opt/csw/tomcat6/temp 0755 tomcat tomcat -d none /var/opt/csw/tomcat6/work 0755 tomcat tomcat -i copyright=CSWtomcat6.copyright -i depend=CSWtomcat6.depend -i pkginfo=CSWtomcat6.pkginfo -i checkinstall -i preremove -i postinstall -i preinstall -i i.smfno -i i.smfyes -i space Added: csw/mgar/pkg/tomcat6/trunk/files/LICENSE =================================================================== --- csw/mgar/pkg/tomcat6/trunk/files/LICENSE (rev 0) +++ csw/mgar/pkg/tomcat6/trunk/files/LICENSE 2011-02-19 10:46:22 UTC (rev 13388) @@ -0,0 +1,707 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + + +APACHE TOMCAT SUBCOMPONENTS: + +Apache Tomcat includes a number of subcomponents with separate copyright notices +and license terms. Your use of these subcomponents is subject to the terms and +conditions of the following licenses. + + +For the jasper-jdt.jar component: + +Eclipse Public License - v 1.0 + +THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC +LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM +CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT. + +1. DEFINITIONS + +"Contribution" means: + +a) in the case of the initial Contributor, the initial code and documentation +distributed under this Agreement, and + +b) in the case of each subsequent Contributor: + +i) changes to the Program, and + +ii) additions to the Program; + +where such changes and/or additions to the Program originate from and are +distributed by that particular Contributor. A Contribution 'originates' from a +Contributor if it was added to the Program by such Contributor itself or anyone +acting on such Contributor's behalf. Contributions do not include additions to +the Program which: (i) are separate modules of software distributed in +conjunction with the Program under their own license agreement, and (ii) are not +derivative works of the Program. + +"Contributor" means any person or entity that distributes the Program. + +"Licensed Patents" mean patent claims licensable by a Contributor which are +necessarily infringed by the use or sale of its Contribution alone or when +combined with the Program. + +"Program" means the Contributions distributed in accordance with this Agreement. + +"Recipient" means anyone who receives the Program under this Agreement, +including all Contributors. + +2. GRANT OF RIGHTS + +a) Subject to the terms of this Agreement, each Contributor hereby grants +Recipient a non-exclusive, worldwide, royalty-free copyright license to +reproduce, prepare derivative works of, publicly display, publicly perform, +distribute and sublicense the Contribution of such Contributor, if any, and such +derivative works, in source code and object code form. + +b) Subject to the terms of this Agreement, each Contributor hereby grants +Recipient a non-exclusive, worldwide, royalty-free patent license under Licensed +Patents to make, use, sell, offer to sell, import and otherwise transfer the +Contribution of such Contributor, if any, in source code and object code form. +This patent license shall apply to the combination of the Contribution and the +Program if, at the time the Contribution is added by the Contributor, such +addition of the Contribution causes such combination to be covered by the +Licensed Patents. The patent license shall not apply to any other combinations +which include the Contribution. No hardware per se is licensed hereunder. + +c) Recipient understands that although each Contributor grants the licenses to +its Contributions set forth herein, no assurances are provided by any +Contributor that the Program does not infringe the patent or other intellectual +property rights of any other entity. Each Contributor disclaims any liability to +Recipient for claims brought by any other entity based on infringement of +intellectual property rights or otherwise. As a condition to exercising the +rights and licenses granted hereunder, each Recipient hereby assumes sole +responsibility to secure any other intellectual property rights needed, if any. +For example, if a third party patent license is required to allow Recipient to +distribute the Program, it is Recipient's responsibility to acquire that license +before distributing the Program. + +d) Each Contributor represents that to its knowledge it has sufficient copyright +rights in its Contribution, if any, to grant the copyright license set forth in +this Agreement. + +3. REQUIREMENTS + +A Contributor may choose to distribute the Program in object code form under its +own license agreement, provided that: + +a) it complies with the terms and conditions of this Agreement; and + +b) its license agreement: + +i) effectively disclaims on behalf of all Contributors all warranties and +conditions, express and implied, including warranties or conditions of title and +non-infringement, and implied warranties or conditions of merchantability and +fitness for a particular purpose; + +ii) effectively excludes on behalf of all Contributors all liability for +damages, including direct, indirect, special, incidental and consequential +damages, such as lost profits; + +iii) states that any provisions which differ from this Agreement are offered by +that Contributor alone and not by any other party; and + +iv) states that source code for the Program is available from such Contributor, +and informs licensees how to obtain it in a reasonable manner on or through a +medium customarily used for software exchange. + +When the Program is made available in source code form: + +a) it must be made available under this Agreement; and + +b) a copy of this Agreement must be included with each copy of the Program. + +Contributors may not remove or alter any copyright notices contained within the +Program. + +Each Contributor must identify itself as the originator of its Contribution, if +any, in a manner that reasonably allows subsequent Recipients to identify the +originator of the Contribution. + +4. COMMERCIAL DISTRIBUTION + +Commercial distributors of software may accept certain responsibilities with +respect to end users, business partners and the like. While this license is +intended to facilitate the commercial use of the Program, the Contributor who +includes the Program in a commercial product offering should do so in a manner +which does not create potential liability for other Contributors. Therefore, if +a Contributor includes the Program in a commercial product offering, such +Contributor ("Commercial Contributor") hereby agrees to defend and indemnify +every other Contributor ("Indemnified Contributor") against any losses, damages +and costs (collectively "Losses") arising from claims, lawsuits and other legal +actions brought by a third party against the Indemnified Contributor to the +extent caused by the acts or omissions of such Commercial Contributor in +connection with its distribution of the Program in a commercial product +offering. The obligations in this section do not apply to any claims or Losses +relating to any actual or alleged intellectual property infringement. In order +to qualify, an Indemnified Contributor must: a) promptly notify the Commercial +Contributor in writing of such claim, and b) allow the Commercial Contributor +to control, and cooperate with the Commercial Contributor in, the defense and +any related settlement negotiations. The Indemnified Contributor may +participate in any such claim at its own expense. + +For example, a Contributor might include the Program in a commercial product +offering, Product X. That Contributor is then a Commercial Contributor. If that +Commercial Contributor then makes performance claims, or offers warranties +related to Product X, those performance claims and warranties are such +Commercial Contributor's responsibility alone. Under this section, the +Commercial Contributor would have to defend claims against the other +Contributors related to those performance claims and warranties, and if a court +requires any other Contributor to pay any damages as a result, the Commercial +Contributor must pay those damages. + +5. NO WARRANTY + +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN +"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR +IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, +NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each +Recipient is solely responsible for determining the appropriateness of using and +distributing the Program and assumes all risks associated with its exercise of +rights under this Agreement , including but not limited to the risks and costs +of program errors, compliance with applicable laws, damage to or loss of data, +programs or equipment, and unavailability or interruption of operations. + +6. DISCLAIMER OF LIABILITY + +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY +CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST +PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS +GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + +7. GENERAL + +If any provision of this Agreement is invalid or unenforceable under applicable +law, it shall not affect the validity or enforceability of the remainder of the +terms of this Agreement, and without further action by the parties hereto, such +provision shall be reformed to the minimum extent necessary to make such +provision valid and enforceable. + +If Recipient institutes patent litigation against any entity (including a +cross-claim or counterclaim in a lawsuit) alleging that the Program itself +(excluding combinations of the Program with other software or hardware) +infringes such Recipient's patent(s), then such Recipient's rights granted under +Section 2(b) shall terminate as of the date such litigation is filed. + +All Recipient's rights under this Agreement shall terminate if it fails to +comply with any of the material terms or conditions of this Agreement and does +not cure such failure in a reasonable period of time after becoming aware of +such noncompliance. If all Recipient's rights under this Agreement terminate, +Recipient agrees to cease use and distribution of the Program as soon as +reasonably practicable. However, Recipient's obligations under this Agreement +and any licenses granted by Recipient relating to the Program shall continue and +survive. + +Everyone is permitted to copy and distribute copies of this Agreement, but in +order to avoid inconsistency the Agreement is copyrighted and may only be +modified in the following manner. The Agreement Steward reserves the right to +publish new versions (including revisions) of this Agreement from time to time. +No one other than the Agreement Steward has the right to modify this Agreement. +The Eclipse Foundation is the initial Agreement Steward. The Eclipse Foundation +may assign the responsibility to serve as the Agreement Steward to a suitable +separate entity. Each new version of the Agreement will be given a +distinguishing version number. The Program (including Contributions) may always +be distributed subject to the version of the Agreement under which it was +received. In addition, after a new version of the Agreement is published, +Contributor may elect to distribute the Program (including its Contributions) +under the new version. Except as expressly stated in Sections 2(a) and 2(b) +above, Recipient receives no rights or licenses to the intellectual property of +any Contributor under this Agreement, whether expressly, by implication, +estoppel or otherwise. All rights in the Program not expressly granted under +this Agreement are reserved. + +This Agreement is governed by the laws of the State of New York and the +intellectual property laws of the United States of America. No party to this +Agreement will bring a legal action under this Agreement more than one year +after the cause of action arose. Each party waives its rights to a jury trial in +any resulting litigation. + + +For the Windows Installer component: + + * All NSIS source code, plug-ins, documentation, examples, header files and + graphics, with the exception of the compression modules and where + otherwise noted, are licensed under the zlib/libpng license. + * The zlib compression module for NSIS is licensed under the zlib/libpng + license. + * The bzip2 compression module for NSIS is licensed under the bzip2 license. + * The lzma compression module for NSIS is licensed under the Common Public + License version 1.0. + +zlib/libpng license + +This software is provided 'as-is', without any express or implied warranty. In +no event will the authors be held liable for any damages arising from the use of +this software. + +Permission is granted to anyone to use this software for any purpose, including +commercial applications, and to alter it and redistribute it freely, subject to +the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not claim + that you wrote the original software. If you use this software in a + product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + +bzip2 license + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + 2. The origin of this software must not be misrepresented; you must not claim + that you wrote the original software. If you use this software in a + product, an acknowledgment in the product documentation would be + appreciated but is not required. + 3. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 4. The name of the author may not be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT +SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT +OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING +IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY +OF SUCH DAMAGE. + +Julian Seward, Cambridge, UK. + +jseward at acm.org +Common Public License version 1.0 + +THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS COMMON PUBLIC +LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM +CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT. + +1. DEFINITIONS + +"Contribution" means: + +a) in the case of the initial Contributor, the initial code and documentation +distributed under this Agreement, and b) in the case of each subsequent +Contributor: + +i) changes to the Program, and + +ii) additions to the Program; + +where such changes and/or additions to the Program originate from and are +distributed by that particular Contributor. A Contribution 'originates' from a +Contributor if it was added to the Program by such Contributor itself or anyone +acting on such Contributor's behalf. Contributions do not include additions to +the Program which: (i) are separate modules of software distributed in +conjunction with the Program under their own license agreement, and (ii) are not +derivative works of the Program. + +"Contributor" means any person or entity that distributes the Program. + +"Licensed Patents " mean patent claims licensable by a Contributor which are +necessarily infringed by the use or sale of its Contribution alone or when +combined with the Program. + +"Program" means the Contributions distributed in accordance with this Agreement. + +"Recipient" means anyone who receives the Program under this Agreement, +including all Contributors. + +2. GRANT OF RIGHTS + +a) Subject to the terms of this Agreement, each Contributor hereby grants +Recipient a non-exclusive, worldwide, royalty-free copyright license to +reproduce, prepare derivative works of, publicly display, publicly perform, +distribute and sublicense the Contribution of such Contributor, if any, and such +derivative works, in source code and object code form. + +b) Subject to the terms of this Agreement, each Contributor hereby grants +Recipient a non-exclusive, worldwide, royalty-free patent license under Licensed +Patents to make, use, sell, offer to sell, import and otherwise transfer the +Contribution of such Contributor, if any, in source code and object code form. +This patent license shall apply to the combination of the Contribution and the +Program if, at the time the Contribution is added by the Contributor, such +addition of the Contribution causes such combination to be covered by the +Licensed Patents. The patent license shall not apply to any other combinations +which include the Contribution. No hardware per se is licensed hereunder. + +c) Recipient understands that although each Contributor grants the licenses to +its Contributions set forth herein, no assurances are provided by any +Contributor that the Program does not infringe the patent or other intellectual +property rights of any other entity. Each Contributor disclaims any liability to +Recipient for claims brought by any other entity based on infringement of +intellectual property rights or otherwise. As a condition to exercising the +rights and licenses granted hereunder, each Recipient hereby assumes sole +responsibility to secure any other intellectual property rights needed, if any. +For example, if a third party patent license is required to allow Recipient to +distribute the Program, it is Recipient's responsibility to acquire that license +before distributing the Program. + +d) Each Contributor represents that to its knowledge it has sufficient copyright +rights in its Contribution, if any, to grant the copyright license set forth in +this Agreement. + +3. REQUIREMENTS + +A Contributor may choose to distribute the Program in object code form under its +own license agreement, provided that: + +a) it complies with the terms and conditions of this Agreement; and + +b) its license agreement: + +i) effectively disclaims on behalf of all Contributors all warranties and +conditions, express and implied, including warranties or conditions of title and +non-infringement, and implied warranties or conditions of merchantability and +fitness for a particular purpose; + +ii) effectively excludes on behalf of all Contributors all liability for +damages, including direct, indirect, special, incidental and consequential +damages, such as lost profits; + +iii) states that any provisions which differ from this Agreement are offered by +that Contributor alone and not by any other party; and + +iv) states that source code for the Program is available from such Contributor, +and informs licensees how to obtain it in a reasonable manner on or through a +medium customarily used for software exchange. + +When the Program is made available in source code form: + +a) it must be made available under this Agreement; and + +b) a copy of this Agreement must be included with each copy of the Program. + +Contributors may not remove or alter any copyright notices contained within the +Program. + +Each Contributor must identify itself as the originator of its Contribution, if +any, in a manner that reasonably allows subsequent Recipients to identify the +originator of the Contribution. + +4. COMMERCIAL DISTRIBUTION + +Commercial distributors of software may accept certain responsibilities with +respect to end users, business partners and the like. While this license is +intended to facilitate the commercial use of the Program, the Contributor who +includes the Program in a commercial product offering should do so in a manner +which does not create potential liability for other Contributors. Therefore, if +a Contributor includes the Program in a commercial product offering, such +Contributor ("Commercial Contributor") hereby agrees to defend and indemnify +every other Contributor ("Indemnified Contributor") against any losses, damages +and costs (collectively "Losses") arising from claims, lawsuits and other legal +actions brought by a third party against the Indemnified Contributor to the +extent caused by the acts or omissions of such Commercial Contributor in +connection with its distribution of the Program in a commercial product +offering. The obligations in this section do not apply to any claims or Losses +relating to any actual or alleged intellectual property infringement. In order +to qualify, an Indemnified Contributor must: a) promptly notify the Commercial +Contributor in writing of such claim, and b) allow the Commercial Contributor to +control, and cooperate with the Commercial Contributor in, the defense and any +related settlement negotiations. The Indemnified Contributor may participate in +any such claim at its own expense. + +For example, a Contributor might include the Program in a commercial product +offering, Product X. That Contributor is then a Commercial Contributor. If that +Commercial Contributor then makes performance claims, or offers warranties +related to Product X, those performance claims and warranties are such +Commercial Contributor's responsibility alone. Under this section, the +Commercial Contributor would have to defend claims against the other +Contributors related to those performance claims and warranties, and if a court +requires any other Contributor to pay any damages as a result, the Commercial +Contributor must pay those damages. + +5. NO WARRANTY + +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN +"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR +IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, +NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each +Recipient is solely responsible for determining the appropriateness of using and +distributing the Program and assumes all risks associated with its exercise of +rights under this Agreement, including but not limited to the risks and costs of +program errors, compliance with applicable laws, damage to or loss of data, +programs or equipment, and unavailability or interruption of operations. + +6. DISCLAIMER OF LIABILITY + +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY +CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST +PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS +GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + +7. GENERAL + +If any provision of this Agreement is invalid or unenforceable under applicable +law, it shall not affect the validity or enforceability of the remainder of the +terms of this Agreement, and without further action by the parties hereto, such +provision shall be reformed to the minimum extent necessary to make such +provision valid and enforceable. + +If Recipient institutes patent litigation against a Contributor with respect to +a patent applicable to software (including a cross-claim or counterclaim in a +lawsuit), then any patent licenses granted by that Contributor to such Recipient +under this Agreement shall terminate as of the date such litigation is filed. In +addition, if Recipient institutes patent litigation against any entity +(including a cross-claim or counterclaim in a lawsuit) alleging that the Program +itself (excluding combinations of the Program with other software or hardware) +infringes such Recipient's patent(s), then such Recipient's rights granted under +Section 2(b) shall terminate as of the date such litigation is filed. + +All Recipient's rights under this Agreement shall terminate if it fails to +comply with any of the material terms or conditions of this Agreement and does +not cure such failure in a reasonable period of time after becoming aware of +such noncompliance. If all Recipient's rights under this Agreement terminate, +Recipient agrees to cease use and distribution of the Program as soon as +reasonably practicable. However, Recipient's obligations under this Agreement +and any licenses granted by Recipient relating to the Program shall continue and +survive. + +Everyone is permitted to copy and distribute copies of this Agreement, but in +order to avoid inconsistency the Agreement is copyrighted and may only be +modified in the following manner. The Agreement Steward reserves the right to +publish new versions (including revisions) of this Agreement from time to time. +No one other than the Agreement Steward has the right to modify this Agreement. +IBM is the initial Agreement Steward. IBM may assign the responsibility to serve +as the Agreement Steward to a suitable separate entity. Each new version of the +Agreement will be given a distinguishing version number. The Program (including +Contributions) may always be distributed subject to the version of the Agreement +under which it was received. In addition, after a new version of the Agreement +is published, Contributor may elect to distribute the Program (including its +Contributions) under the new version. Except as expressly stated in Sections +2(a) and 2(b) above, Recipient receives no rights or licenses to the +intellectual property of any Contributor under this Agreement, whether +expressly, by implication, estoppel or otherwise. All rights in the Program not +expressly granted under this Agreement are reserved. + +This Agreement is governed by the laws of the State of New York and the +intellectual property laws of the United States of America. No party to this +Agreement will bring a legal action under this Agreement more than one year +after the cause of action arose. Each party waives its rights to a jury trial in +any resulting litigation. + +Special exception for LZMA compression module + +Igor Pavlov and Amir Szekely, the authors of the LZMA compression module for +NSIS, expressly permit you to statically or dynamically link your code (or bind +by name) to the files from the LZMA compression module for NSIS without +subjecting your linked code to the terms of the Common Public license version +1.0. Any modifications or additions to files from the LZMA compression module +for NSIS, however, are subject to the terms of the Common Public License version +1.0. \ No newline at end of file Deleted: csw/mgar/pkg/tomcat6/trunk/files/checkinstall =================================================================== --- csw/mgar/pkg/tomcat6/trunk/files/checkinstall 2011-02-19 10:35:00 UTC (rev 13387) +++ csw/mgar/pkg/tomcat6/trunk/files/checkinstall 2011-02-19 10:46:22 UTC (rev 13388) @@ -1,21 +0,0 @@ -# tomcat6 - checkinstall script -# -trap `exit 3` 15 - -# Assign Solaris release class to install release specific files -smf=no -if [ -f /usr/sbin/svccfg -a -f /usr/sbin/svcadm ] ; then smf=yes ; fi -if [ $smf = yes ] -then - CLASSES='none smfyes' -else - CLASSES='none smfno' -fi - -# Make env variables available to other packaging scripts - -cat >$1 <." -while read src dest -do - # Do copy - /usr/bin/cp $src $dest || exit 2 - echo $dest -done -exit 0 Deleted: csw/mgar/pkg/tomcat6/trunk/files/i.smfyes =================================================================== --- csw/mgar/pkg/tomcat6/trunk/files/i.smfyes 2011-02-19 10:35:00 UTC (rev 13387) +++ csw/mgar/pkg/tomcat6/trunk/files/i.smfyes 2011-02-19 10:46:22 UTC (rev 13388) @@ -1,20 +0,0 @@ -# tomcat6 - i.smfyes script -# -# Copy the SMF specific files to the base directory. -# The files specific to SMF are: -# /opt/csw/var/svc -# /opt/csw/var/svc/manifest -# /opt/csw/var/svc/manifest/network -# /opt/csw/var/svc/manifest/network/tomcat6.xml=/tomcat6.xml -# /opt/csw/lib/svc -# /opt/csw/lib/svc/method @@ Diff output truncated at 100000 characters. @@ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sat Feb 19 11:51:13 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sat, 19 Feb 2011 10:51:13 +0000 Subject: [csw-devel] SF.net SVN: gar:[13389] csw/mgar/pkg/java/ajcvalidator/trunk/Makefile Message-ID: Revision: 13389 http://gar.svn.sourceforge.net/gar/?rev=13389&view=rev Author: wbonnet Date: 2011-02-19 10:51:13 +0000 (Sat, 19 Feb 2011) Log Message: ----------- java/validator fix Makefile Modified Paths: -------------- csw/mgar/pkg/java/ajcvalidator/trunk/Makefile Modified: csw/mgar/pkg/java/ajcvalidator/trunk/Makefile =================================================================== --- csw/mgar/pkg/java/ajcvalidator/trunk/Makefile 2011-02-19 10:46:22 UTC (rev 13388) +++ csw/mgar/pkg/java/ajcvalidator/trunk/Makefile 2011-02-19 10:51:13 UTC (rev 13389) @@ -11,15 +11,24 @@ # Use jakarta sources MASTER_SITES = http://apache.cict.fr/commons/$(SHORTNAME)/binaries/ -UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*)(-bin*).tar.gz # Set archive filename DISTFILES = $(NAME)-$(VERSION).tar.gz # Defines two packages, lib and doc -DISTFILES += $(call admfiles,CSWajcvalidator,) -DISTFILES += $(call admfiles,CSWajcvalidatordoc,) +PACKAGES = CSWajcvalidator CSWajcvalidatordoc +# Package architecture is ALL (pure java) +ARCHALL = 1 + +CATALOGNAME_CSWajcvalidator = commons_validator +CATALOGNAME_CSWajcvalidatordoc = commons_valid_doc + +LICENSE = LICENSE.txt + +CHECKPKG_OVERRIDES_CSWajcvalidatordoc += catalogname-does-not-match-pkgname|pkgname=CSWajcvalidatordoc|catalogname=commons_valid_doc|expected-catalogname=ajcvalidatordoc +CHECKPKG_OVERRIDES_CSWajcvalidator += catalogname-does-not-match-pkgname|pkgname=CSWajcvalidator|catalogname=commons_validator|expected-catalogname=ajcvalidator + # Defines package description SPKG_DESC_CSWajcvalidator = $(DESCRIPTION) SPKG_DESC_CSWajcvalidatordoc = $(DESCRIPTION) documentation package @@ -28,7 +37,6 @@ # RUNTIME_DEP_PKGS_CSWajcvalidator = No dependency # Defines package content -PKGFILES_CSWajcvalidator = $(prefix)/share/doc/$(NAME)/License.txt PKGFILES_CSWajcvalidator += $(prefix)/share/java/.* # Defines custom steps since java libs do not use autotools @@ -49,7 +57,5 @@ ln -s $(NAME)-$(VERSION).jar $(NAME)-1.jar ; \ ln -s $(NAME)-$(VERSION).jar $(NAME).jar ) @ginstall -d $(DESTDIR)$(datadir)/doc/$(NAME) - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License.txt - @gcp -fp $(WORKSRC)/$(DISTNAME)/LICENSE.txt $(DESTDIR)$(datadir)/doc/$(NAME)/License-documentation.txt @gcp -frp $(WORKSRC)/$(DISTNAME)/docs/* $(DESTDIR)$(datadir)/doc/$(NAME) @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From idogan23 at users.sourceforge.net Sat Feb 19 11:52:25 2011 From: idogan23 at users.sourceforge.net (idogan23 at users.sourceforge.net) Date: Sat, 19 Feb 2011 10:52:25 +0000 Subject: [csw-devel] SF.net SVN: gar:[13390] csw/mgar/pkg/tomcat6/trunk/files/cswusergroup Message-ID: Revision: 13390 http://gar.svn.sourceforge.net/gar/?rev=13390&view=rev Author: idogan23 Date: 2011-02-19 10:52:24 +0000 (Sat, 19 Feb 2011) Log Message: ----------- tomcat6: add usergroup file Added Paths: ----------- csw/mgar/pkg/tomcat6/trunk/files/cswusergroup Added: csw/mgar/pkg/tomcat6/trunk/files/cswusergroup =================================================================== --- csw/mgar/pkg/tomcat6/trunk/files/cswusergroup (rev 0) +++ csw/mgar/pkg/tomcat6/trunk/files/cswusergroup 2011-02-19 10:52:24 UTC (rev 13390) @@ -0,0 +1 @@ +tomcat:tomcat:Tomcat JSP Container:::: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sat Feb 19 12:29:56 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sat, 19 Feb 2011 11:29:56 +0000 Subject: [csw-devel] SF.net SVN: gar:[13391] csw/mgar/pkg/java/ajcvalidator/trunk/Makefile Message-ID: Revision: 13391 http://gar.svn.sourceforge.net/gar/?rev=13391&view=rev Author: wbonnet Date: 2011-02-19 11:29:55 +0000 (Sat, 19 Feb 2011) Log Message: ----------- java/validator fix Makefile Modified Paths: -------------- csw/mgar/pkg/java/ajcvalidator/trunk/Makefile Modified: csw/mgar/pkg/java/ajcvalidator/trunk/Makefile =================================================================== --- csw/mgar/pkg/java/ajcvalidator/trunk/Makefile 2011-02-19 10:52:24 UTC (rev 13390) +++ csw/mgar/pkg/java/ajcvalidator/trunk/Makefile 2011-02-19 11:29:55 UTC (rev 13391) @@ -22,11 +22,11 @@ ARCHALL = 1 CATALOGNAME_CSWajcvalidator = commons_validator -CATALOGNAME_CSWajcvalidatordoc = commons_valid_doc +CATALOGNAME_CSWajcvalidatordoc = commons_validat_doc LICENSE = LICENSE.txt -CHECKPKG_OVERRIDES_CSWajcvalidatordoc += catalogname-does-not-match-pkgname|pkgname=CSWajcvalidatordoc|catalogname=commons_valid_doc|expected-catalogname=ajcvalidatordoc +CHECKPKG_OVERRIDES_CSWajcvalidatordoc += catalogname-does-not-match-pkgname|pkgname=CSWajcvalidatordoc|catalogname=commons_validat_doc|expected-catalogname=ajcvalidatordoc CHECKPKG_OVERRIDES_CSWajcvalidator += catalogname-does-not-match-pkgname|pkgname=CSWajcvalidator|catalogname=commons_validator|expected-catalogname=ajcvalidator # Defines package description This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From idogan23 at users.sourceforge.net Sat Feb 19 12:43:06 2011 From: idogan23 at users.sourceforge.net (idogan23 at users.sourceforge.net) Date: Sat, 19 Feb 2011 11:43:06 +0000 Subject: [csw-devel] SF.net SVN: gar:[13392] csw/mgar/pkg/tomcat6/trunk Message-ID: Revision: 13392 http://gar.svn.sourceforge.net/gar/?rev=13392&view=rev Author: idogan23 Date: 2011-02-19 11:43:06 +0000 (Sat, 19 Feb 2011) Log Message: ----------- tomcat6: bump version to 6.0.32 Modified Paths: -------------- csw/mgar/pkg/tomcat6/trunk/Makefile csw/mgar/pkg/tomcat6/trunk/checksums Modified: csw/mgar/pkg/tomcat6/trunk/Makefile =================================================================== --- csw/mgar/pkg/tomcat6/trunk/Makefile 2011-02-19 11:29:55 UTC (rev 13391) +++ csw/mgar/pkg/tomcat6/trunk/Makefile 2011-02-19 11:43:06 UTC (rev 13392) @@ -1,5 +1,5 @@ NAME = tomcat6 -VERSION = 6.0.29 +VERSION = 6.0.32 CATEGORIES = server DESCRIPTION = Apache Jakarta Tomcat 6 Servlet/JSP Container @@ -7,7 +7,8 @@ Apache Tomcat is the servlet container that is used in the official Reference Implementation for the Java Servlet and JavaServer Pages technologies. The Java Servlet and JavaServer Pages specifications are developed by Sun under the Java Community Process. endef -MASTER_SITES = http://tomcat.apache.org/ +VENDOR_URL = http://tomcat.apache.org/ +MASTER_SITES = http://mir2.ovh.net/ftp.apache.org/dist/jakarta/tomcat-6/v$(VERSION)/bin/ UPSTREAM_MASTER_SITES = http://mir2.ovh.net/ftp.apache.org/dist/jakarta/tomcat-6/v$(VERSION)/bin/ DISTFILES = apache-tomcat-$(VERSION).tar.gz PKGDIST = apache-tomcat-$(VERSION).tar.gz Modified: csw/mgar/pkg/tomcat6/trunk/checksums =================================================================== --- csw/mgar/pkg/tomcat6/trunk/checksums 2011-02-19 11:29:55 UTC (rev 13391) +++ csw/mgar/pkg/tomcat6/trunk/checksums 2011-02-19 11:43:06 UTC (rev 13392) @@ -1 +1 @@ -7d614e03d18d3f21fcfdff96f0b6c311 apache-tomcat-6.0.29.tar.gz +928a960268adf610a7d6fe5c4fcd0b20 apache-tomcat-6.0.32.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From idogan23 at users.sourceforge.net Sat Feb 19 15:29:42 2011 From: idogan23 at users.sourceforge.net (idogan23 at users.sourceforge.net) Date: Sat, 19 Feb 2011 14:29:42 +0000 Subject: [csw-devel] SF.net SVN: gar:[13393] csw/mgar/pkg/cpan/File-Tail/trunk/Makefile Message-ID: Revision: 13393 http://gar.svn.sourceforge.net/gar/?rev=13393&view=rev Author: idogan23 Date: 2011-02-19 14:29:42 +0000 (Sat, 19 Feb 2011) Log Message: ----------- pm_filetail: added LICENSE Modified Paths: -------------- csw/mgar/pkg/cpan/File-Tail/trunk/Makefile Modified: csw/mgar/pkg/cpan/File-Tail/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/File-Tail/trunk/Makefile 2011-02-19 11:43:06 UTC (rev 13392) +++ csw/mgar/pkg/cpan/File-Tail/trunk/Makefile 2011-02-19 14:29:42 UTC (rev 13393) @@ -14,6 +14,10 @@ CATALOGNAME = pm_filetail ARCHALL = 1 -CHECKPKG_OVERRIDES_CSWpmfiletail += license-missing +DISTFILES += LICENSE +LICENSE = LICENSE + +CHECKPKG_OVERRIDES_CSWpmfiletail += catalogname-does-not-match-pkgname|pkgname=CSWpmfiletail|catalogname=pm_filetail|expected-catalogname=pmfiletail + include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From idogan23 at users.sourceforge.net Sat Feb 19 15:30:12 2011 From: idogan23 at users.sourceforge.net (idogan23 at users.sourceforge.net) Date: Sat, 19 Feb 2011 14:30:12 +0000 Subject: [csw-devel] SF.net SVN: gar:[13394] csw/mgar/pkg/cpan/File-Tail/trunk/files/LICENSE Message-ID: Revision: 13394 http://gar.svn.sourceforge.net/gar/?rev=13394&view=rev Author: idogan23 Date: 2011-02-19 14:30:12 +0000 (Sat, 19 Feb 2011) Log Message: ----------- pm_filetail: added LICENSE Added Paths: ----------- csw/mgar/pkg/cpan/File-Tail/trunk/files/LICENSE Added: csw/mgar/pkg/cpan/File-Tail/trunk/files/LICENSE =================================================================== --- csw/mgar/pkg/cpan/File-Tail/trunk/files/LICENSE (rev 0) +++ csw/mgar/pkg/cpan/File-Tail/trunk/files/LICENSE 2011-02-19 14:30:12 UTC (rev 13394) @@ -0,0 +1,4 @@ +Copyright (c) 1997,1998,1999 Matija Grabnar. + +All rights reserved. This program is free software; you can +redistribute it and/or modify it under the same terms as Perl itself. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From idogan23 at users.sourceforge.net Sat Feb 19 15:59:45 2011 From: idogan23 at users.sourceforge.net (idogan23 at users.sourceforge.net) Date: Sat, 19 Feb 2011 14:59:45 +0000 Subject: [csw-devel] SF.net SVN: gar:[13395] csw/mgar/pkg/tomcat6/trunk/Makefile Message-ID: Revision: 13395 http://gar.svn.sourceforge.net/gar/?rev=13395&view=rev Author: idogan23 Date: 2011-02-19 14:59:45 +0000 (Sat, 19 Feb 2011) Log Message: ----------- tomcat6: checkpkg overrides Modified Paths: -------------- csw/mgar/pkg/tomcat6/trunk/Makefile Modified: csw/mgar/pkg/tomcat6/trunk/Makefile =================================================================== --- csw/mgar/pkg/tomcat6/trunk/Makefile 2011-02-19 14:30:12 UTC (rev 13394) +++ csw/mgar/pkg/tomcat6/trunk/Makefile 2011-02-19 14:59:45 UTC (rev 13395) @@ -53,6 +53,16 @@ MIGRATE_FILES += tomcat-users.xml MIGRATE_FILES += web.xml +# Reviewed and fine to override +CHECKPKG_OVERRIDES_CSWtomcat6 += file-with-bad-content|/usr/local|root/opt/csw/share/tomcat6/RUNNING.txt +CHECKPKG_OVERRIDES_CSWtomcat6 += file-with-bad-content|/usr/local|root/opt/csw/share/tomcat6/webapps/docs/virtual-hosting-howto.html +CHECKPKG_OVERRIDES_CSWtomcat6 += file-with-bad-content|/usr/local|root/opt/csw/share/tomcat6/webapps/docs/manager-howto.html +CHECKPKG_OVERRIDES_CSWtomcat6 += file-with-bad-content|/usr/local|root/opt/csw/share/tomcat6/webapps/docs/RUNNING.txt +CHECKPKG_OVERRIDES_CSWtomcat6 += file-with-bad-content|/usr/local|root/opt/csw/share/tomcat6/webapps/docs/ssl-howto.html +CHECKPKG_OVERRIDES_CSWtomcat6 += file-with-bad-content|/usr/local|root/opt/csw/share/tomcat6/webapps/docs/appdev/processes.html +CHECKPKG_OVERRIDES_CSWtomcat6 += file-with-bad-content|/usr/share|root/opt/csw/share/tomcat6/webapps/docs/building.html +CHECKPKG_OVERRIDES_CSWtomcat6 += file-with-bad-content|/usr/share|root/opt/csw/share/tomcat6/webapps/docs/BUILDING.txt + include gar/category.mk configure-none: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From idogan23 at users.sourceforge.net Sat Feb 19 16:20:37 2011 From: idogan23 at users.sourceforge.net (idogan23 at users.sourceforge.net) Date: Sat, 19 Feb 2011 15:20:37 +0000 Subject: [csw-devel] SF.net SVN: gar:[13396] csw/mgar/pkg/mrtg/trunk Message-ID: Revision: 13396 http://gar.svn.sourceforge.net/gar/?rev=13396&view=rev Author: idogan23 Date: 2011-02-19 15:20:37 +0000 (Sat, 19 Feb 2011) Log Message: ----------- mrtg: bump version to 2.17.1 Modified Paths: -------------- csw/mgar/pkg/mrtg/trunk/Makefile csw/mgar/pkg/mrtg/trunk/checksums Modified: csw/mgar/pkg/mrtg/trunk/Makefile =================================================================== --- csw/mgar/pkg/mrtg/trunk/Makefile 2011-02-19 14:59:45 UTC (rev 13395) +++ csw/mgar/pkg/mrtg/trunk/Makefile 2011-02-19 15:20:37 UTC (rev 13396) @@ -1,5 +1,5 @@ NAME = mrtg -VERSION = 2.16.3 +VERSION = 2.17.1 CATEGORIES = utils DESCRIPTION = Multi Router Traffic Grapher (network monitor) @@ -20,7 +20,7 @@ # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz -PACKAGING_PLATFORMS = solaris8-sparc solaris8-i386 +PACKAGING_PLATFORMS = solaris9-sparc solaris9-i386 CONFIGURE_ARGS = $(DIRPATHS) CONFIGURE_ARGS += --with-gd=/opt/csw @@ -32,7 +32,22 @@ RUNTIME_DEP_PKGS += CSWpng RUNTIME_DEP_PKGS += CSWzlib -#GARCOMPILER = SUN +# Reviewed checkpkg overrides +CHECKPKG_OVERRIDES_CSWmrtg += file-with-bad-content|/usr/local|root/opt/csw/lib/mrtg2/Net_SNMP_util.pm +CHECKPKG_OVERRIDES_CSWmrtg += file-with-bad-content|/usr/local|root/opt/csw/share/man/man1/mrtg-rrd.1 +CHECKPKG_OVERRIDES_CSWmrtg += file-with-bad-content|/usr/local|root/opt/csw/share/man/man1/mrtg-unix-guide.1 +CHECKPKG_OVERRIDES_CSWmrtg += file-with-bad-content|/usr/local|root/opt/csw/share/man/man1/mrtg-reference.1 +CHECKPKG_OVERRIDES_CSWmrtg += file-with-bad-content|/usr/local|root/opt/csw/share/doc/mrtg2/mrtg-rrd.txt +CHECKPKG_OVERRIDES_CSWmrtg += file-with-bad-content|/usr/local|root/opt/csw/share/doc/mrtg2/CHANGES +CHECKPKG_OVERRIDES_CSWmrtg += file-with-bad-content|/usr/local|root/opt/csw/share/doc/mrtg2/mrtg-unix-guide.txt +CHECKPKG_OVERRIDES_CSWmrtg += file-with-bad-content|/usr/local|root/opt/csw/share/doc/mrtg2/mrtg-reference.txt +CHECKPKG_OVERRIDES_CSWmrtg += file-with-bad-content|/usr/local|root/opt/csw/share/doc/mrtg2/mrtg-rrd.pod +CHECKPKG_OVERRIDES_CSWmrtg += file-with-bad-content|/usr/local|root/opt/csw/share/doc/mrtg2/mrtg-reference.pod +CHECKPKG_OVERRIDES_CSWmrtg += file-with-bad-content|/usr/local|root/opt/csw/share/doc/mrtg2/mrtg-unix-guide.pod +CHECKPKG_OVERRIDES_CSWmrtg += file-with-bad-content|/usr/share|root/opt/csw/share/man/man1/mrtg-squid.1 +CHECKPKG_OVERRIDES_CSWmrtg += file-with-bad-content|/usr/share|root/opt/csw/share/doc/mrtg2/mrtg-squid.pod +CHECKPKG_OVERRIDES_CSWmrtg += file-with-bad-content|/usr/share|root/opt/csw/share/doc/mrtg2/mrtg-squid.txt + TEST_TARGET = include gar/category.mk Modified: csw/mgar/pkg/mrtg/trunk/checksums =================================================================== --- csw/mgar/pkg/mrtg/trunk/checksums 2011-02-19 14:59:45 UTC (rev 13395) +++ csw/mgar/pkg/mrtg/trunk/checksums 2011-02-19 15:20:37 UTC (rev 13396) @@ -1 +1 @@ -dfdda80c1d575081458cede58f979d81 mrtg-2.16.3.tar.gz +27e8e9877de6c1e25d7e5284f6edddcd mrtg-2.17.1.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From idogan23 at users.sourceforge.net Sat Feb 19 16:44:20 2011 From: idogan23 at users.sourceforge.net (idogan23 at users.sourceforge.net) Date: Sat, 19 Feb 2011 15:44:20 +0000 Subject: [csw-devel] SF.net SVN: gar:[13397] csw/mgar/pkg/cpan/MIME-tools/trunk Message-ID: Revision: 13397 http://gar.svn.sourceforge.net/gar/?rev=13397&view=rev Author: idogan23 Date: 2011-02-19 15:44:20 +0000 (Sat, 19 Feb 2011) Log Message: ----------- pm_mimetools: bumb version to 5.428 Modified Paths: -------------- csw/mgar/pkg/cpan/MIME-tools/trunk/Makefile csw/mgar/pkg/cpan/MIME-tools/trunk/checksums Modified: csw/mgar/pkg/cpan/MIME-tools/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/MIME-tools/trunk/Makefile 2011-02-19 15:20:37 UTC (rev 13396) +++ csw/mgar/pkg/cpan/MIME-tools/trunk/Makefile 2011-02-19 15:44:20 UTC (rev 13397) @@ -1,5 +1,5 @@ NAME = MIME-tools -VERSION = 5.427 +VERSION = 5.428 CATEGORIES = cpan AUTHOR = ERYQ @@ -16,4 +16,6 @@ COPYING = LICENSE +CHECKPKG_OVERRIDES_CSWpmmimetools += catalogname-does-not-match-pkgname|pkgname=CSWpmmimetools|catalogname=pm_mimetools|expected-catalogname=pmmimetools + include gar/category.mk Modified: csw/mgar/pkg/cpan/MIME-tools/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/MIME-tools/trunk/checksums 2011-02-19 15:20:37 UTC (rev 13396) +++ csw/mgar/pkg/cpan/MIME-tools/trunk/checksums 2011-02-19 15:44:20 UTC (rev 13397) @@ -1,3 +1 @@ -734c99737ea90e1948fda971b4127bce download/CSWpmmimetools.gspec -8df2745106008361cde043dd77ca4f4a download/CSWpmmimetools.depend -4333caa7238cb9eafb5f7fb39fcbd8e7 download/MIME-tools-5.427.tar.gz +dc9bef4af5ca86b729f5277fa52879f4 MIME-tools-5.428.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Sat Feb 19 16:59:20 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Sat, 19 Feb 2011 15:59:20 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[297] gar-wrapper/mgar Message-ID: Revision: 297 http://opencsw.svn.sourceforge.net/opencsw/?rev=297&view=rev Author: skayser Date: 2011-02-19 15:59:19 +0000 (Sat, 19 Feb 2011) Log Message: ----------- mgar: fiddle with --depth options to narrow down up-pkgtree problems Modified Paths: -------------- gar-wrapper/mgar Modified: gar-wrapper/mgar =================================================================== --- gar-wrapper/mgar 2011-02-19 02:36:17 UTC (rev 296) +++ gar-wrapper/mgar 2011-02-19 15:59:19 UTC (rev 297) @@ -263,7 +263,7 @@ ;; up-buildsys) cd "$BUILDSYS" && svn up;; up-pkgtree) cd "$BUILDTREE" && \ - svn up --ignore-externals --depth infinity + svn up --set-depth infinity --ignore-externals ;; show-srcdir) ensure_in_pkg_dir; echo `get_srcdir`;; show-stagedir) ensure_in_pkg_dir; echo `get_stagedir`;; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Sat Feb 19 17:46:59 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sat, 19 Feb 2011 16:46:59 +0000 Subject: [csw-devel] SF.net SVN: gar:[13398] csw/mgar/pkg Message-ID: Revision: 13398 http://gar.svn.sourceforge.net/gar/?rev=13398&view=rev Author: bdwalton Date: 2011-02-19 16:46:59 +0000 (Sat, 19 Feb 2011) Log Message: ----------- cswpki/trunk: add new package Added Paths: ----------- csw/mgar/pkg/cswgpgkey/ csw/mgar/pkg/cswgpgkey/Makefile csw/mgar/pkg/cswgpgkey/branches/ csw/mgar/pkg/cswgpgkey/tags/ csw/mgar/pkg/cswgpgkey/trunk/ csw/mgar/pkg/cswgpgkey/trunk/Makefile csw/mgar/pkg/cswgpgkey/trunk/checksums csw/mgar/pkg/cswgpgkey/trunk/files/ Copied: csw/mgar/pkg/cswgpgkey/Makefile (from rev 13358, csw/mgar/pkg/template/Makefile) =================================================================== --- csw/mgar/pkg/cswgpgkey/Makefile (rev 0) +++ csw/mgar/pkg/cswgpgkey/Makefile 2011-02-19 16:46:59 UTC (rev 13398) @@ -0,0 +1,15 @@ +# vim: ft=make ts=4 sw=4 noet + +default: + @echo "You are in the pkg/ directory." + +%: + $(MAKE) -C trunk $* + +paranoid-%: + $(MAKE) -C trunk $* || exit 2 + +export BUILDLOG ?= $(shell pwd)/buildlog.txt + +report-%: + $(MAKE) -C trunk $* || echo " *** make $* in $$i failed ***" >> $(BUILDLOG) Property changes on: csw/mgar/pkg/cswgpgkey/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/cswgpgkey/trunk/Makefile =================================================================== --- csw/mgar/pkg/cswgpgkey/trunk/Makefile (rev 0) +++ csw/mgar/pkg/cswgpgkey/trunk/Makefile 2011-02-19 16:46:59 UTC (rev 13398) @@ -0,0 +1,42 @@ +# $Id$ +NAME = cswpki +VERSION = 1.0 +CATEGORIES = utils + +DESCRIPTION = The OpenCSW PKI Collection +define BLURB + A collection of any public keys used by OpenCSW. +endef + +MASTER_SITES = http://www.opencsw.org/ +DISTFILES = CSWcswpki.postinstall gpl-2.0.txt +DISTFILES += cswpki +DISTFILES += csw_catalog_verification.asc + +RUNTIME_DEP_PKGS = CSWgnupg + +ARCHALL = 1 + +CONFIGURE_SCRIPTS = +BUILD_SCRIPTS = +TEST_SCRIPTS = +INSTALL_SCRIPTS = custom + +CHECKPKG_OVERRIDES_CSWcswpki += surplus-dependency|CSWgnupg + +PROTOTYPE_FILTER = awk '$$$$3 ~ /\/var\/opt\/csw\/pki/ { $$$$4 = 0700 }; { print }' + +include gar/category.mk + +install-custom: PKIDIR=$(DESTDIR)/etc/opt/csw/pki/csw-gpg +install-custom: DOC=$(DESTDIR)/$(docdir)/$(NAME)/ +install-custom: BIN=$(DESTDIR)/$(bindir)/ +install-custom: VAR=$(DESTDIR)/var/opt/csw/pki +install-custom: + ( mkdir -p $(PKIDIR) $(DOC) $(BIN) $(VAR); \ + for f in $(filter %.asc,$(DISTFILES)); do \ + cp $(WORKDIR)/$$f $(PKIDIR); \ + done; \ + cp $(WORKDIR)/cswpki $(BIN); \ + cp $(WORKDIR)/gpl-2.0.txt $(DOC)/license; \ + chmod 700 $(VAR) ) \ No newline at end of file Property changes on: csw/mgar/pkg/cswgpgkey/trunk/Makefile ___________________________________________________________________ Added: svn:keywords + Id Added: csw/mgar/pkg/cswgpgkey/trunk/checksums =================================================================== This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Sat Feb 19 17:48:45 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sat, 19 Feb 2011 16:48:45 +0000 Subject: [csw-devel] SF.net SVN: gar:[13399] csw/mgar/pkg/cswgpgkey/trunk/files Message-ID: Revision: 13399 http://gar.svn.sourceforge.net/gar/?rev=13399&view=rev Author: bdwalton Date: 2011-02-19 16:48:45 +0000 (Sat, 19 Feb 2011) Log Message: ----------- cswpki/trunk: add files/ directory content Added Paths: ----------- csw/mgar/pkg/cswgpgkey/trunk/files/CSWcswpki.postinstall csw/mgar/pkg/cswgpgkey/trunk/files/csw_catalog_verification.asc csw/mgar/pkg/cswgpgkey/trunk/files/cswpki csw/mgar/pkg/cswgpgkey/trunk/files/gpl-2.0.txt Added: csw/mgar/pkg/cswgpgkey/trunk/files/CSWcswpki.postinstall =================================================================== --- csw/mgar/pkg/cswgpgkey/trunk/files/CSWcswpki.postinstall (rev 0) +++ csw/mgar/pkg/cswgpgkey/trunk/files/CSWcswpki.postinstall 2011-02-19 16:48:45 UTC (rev 13399) @@ -0,0 +1,25 @@ +#!/bin/sh + +# Source csw.conf, if it exists +if [ -f /opt/csw/etc/csw.conf ] ; then + . /opt/csw/etc/csw.conf +fi +if [ -f /etc/opt/csw/csw.conf ] ; then + . /etc/opt/csw/csw.conf +fi + +if [ "$pki_auto" = "yes" ]; then + chroot ${PKG_INSTALL_ROOT:-/} /opt/csw/bin/cswpki --import --force +else + echo + echo + echo + echo "pki_auto was not set to 'yes' in csw.conf so the OpenCSW" + echo "GPG keys are not being automatically managed." + echo + echo "See /opt/csw/bin/cswpki --help for more information on" + echo "handling this manually." + echo + echo + echo +fi Property changes on: csw/mgar/pkg/cswgpgkey/trunk/files/CSWcswpki.postinstall ___________________________________________________________________ Added: svn:executable + * Added: csw/mgar/pkg/cswgpgkey/trunk/files/csw_catalog_verification.asc =================================================================== --- csw/mgar/pkg/cswgpgkey/trunk/files/csw_catalog_verification.asc (rev 0) +++ csw/mgar/pkg/cswgpgkey/trunk/files/csw_catalog_verification.asc 2011-02-19 16:48:45 UTC (rev 13399) @@ -0,0 +1,19 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.4.9 (SunOS) + +mQGiBD3qohgRBAC4L+hRl6MmKwCFDyzKOXoEedB5DWieIb+Pov1XZXnflSKJquZW +SKn8WLzmaVMx7ap65lxatwQ/WzoHy0lRBL5UbZwlufX8Zp0MbDMQ9LV8cpJOpSay +JQxzs/KeYI3CVgvKHNexOGmj25L5uXM4iSD5DELaQC/vHctsL5An+neq6wCglzkS +WbllT3w81iRl4tBUl32NMh8D/287jIPFYvTsRY/srHcbI5NGYPf067IYgB3yvf4d +qaQKUDq8N5+OTm/dTi11dW1XC1Cwj1HMBcMXjA5hvUOdoNWb7mgs2lNpmPcwnyT5 +cOlXUzmz8MoAyZiwyqvXwkR1SeX46ExGQ30Qk7BB9czTvBgdhGOQT6QGO9GD5L1B +8K94A/4nKyDLGNEqoFdKGe4sq+GEm5sSjdd8gy0+ZVj/d3IO/bZhactjYYBVddDQ +7xv0yre/slPZ/U0sntGPd3iAw6kFEi0GPe7eIDDqAZrtyZGKUh9ecquGdAZ4psHN +rb1FsiIKLIdMb8PFYJ9gem5EULAhShsJBJd5mJWK6NlHNuPc3LQnRGlzdHJpYnV0 +aW9uIE1hbmFnZXIgPGRtQGJsYXN0d2F2ZS5vcmc+iFkEExECABkFAj3qohgECwcD +AgMVAgMDFgIBAh4BAheAAAoJEAah7RvhLp0vnkMAoITzYpchxXMyT8umhZEWreh1 +OxfeAJ9Mqv3D+AeeTcYQvo3XpBIDLnA9WIhGBBARAgAGBQI96t6AAAoJEApOj0IT +OtZqk44AnR1f3ylrkqc4ksqxSrYUzFKg4T/aAKC03HXXxcU5VjO1PAEijPUdeV6U +2Q== +=RSdH +-----END PGP PUBLIC KEY BLOCK----- Added: csw/mgar/pkg/cswgpgkey/trunk/files/cswpki =================================================================== --- csw/mgar/pkg/cswgpgkey/trunk/files/cswpki (rev 0) +++ csw/mgar/pkg/cswgpgkey/trunk/files/cswpki 2011-02-19 16:48:45 UTC (rev 13399) @@ -0,0 +1,70 @@ +#!/bin/bash + +set -e +set -u + +PATH=/opt/csw/bin:$PATH + +# Source csw.conf, if it exists +if [ -f /opt/csw/etc/csw.conf ] ; then + . /opt/csw/etc/csw.conf +fi +if [ -f /etc/opt/csw/csw.conf ] ; then + . /etc/opt/csw/csw.conf +fi + + +function usage() { + cat < + Copyright (C) + + 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 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + 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. + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Sat Feb 19 18:03:26 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sat, 19 Feb 2011 17:03:26 +0000 Subject: [csw-devel] SF.net SVN: gar:[13400] csw/mgar/pkg/cswgpgkey/trunk Message-ID: Revision: 13400 http://gar.svn.sourceforge.net/gar/?rev=13400&view=rev Author: bdwalton Date: 2011-02-19 17:03:26 +0000 (Sat, 19 Feb 2011) Log Message: ----------- cswpki/trunk: remove nested directories for ascii armored keys (flat directory instead) Modified Paths: -------------- csw/mgar/pkg/cswgpgkey/trunk/Makefile csw/mgar/pkg/cswgpgkey/trunk/files/cswpki Modified: csw/mgar/pkg/cswgpgkey/trunk/Makefile =================================================================== --- csw/mgar/pkg/cswgpgkey/trunk/Makefile 2011-02-19 16:48:45 UTC (rev 13399) +++ csw/mgar/pkg/cswgpgkey/trunk/Makefile 2011-02-19 17:03:26 UTC (rev 13400) @@ -28,7 +28,7 @@ include gar/category.mk -install-custom: PKIDIR=$(DESTDIR)/etc/opt/csw/pki/csw-gpg +install-custom: PKIDIR=$(DESTDIR)/etc/opt/csw/pki/ install-custom: DOC=$(DESTDIR)/$(docdir)/$(NAME)/ install-custom: BIN=$(DESTDIR)/$(bindir)/ install-custom: VAR=$(DESTDIR)/var/opt/csw/pki Modified: csw/mgar/pkg/cswgpgkey/trunk/files/cswpki =================================================================== --- csw/mgar/pkg/cswgpgkey/trunk/files/cswpki 2011-02-19 16:48:45 UTC (rev 13399) +++ csw/mgar/pkg/cswgpgkey/trunk/files/cswpki 2011-02-19 17:03:26 UTC (rev 13400) @@ -29,7 +29,7 @@ EOF } -PKIDIR=/etc/opt/csw/pki/csw-gpg +PKIDIR=/etc/opt/csw/pki/ import= force=${pki_auto:-no} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Sat Feb 19 18:28:14 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Sat, 19 Feb 2011 17:28:14 +0000 Subject: [csw-devel] SF.net SVN: gar:[13401] csw/mgar/pkg/nano/trunk/Makefile Message-ID: Revision: 13401 http://gar.svn.sourceforge.net/gar/?rev=13401&view=rev Author: skayser Date: 2011-02-19 17:28:14 +0000 (Sat, 19 Feb 2011) Log Message: ----------- nano/trunk: bumped to 2.2.6 Modified Paths: -------------- csw/mgar/pkg/nano/trunk/Makefile Modified: csw/mgar/pkg/nano/trunk/Makefile =================================================================== --- csw/mgar/pkg/nano/trunk/Makefile 2011-02-19 17:03:26 UTC (rev 13400) +++ csw/mgar/pkg/nano/trunk/Makefile 2011-02-19 17:28:14 UTC (rev 13401) @@ -1,5 +1,5 @@ NAME = nano -VERSION = 2.2.5 +VERSION = 2.2.6 CATEGORIES = utils DESCRIPTION = Enhanced clone of the Pico text editor This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From idogan23 at users.sourceforge.net Sat Feb 19 18:31:47 2011 From: idogan23 at users.sourceforge.net (idogan23 at users.sourceforge.net) Date: Sat, 19 Feb 2011 17:31:47 +0000 Subject: [csw-devel] SF.net SVN: gar:[13402] csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk Message-ID: Revision: 13402 http://gar.svn.sourceforge.net/gar/?rev=13402&view=rev Author: idogan23 Date: 2011-02-19 17:31:47 +0000 (Sat, 19 Feb 2011) Log Message: ----------- pm_speedycgiperl: added patch for fixing a memleak issue Modified Paths: -------------- csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/files/0003-mem-leak.patch Modified: csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/Makefile 2011-02-19 17:28:14 UTC (rev 13401) +++ csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/Makefile 2011-02-19 17:31:47 UTC (rev 13402) @@ -9,12 +9,15 @@ much more quickly. endef -PATCHFILES = 0001-Use-Newx-instead-of-deprecated-New.patch +PATCHFILES = 0001-Use-Newx-instead-of-deprecated-New.patch +PATCHFILES += 0003-mem-leak.patch -PACKAGES = CSWpmspeedycgi -CATALOGNAME = pm_speedycgi +PACKAGES = CSWpmspeedycgiperl +CATALOGNAME = pm_speedycgiperl # Don't build the apache/apache2 modules PATCHFILES += build.diff +CHECKPKG_OVERRIDES_CSWpmspeedycgiperl += catalogname-does-not-match-pkgname|pkgname=CSWpmspeedycgiperl|catalogname=pm_speedycgiperl|expected-catalogname=pmspeedycgiperl + include gar/category.mk Added: csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/files/0003-mem-leak.patch =================================================================== --- csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/files/0003-mem-leak.patch (rev 0) +++ csw/mgar/pkg/cpan/CGI-SpeedyCGI/trunk/files/0003-mem-leak.patch 2011-02-19 17:31:47 UTC (rev 13402) @@ -0,0 +1,24 @@ +From a475d176db18c814ba56159a0c7a9ec9eed106ba Mon Sep 17 00:00:00 2001 +From: Ihsan Dogan +Date: Sat, 19 Feb 2011 18:13:46 +0100 +Subject: [PATCH] mem-leak + +--- + src/speedy_backend_main.c | 1 + + 1 files changed, 1 insertions(+), 0 deletions(-) + +diff --git a/src/speedy_backend_main.c b/src/speedy_backend_main.c +index 92e06c6..255ceab 100644 +--- a/src/speedy_backend_main.c ++++ b/src/speedy_backend_main.c +@@ -175,6 +175,7 @@ int main(int argc, char **argv, char **_junk) { + if (!(my_perl = perl_alloc())) + DIE_QUIET("Cannot allocate perl"); + perl_construct(my_perl); ++ PL_use_safe_putenv = 0; + + #ifdef SPEEDY_DEBUG + dont_fork = getenv("SPEEDY_NOPARENT") != NULL; +-- +1.7.3.2 + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From theferret at users.sourceforge.net Sat Feb 19 19:14:19 2011 From: theferret at users.sourceforge.net (theferret at users.sourceforge.net) Date: Sat, 19 Feb 2011 18:14:19 +0000 Subject: [csw-devel] SF.net SVN: gar:[13403] csw/mgar/pkg/TEMPLATES/createpkg/README Message-ID: Revision: 13403 http://gar.svn.sourceforge.net/gar/?rev=13403&view=rev Author: theferret Date: 2011-02-19 18:14:18 +0000 (Sat, 19 Feb 2011) Log Message: ----------- TEMPLATES/createpkg/README update. To help anyone who needs to, understand my "branch" areas a bit better, and also hopefully understand better why I use them in the first place Modified Paths: -------------- csw/mgar/pkg/TEMPLATES/createpkg/README Modified: csw/mgar/pkg/TEMPLATES/createpkg/README =================================================================== --- csw/mgar/pkg/TEMPLATES/createpkg/README 2011-02-19 17:31:47 UTC (rev 13402) +++ csw/mgar/pkg/TEMPLATES/createpkg/README 2011-02-19 18:14:18 UTC (rev 13403) @@ -1,42 +1,77 @@ This is a README for the "createpkg" style templates in the -OpenCSW subversion tree. It gets copied to a brand new directory, when it -is created with "make createpkg-softwarenamehere" +OpenCSW subversion tree. +The purpose of the templates, is to offer a build system in our +subversion tree, that is more simply based on plain Makefiles, than +gar. (which effectively has its own language!) +At the same time, this style aims to be compliant with the high level +standard build API. +We used to have a generically written one, but at the moment I only see, +http://sourceforge.net/apps/trac/gar/wiki/GAR%20Build%20Targets%20Reference + + CONTENTS: Initial Setup - Make Targets - Make Timestamps + Customise the template files + Make Targets + Make Timestamps (Some information on how to reset the build milestones) + Benefits and Drawbacks Initial Setup -------------------- -The first thing you should do, after creating your new directory with +First, get an initial checkout of the subversion tree. it is fine +to have a partial checkout, such as + + +svn co -N https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/pkg +cd pkg +svn co https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/pkg/TEMPLATES + +You can then automatically create a new directory tree for new software, with + "make createpkg-softwarenamehere" -is to cd into the directory and do - svn status +this will create [pkg]/softwarenamehere/trunk, copy in some templated +useful files, and set it up to be ready for svn checkin. -With this, you will notice that no files in the directory are actually checked -into subversion yet. You should edit (or remove) the files as you deem -apropriate. In particular, copy the speciifc Makefile.xxx to Makefile, and +Dont worry, this does not actually attempt to create anything in the public +tree. it will only do that, if you did an svn commit + +[ if you want to do things manually, or you only have this EMPLATES directory, + see ./copy_templates or ./generate_branch ] + +Customise the template files +----------------------------- + +cd into [yoursoftware/trunk] +You should edit (or remove) the files present as you deem +apropriate. In particular, copy the specific Makefile.xxx to Makefile, and remove the others if you wish. Then, svn add filename(s) the ones you want to keep in the repository. +The makefiles are current a work in progress. The most fully developed +at the moment is "Makefile.lib32" + If you are doing a general-case binary build package, then you will next need to do the following: 1. Set up your environment variables as appropriate, and/or set the appropriate variables in Makefile -2. (if 'gmake extract' does not work), - mkdir build, then extract the source tree of whatever you are building, - under the build dir. +(2) Make extra sure the URLs, etc in the Makefile are set to + properly download the appropriate source file. if you alread have a copy, + make sure it is in the local src cache (by default, /home/src) -4. gmake +3. gmake + This should automatically do a "gmake fetch", + "gmake extract" (which creates a build subdir), and then + a general make for the softwar. + You also have a choice of some optional subtargets, such as make {configure,build,package,clean,reallyclean}. See "Make Targets" lower down for more details. @@ -60,10 +95,8 @@ Make Targets -------------------- -The makefiles are current a work in progress. The most fully developed -at the moment is "Makefile.lib". -Currently supported makefile targets are: +Currently supported makefile targets by the full-length makefiles, are: * extract * sparc-32 sparc64 i386-32 i386-64 @@ -96,3 +129,27 @@ If you wish to force a rebuild of a target, remove the corresponding ".done" file, and do the make again. +Benefits and Drawbacks +-------------------- +Why does this method even exist, separate from the gar build method? +Some reasons follow: + 1. It's pure Makefile. All maintainers should already be familiar + with tweaking Makefiles, so it is much, much easier for + a maintainer to fully understand (and modify, if needed). + In contrast, there are very few people who understand gar in its + entirety + 2. It's a single Makefile, which makes it easier to figure out + "what is going on?" + 3. It's selfcontained. Everything is in the one directory. That means + you can just copy over the one bit, and you know you have a working + build tree, no matter what someone else does elsewhere in our svn tree. + 3.1 This also means, you can safely do a small, relative checkout of + the svn tree, rather than "the whole tree" + +Drawbacks: + The self-contained nature, also means that improvements and enhancements + in the original template file, do not get automatically distributed out to + older versions. + On the other hand, the older version is still guaranteed to "work", so + its not really that important. + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From theferret at users.sourceforge.net Sat Feb 19 19:16:29 2011 From: theferret at users.sourceforge.net (theferret at users.sourceforge.net) Date: Sat, 19 Feb 2011 18:16:29 +0000 Subject: [csw-devel] SF.net SVN: gar:[13404] csw/mgar/pkg/TEMPLATES/createpkg Message-ID: Revision: 13404 http://gar.svn.sourceforge.net/gar/?rev=13404&view=rev Author: theferret Date: 2011-02-19 18:16:29 +0000 (Sat, 19 Feb 2011) Log Message: ----------- TEMPLATES tweak. better comments are always good. plus fixed a bug Modified Paths: -------------- csw/mgar/pkg/TEMPLATES/createpkg/copy_template csw/mgar/pkg/TEMPLATES/createpkg/generate_pkginfo Added Paths: ----------- csw/mgar/pkg/TEMPLATES/createpkg/Makefile.simple csw/mgar/pkg/TEMPLATES/createpkg/generate_branch Removed Paths: ------------- csw/mgar/pkg/TEMPLATES/createpkg/Makefile Deleted: csw/mgar/pkg/TEMPLATES/createpkg/Makefile =================================================================== --- csw/mgar/pkg/TEMPLATES/createpkg/Makefile 2011-02-19 18:14:18 UTC (rev 13403) +++ csw/mgar/pkg/TEMPLATES/createpkg/Makefile 2011-02-19 18:16:29 UTC (rev 13404) @@ -1,60 +0,0 @@ -#This Makefile originally generated from a template under -# pkg/TEMPLATES/createpkg -# You will most likely have to use GNU make to use it. - - -#Uncomment one of these definitions. The -b invokation, -# is suitable for use with small packages, where you want to have a few files -# in your top level src directory. It is also suitable for -# "relocateable" packages. see the createpkg docs for more details. -#CREATEPKG=createpkg -b `pwd` -CREATEPKG=createpkg -r `pwd`/build/*/cswstage - - -BUILDDIR=build/* - - - -STDFILES=pkginfo copyright prototype -FILES= - -all: build package - - -build: build/.config.done - (cd $(BUILDDIR) ; \ - $(MAKE) ; \ - stagepkg ) - - -# dummy target for configure -build/.config.done: - @echo Configuring with: - @echo CC=$(CC) $(CFLAGS) - @echo CXX=$(CXX) $(CXXFLAGS) - (cd $(BUILDDIR) ; \ - test -f ../../patchfile.preconf && \ - gpatch -p0 <../../patchfile.preconf ; \ - ./configure --prefix=/opt/csw ; \ - if test -f ../../patchfile.postconf ; then \ - gpatch -p0 <../../patchfile.postconf ; fi) - touch build/.config.done - - -# I tried depending this on $(BUILDDIR)/config.log but that didnt stick -configure: build/.config.done - -package: $(STDFILE) $(FILES) build - $(CREATEPKG) - - - -pkgclean: - rm -f *.pkg.gz package - -clean: pkgclean - cd $(BUILDDIR) && make clean - -reallyclean: clean - rm -f $BUILDDIR/config.log $BUILDDIR/config.cache $BUILDDIR/config.status - rm -f build/.config.done Copied: csw/mgar/pkg/TEMPLATES/createpkg/Makefile.simple (from rev 11443, csw/mgar/pkg/TEMPLATES/createpkg/Makefile) =================================================================== --- csw/mgar/pkg/TEMPLATES/createpkg/Makefile.simple (rev 0) +++ csw/mgar/pkg/TEMPLATES/createpkg/Makefile.simple 2011-02-19 18:16:29 UTC (rev 13404) @@ -0,0 +1,70 @@ +#This Makefile originally generated from a template under +# pkg/TEMPLATES/createpkg +# You will most likely have to use GNU make to use it. +# The "Makefile.simple" variant, is for software that is +# absolutely trivial. For things that dont need compiling, or even +# downloading, but just live in the svn tree itself. +# To Use: +# 1. Mention what files you want to include, in the FILES var below. +# 2. Create a prototype file by hand, and a copyright file +# 3. Edit pkginfo file appropriately +# 4. Create depend file, or remove it from STDFILES below +# 5. type gmake + +# You should then have a package in the current directory + +#Uncomment one of these definitions. The -b invokation, +# is suitable for use with small packages, where you want to have a few files +# in your top level src directory. It is also suitable for +# "relocateable" packages. see the createpkg docs for more details. +#CREATEPKG=createpkg -b `pwd` +CREATEPKG=createpkg -r `pwd`/build/*/cswstage + + + + +FILES=your-files-here + +### Dont normally check stuff below here. +STDFILES=pkginfo copyright prototype +BUILDDIR=build/* + +all: build package + + +build: build/.config.done + (cd $(BUILDDIR) ; \ + $(MAKE) ; \ + stagepkg ) + + +# This is what does the actual "work" for "build configure" +build/.config.done: + @echo Configuring with: + @echo CC=$(CC) $(CFLAGS) + @echo CXX=$(CXX) $(CXXFLAGS) + (cd $(BUILDDIR) ; \ + test -f ../../patchfile.preconf && \ + gpatch -p0 <../../patchfile.preconf ; \ + ./configure --prefix=/opt/csw ; \ + if test -f ../../patchfile.postconf ; then \ + gpatch -p0 <../../patchfile.postconf ; fi) + touch build/.config.done + + +# Friendly name, to trigger the "real" target, above +configure: build/.config.done + +package: $(STDFILE) $(FILES) build + $(CREATEPKG) + + +pkgclean: + rm -f *.pkg.gz package + +clean: pkgclean + cd $(BUILDDIR) && make clean + +reallyclean: clean + rm -f $BUILDDIR/config.log $BUILDDIR/config.cache $BUILDDIR/config.status + rm -f build/.config.done Modified: csw/mgar/pkg/TEMPLATES/createpkg/copy_template =================================================================== --- csw/mgar/pkg/TEMPLATES/createpkg/copy_template 2011-02-19 18:14:18 UTC (rev 13403) +++ csw/mgar/pkg/TEMPLATES/createpkg/copy_template 2011-02-19 18:16:29 UTC (rev 13404) @@ -28,13 +28,6 @@ -MY_SVN_DIR=`svn info| awk '$1=="URL:"{print $2}'` -if [[ "$MY_SVN_DIR" == "" ]] ; then - print ERROR: expected to be within subversion tree somewhere - print cannot continue - exit 1 -fi - $SVN mkdir --parents $DESTDIR svn propset svn:ignore -F /dev/fd/0 $DESTDIR <$DESTDIR/pkginfo -print "OPENCSW_REPOSITORY=$MY_SVN_DIR/$DESTDIR" >>$DESTDIR/pkginfo print "" print Created directory $1 locally, and in subversion Added: csw/mgar/pkg/TEMPLATES/createpkg/generate_branch =================================================================== --- csw/mgar/pkg/TEMPLATES/createpkg/generate_branch (rev 0) +++ csw/mgar/pkg/TEMPLATES/createpkg/generate_branch 2011-02-19 18:16:29 UTC (rev 13404) @@ -0,0 +1,86 @@ +#!/bin/ksh -p + +# In contract to copy_template, this script is meant to be +# called in a pre-existing subtree. +# (eg: inside a mgar/pkg/softname directory) +# It is designed for creating a branch, rather than setting up "trunk" +# Note that unlike copy_template, it does NOT do any kind of svn +# by default +# (unless you use the -s flag) + +function usage { + print Usage: $0 [-s] new-directory + print This script creates a new directory, svn branch style. + print It presumes you are already in a directory with the name + print of the software you wish to packge. + print It will not do any svn ops by default unless you use -s + + exit 1 +} + +if [[ $? = "-s" ]] ; then + SVN=svn; shift +fi + +case $1 in + ""|-*) + usage + ;; +esac + + +#note that if you want to use 'real' subversion, this must be +# exactly "svn", because of checks lower down +SVN=${SVN:-echo FAKEsvn} + +if [ "$SVN" = "svn" ] ; then +MKDIR="$SVN mkdir --parents" +else +echo Note: SVN is not 'svn'. So skipping it. +MKDIR=mkdir +fi + + +template_dir=`dirname $0` +DESTDIR=$1 +if [[ -d $DESTDIR ]] ; then + print ERROR $DESTDIR exists + exit 1 +fi + +currdir=`basename $PWD` + +$MKDIR $DESTDIR + +$SVN propset svn:ignore -F /dev/fd/0 $DESTDIR <$DESTDIR/pkginfo + +# This is done by generate_pkginfo now +# Not very inteligently, but it is done anyway. +#print "OPENCSW_REPOSITORY=$MY_SVN_DIR/$DESTDIR" >>$DESTDIR/pkginfo + +print "" +print Created directory $1 locally, and in subversion +print Things you still need to do: +print "" +print " * Edit the pkginfo file fully" +print " * Create an appropriate copyright file" +print " * Choose ONE of the Makefiles, and remove the other" +print " * Edit the Makefile to have any required extra flags, etc" +print " * Fill in the rest of the prototype file" + +print "" +print " (and dont forget to check everything in when you are done!)" + + Property changes on: csw/mgar/pkg/TEMPLATES/createpkg/generate_branch ___________________________________________________________________ Added: svn:executable + * Modified: csw/mgar/pkg/TEMPLATES/createpkg/generate_pkginfo =================================================================== --- csw/mgar/pkg/TEMPLATES/createpkg/generate_pkginfo 2011-02-19 18:14:18 UTC (rev 13403) +++ csw/mgar/pkg/TEMPLATES/createpkg/generate_pkginfo 2011-02-19 18:16:29 UTC (rev 13404) @@ -6,7 +6,7 @@ print PKG=CSW$1 print NAME=$1 - description goes here -print VERSION=1.0,REV=YYYY.M.DD +print VERSION=1.0,REV=YYYY.MM.DD print CATEGORY=application print VENDOR=http://www.SOURCE-URL/ packaged for CSW by $FULLNAME print HOTLINE=http://www.opencsw.org/bugtrack/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From theferret at users.sourceforge.net Sat Feb 19 19:24:14 2011 From: theferret at users.sourceforge.net (theferret at users.sourceforge.net) Date: Sat, 19 Feb 2011 18:24:14 +0000 Subject: [csw-devel] SF.net SVN: gar:[13405] csw/mgar/pkg/TEMPLATES/createpkg/README Message-ID: Revision: 13405 http://gar.svn.sourceforge.net/gar/?rev=13405&view=rev Author: theferret Date: 2011-02-19 18:24:14 +0000 (Sat, 19 Feb 2011) Log Message: ----------- TEMPLATES README. added to "Drawbacks" section Modified Paths: -------------- csw/mgar/pkg/TEMPLATES/createpkg/README Modified: csw/mgar/pkg/TEMPLATES/createpkg/README =================================================================== --- csw/mgar/pkg/TEMPLATES/createpkg/README 2011-02-19 18:16:29 UTC (rev 13404) +++ csw/mgar/pkg/TEMPLATES/createpkg/README 2011-02-19 18:24:14 UTC (rev 13405) @@ -147,9 +147,11 @@ the svn tree, rather than "the whole tree" Drawbacks: - The self-contained nature, also means that improvements and enhancements + 1. The self-contained nature, also means that improvements and enhancements in the original template file, do not get automatically distributed out to older versions. On the other hand, the older version is still guaranteed to "work", so its not really that important. + 2. Fewer fully automated hooks for "fancy stuff". Requires manual tweaking + of the prototype file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sat Feb 19 19:40:53 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sat, 19 Feb 2011 18:40:53 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[298] web/wordpresscsw/wp-content/themes/opencsw Message-ID: Revision: 298 http://opencsw.svn.sourceforge.net/opencsw/?rev=298&view=rev Author: wbonnet Date: 2011-02-19 18:40:53 +0000 (Sat, 19 Feb 2011) Log Message: ----------- Add last activity to maintainer page Modified Paths: -------------- web/wordpresscsw/wp-content/themes/opencsw/maintainer.php web/wordpresscsw/wp-content/themes/opencsw/qaDAO.php Modified: web/wordpresscsw/wp-content/themes/opencsw/maintainer.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/maintainer.php 2011-02-19 15:59:19 UTC (rev 297) +++ web/wordpresscsw/wp-content/themes/opencsw/maintainer.php 2011-02-19 18:40:53 UTC (rev 298) @@ -8,13 +8,16 @@ connect(); + $qaDAO->connect(); // Retrieve the information from the database $maintainerLogin = $wp_query->get('maintainerName'); $arrayInfo = $maintDAO->getMaintainerInformation($maintainerLogin); + $lastActivityInfo = $qaDAO->getMaintainerLastUnstableSubmitDate($maintainerLogin); $maintainerFullName = $arrayInfo[1] ; $maintainerStatus = $arrayInfo[2] ; @@ -50,6 +53,9 @@ print "\n" ; print "Bug tracking
    List of open/relevant bugs for " . $maintainerFullName . "\n" ; print "\n" ; + print "\n" ; + print "Last activity date" . $lastActivityInfo[0]["software"] . " has been added to unstable on " . $lastActivityInfo[0]["date"] . "\n" ; + print "\n" ; print ""; print ""; Modified: web/wordpresscsw/wp-content/themes/opencsw/qaDAO.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/qaDAO.php 2011-02-19 15:59:19 UTC (rev 297) +++ web/wordpresscsw/wp-content/themes/opencsw/qaDAO.php 2011-02-19 18:40:53 UTC (rev 298) @@ -463,5 +463,35 @@ // Return the array to the caller return $output; // Return the array to the caller } + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Get the last submission date of a maintainer. This is the date he last submitted to unstable + // + // ----------------------------------------------------------------------------------------------------------------------- + function getMaintainerLastUnstableSubmitDate($maintName) { + + // Define the query used to retrieve the packages from the database + $sqlQuery = "select p.software , h.HIST_VERSION_DATE from UWATCH_VERSION_HISTORY as h , UWATCH_PKG_VERSION as v , packages as p where p.maintlogin = '" . $maintName . "' and p.software = v.PKG_CATALOGNAME and v.ID_PKG = h.ID_PKG and h.HIST_VERSION_TYPE = 'unstable' order by h.HIST_VERSION_DATE desc limit 1 ; "; + + // Execute the query to retrieve the row to update + $this->execQuery($sqlQuery); + + // Return value + $output = array(); // Array used to store the output + $idxCount = 0; // Index on the current line in the array + + // Check if there is a result + while ($row = mysql_fetch_row($this->result)) { + $output[$idxCount] = array( // Copy the current row into the array of results + "software" => $row[0], // Copy the field into the array of results + "date" => $row[1] // Copy the field into the array of results + ); + $idxCount++; // Increase the index + } + + // Return the array to the caller + return $output; // Return the array to the caller + } } ?> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 20 09:37:30 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 20 Feb 2011 08:37:30 +0000 Subject: [csw-devel] SF.net SVN: gar:[13406] csw/mgar/pkg/java/ajcconfig/trunk/Makefile Message-ID: Revision: 13406 http://gar.svn.sourceforge.net/gar/?rev=13406&view=rev Author: wbonnet Date: 2011-02-20 08:37:30 +0000 (Sun, 20 Feb 2011) Log Message: ----------- java/ajcconfig/trunk remove CSWajclang dependency to break cyclic dependency Modified Paths: -------------- csw/mgar/pkg/java/ajcconfig/trunk/Makefile Modified: csw/mgar/pkg/java/ajcconfig/trunk/Makefile =================================================================== --- csw/mgar/pkg/java/ajcconfig/trunk/Makefile 2011-02-19 18:24:14 UTC (rev 13405) +++ csw/mgar/pkg/java/ajcconfig/trunk/Makefile 2011-02-20 08:37:30 UTC (rev 13406) @@ -31,7 +31,7 @@ SPKG_DESC_CSWajcconfigdoc = $(DESCRIPTION) documentation package # Defines dependencies -RUNTIME_DEP_PKGS_CSWajcconfig = CSWajclogging CSWajclang CSWajcdigester CSWajccollect +RUNTIME_DEP_PKGS_CSWajcconfig = CSWajclogging CSWajcdigester CSWajccollect # Defines package content PKGFILES_CSWajcconfig += $(prefix)/share/java/.* This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 20 09:43:18 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 20 Feb 2011 08:43:18 +0000 Subject: [csw-devel] SF.net SVN: gar:[13407] csw/mgar/pkg/java/ajcconfig/trunk/Makefile Message-ID: Revision: 13407 http://gar.svn.sourceforge.net/gar/?rev=13407&view=rev Author: wbonnet Date: 2011-02-20 08:43:18 +0000 (Sun, 20 Feb 2011) Log Message: ----------- java/ajcconfig/trunk remove CSWajclang dependency to break cyclic dependency Modified Paths: -------------- csw/mgar/pkg/java/ajcconfig/trunk/Makefile Modified: csw/mgar/pkg/java/ajcconfig/trunk/Makefile =================================================================== --- csw/mgar/pkg/java/ajcconfig/trunk/Makefile 2011-02-20 08:37:30 UTC (rev 13406) +++ csw/mgar/pkg/java/ajcconfig/trunk/Makefile 2011-02-20 08:43:18 UTC (rev 13407) @@ -26,6 +26,8 @@ LICENSE = LICENSE.txt +CHECKPKG_OVERRIDES_CSWajcconfigdoc += file-with-bad-content|/usr/local|root/opt/csw/share/doc/commons-configuration/xref-test/org/apache/commons/configuration/InterpolationTestHelper.html + # Defines package description SPKG_DESC_CSWajcconfig = $(DESCRIPTION) SPKG_DESC_CSWajcconfigdoc = $(DESCRIPTION) documentation package This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 20 10:18:04 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 20 Feb 2011 09:18:04 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[299] web/wordpresscsw/wp-content/themes/opencsw/qa.php Message-ID: Revision: 299 http://opencsw.svn.sourceforge.net/opencsw/?rev=299&view=rev Author: wbonnet Date: 2011-02-20 09:18:03 +0000 (Sun, 20 Feb 2011) Log Message: ----------- Push maintainer activity QA page Modified Paths: -------------- web/wordpresscsw/wp-content/themes/opencsw/qa.php Modified: web/wordpresscsw/wp-content/themes/opencsw/qa.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/qa.php 2011-02-19 18:40:53 UTC (rev 298) +++ web/wordpresscsw/wp-content/themes/opencsw/qa.php 2011-02-20 09:18:03 UTC (rev 299) @@ -32,6 +32,12 @@ Retired maintainers + The following list displays the last activity overview of each maintainer. The purpose of this QA page is to detected maintainers who potentially retired."; +

    Packages QA pages

    The following link displays the complete list of orphaned packages. Orphaned packages are packages without maintainers, or belonging to a retired maintainer. These packages owned by retired maintainers are available for takeover.
      This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 20 10:31:44 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 20 Feb 2011 09:31:44 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[300] web/wordpresscsw/wp-content/plugins/opencsw/ opencsw.php Message-ID: Revision: 300 http://opencsw.svn.sourceforge.net/opencsw/?rev=300&view=rev Author: wbonnet Date: 2011-02-20 09:31:43 +0000 (Sun, 20 Feb 2011) Log Message: ----------- Push maintainer activity QA page Modified Paths: -------------- web/wordpresscsw/wp-content/plugins/opencsw/opencsw.php Modified: web/wordpresscsw/wp-content/plugins/opencsw/opencsw.php =================================================================== --- web/wordpresscsw/wp-content/plugins/opencsw/opencsw.php 2011-02-20 09:18:03 UTC (rev 299) +++ web/wordpresscsw/wp-content/plugins/opencsw/opencsw.php 2011-02-20 09:31:43 UTC (rev 300) @@ -80,6 +80,7 @@ '^qa/packages/gar/missing$' => 'index.php?qaGarMissing=full' , '^qa/maintainers/retired' => 'index.php?qaRetiredMaintainers=full' , + '^qa/maintainers/activity' => 'index.php?qaMaintainersActivity=full' , '^qa/packages?/(.+)' => 'index.php?qaPackageName=' . $wp_rewrite->preg_index(1) , '^qa/maintainers?/(.+)' => 'index.php?qaMaintainerName=' . $wp_rewrite->preg_index(1) , @@ -110,6 +111,7 @@ $qvars[] = 'qaMaintainerName'; $qvars[] = 'qaMaintainers'; $qvars[] = 'qaRetiredMaintainers'; + $qvars[] = 'qaMaintainersActivity'; $qvars[] = 'qaOrphanedPackages'; $qvars[] = 'maintainerFullName'; $qvars[] = 'composeEmail'; @@ -328,6 +330,18 @@ } } + // Test if the arg qaMaintainersActivity is in the query string + if ( $wp_query->get('qaMaintainersActivity') ) + { + // Yes, thus we are display a detailled package page, not the full list + if (file_exists( TEMPLATEPATH . '/qa-maintainers-activity.php' )) + { + // File exist, thus lets include the template + include( TEMPLATEPATH . '/qa-maintainers-activity.php' ); + exit; + } + } + // Test if the arg qaRetiredMaintainers is in the query string if ( $wp_query->get('qaRetiredMaintainers') ) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 20 10:32:16 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 20 Feb 2011 09:32:16 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[301] web/wordpresscsw/wp-content/themes/opencsw/ qa-maintainers-activity.php Message-ID: Revision: 301 http://opencsw.svn.sourceforge.net/opencsw/?rev=301&view=rev Author: wbonnet Date: 2011-02-20 09:32:16 +0000 (Sun, 20 Feb 2011) Log Message: ----------- Push maintainer activity QA page Added Paths: ----------- web/wordpresscsw/wp-content/themes/opencsw/qa-maintainers-activity.php Added: web/wordpresscsw/wp-content/themes/opencsw/qa-maintainers-activity.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/qa-maintainers-activity.php (rev 0) +++ web/wordpresscsw/wp-content/themes/opencsw/qa-maintainers-activity.php 2011-02-20 09:32:16 UTC (rev 301) @@ -0,0 +1,63 @@ + + + +connect(); + $qaDAO->connect(); + + print "
      "; + print "
      "; + print "
      "; + print "

      Last maintainer activity overview

      "; + print "
      "; + print "The following list displays the last activity overview of each maintainer. The purpose of this QA page is to detected maintainers who potentially retired. The date display for each maintainer is the last time a package from this maintainer has been added to unstable catalog. Maintainers may have submited package in the meantime. Activity date is updated only when pacakge is available in the unstable catalog, and not when a package is submited."; + print "
      "; + print "
      "; + print "Please note that since this page does not take in account all the possible form of activity of a maintainer, it is only informative. Meanwhile, publishing date in unstable catalog is a fairly good indicator if it is considered over a few months. Maintainers with no package release over several months are being contacted by the board for status update." ; + + // Retrieve the statistics from the database + $arrayMaint = $maintDAO->getListOfActiveMaintainers(); + + // Disconnect from the database + $maintDAO->disconnect(); + + print "

      Maintainers ( " . count($arrayMaint) . " )

      "; + print ""; + print ""; + print ""; + print "\n" ; + print ""; + $totalPkg = 0; + for( $i = 0 ; $i < count($arrayMaint) ; $i++) { + $maint = $arrayMaint[$i] ; // Get the current row + $lastActivityInfo = $qaDAO->getMaintainerLastUnstableSubmitDate($maint["maintainer"]); + print ""; + if ( $lastActivityInfo[0]["date"] == "") { + print "\n"; + } else { + print "\n"; + } + } + + // Close table + print ""; + print "
      NameLast activity datePackage
      " . $maint["fullname"] . "-The maintainer has no package" . $maint["fullname"] . "" . $lastActivityInfo[0]["date"] . "" . $lastActivityInfo[0]["software"] . "
      "; + print "
      "; + print "
      "; + print "
      "; + print "
      "; + print "
      "; + print "
      "; +?> + + + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From idogan23 at users.sourceforge.net Sun Feb 20 10:48:24 2011 From: idogan23 at users.sourceforge.net (idogan23 at users.sourceforge.net) Date: Sun, 20 Feb 2011 09:48:24 +0000 Subject: [csw-devel] SF.net SVN: gar:[13408] csw/mgar/pkg/unbound/branches/ihsan/ Message-ID: Revision: 13408 http://gar.svn.sourceforge.net/gar/?rev=13408&view=rev Author: idogan23 Date: 2011-02-20 09:48:23 +0000 (Sun, 20 Feb 2011) Log Message: ----------- unbound: new branch Added Paths: ----------- csw/mgar/pkg/unbound/branches/ihsan/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Sun Feb 20 10:56:30 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Sun, 20 Feb 2011 09:56:30 +0000 Subject: [csw-devel] SF.net SVN: gar:[13409] csw/mgar/pkg Message-ID: Revision: 13409 http://gar.svn.sourceforge.net/gar/?rev=13409&view=rev Author: skayser Date: 2011-02-20 09:56:30 +0000 (Sun, 20 Feb 2011) Log Message: ----------- ghex: initial commit Added Paths: ----------- csw/mgar/pkg/ghex/ csw/mgar/pkg/ghex/branches/ csw/mgar/pkg/ghex/tags/ csw/mgar/pkg/ghex/trunk/ csw/mgar/pkg/ghex/trunk/Makefile csw/mgar/pkg/ghex/trunk/checksums csw/mgar/pkg/ghex/trunk/files/ Property changes on: csw/mgar/pkg/ghex/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/ghex/trunk/Makefile =================================================================== --- csw/mgar/pkg/ghex/trunk/Makefile (rev 0) +++ csw/mgar/pkg/ghex/trunk/Makefile 2011-02-20 09:56:30 UTC (rev 13409) @@ -0,0 +1,24 @@ +# TODO (release-critical prefixed with !, non release-critical with *) +# ! Build fails +# libtool: link: cannot find the library `/opt/csw/lib/libgconf-2.la' or unhandled argument `/opt/csw/lib/libgconf-2.la' +# +NAME = ghex +VERSION = 2.24.0 +CATEGORIES = utils + +DESCRIPTION = The GNOME binary hex editor +define BLURB + Long description +endef + +MASTER_SITES = http://ftp.acc.umu.se/pub/GNOME/sources/ghex/2.24/ +DISTFILES = $(DISTNAME).tar.gz +UFILES_REGEX = (\d+(?:\.\d+)*) +UPSTREAM_MASTER_SITES = http://ftp.acc.umu.se/pub/GNOME/sources/ghex/ + +CONFIGURE_ARGS = $(DIRPATHS) + +include gar/category.mk + +# GNU gettext required +PATH:=$(prefix)/gnu:$(PATH) Property changes on: csw/mgar/pkg/ghex/trunk/Makefile ___________________________________________________________________ Added: svn:keywords + Id Added: csw/mgar/pkg/ghex/trunk/checksums =================================================================== --- csw/mgar/pkg/ghex/trunk/checksums (rev 0) +++ csw/mgar/pkg/ghex/trunk/checksums 2011-02-20 09:56:30 UTC (rev 13409) @@ -0,0 +1 @@ +77f953fa584045b88aef327f3a05d974 ghex-2.24.0.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Sun Feb 20 12:15:03 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Sun, 20 Feb 2011 11:15:03 +0000 Subject: [csw-devel] SF.net SVN: gar:[13410] csw/mgar/pkg/ghex/trunk/Makefile Message-ID: Revision: 13410 http://gar.svn.sourceforge.net/gar/?rev=13410&view=rev Author: dmichelsen Date: 2011-02-20 11:15:02 +0000 (Sun, 20 Feb 2011) Log Message: ----------- ghex: Add some tweaks, checkpkg overrides missing Modified Paths: -------------- csw/mgar/pkg/ghex/trunk/Makefile Modified: csw/mgar/pkg/ghex/trunk/Makefile =================================================================== --- csw/mgar/pkg/ghex/trunk/Makefile 2011-02-20 09:56:30 UTC (rev 13409) +++ csw/mgar/pkg/ghex/trunk/Makefile 2011-02-20 11:15:02 UTC (rev 13410) @@ -8,17 +8,46 @@ DESCRIPTION = The GNOME binary hex editor define BLURB - Long description endef -MASTER_SITES = http://ftp.acc.umu.se/pub/GNOME/sources/ghex/2.24/ -DISTFILES = $(DISTNAME).tar.gz -UFILES_REGEX = (\d+(?:\.\d+)*) -UPSTREAM_MASTER_SITES = http://ftp.acc.umu.se/pub/GNOME/sources/ghex/ +MASTER_SITES = $(GNOME_MIRROR) +DISTFILES = $(DISTNAME).tar.gz +PACKAGES += CSWghex +CATALOGNAME_CSWghex = ghex +SPKG_DESC_CSWghex = The GNOME binary hex editor +RUNTIME_DEP_PKGS_CSWghex += CSWlibgnomeui2-0 +RUNTIME_DEP_PKGS_CSWghex += CSWbonobo2 +RUNTIME_DEP_PKGS_CSWghex += CSWlibatk +RUNTIME_DEP_PKGS_CSWghex += CSWlibgnomecanvas +RUNTIME_DEP_PKGS_CSWghex += CSWglib2 +RUNTIME_DEP_PKGS_CSWghex += CSWlibgnome +RUNTIME_DEP_PKGS_CSWghex += CSWlibgnomeprintui +RUNTIME_DEP_PKGS_CSWghex += CSWggettextrt +RUNTIME_DEP_PKGS_CSWghex += CSWfconfig +RUNTIME_DEP_PKGS_CSWghex += CSWgconf2 +RUNTIME_DEP_PKGS_CSWghex += CSWorbit2 +RUNTIME_DEP_PKGS_CSWghex += CSWlibpopt +RUNTIME_DEP_PKGS_CSWghex += CSWzlib +RUNTIME_DEP_PKGS_CSWghex += CSWftype2 +RUNTIME_DEP_PKGS_CSWghex += CSWpango +RUNTIME_DEP_PKGS_CSWghex += CSWlibbonoboui +RUNTIME_DEP_PKGS_CSWghex += CSWgnomevfs2 +RUNTIME_DEP_PKGS_CSWghex += CSWgtk2 +RUNTIME_DEP_PKGS_CSWghex += CSWlibcairo +RUNTIME_DEP_PKGS_CSWghex += CSWlibxml2 +RUNTIME_DEP_PKGS_CSWghex += CSWlibgnomeprint +RUNTIME_DEP_PKGS_CSWghex += CSWlibart + +STRIP_LIBTOOL = 1 + +EXTRA_LINKER_FLAGS = -lm + CONFIGURE_ARGS = $(DIRPATHS) +TEST_TARGET = check + include gar/category.mk # GNU gettext required -PATH:=$(prefix)/gnu:$(PATH) +PATH := $(prefix)/gnu:$(PATH) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From rthurner at users.sourceforge.net Sun Feb 20 12:50:10 2011 From: rthurner at users.sourceforge.net (rthurner at users.sourceforge.net) Date: Sun, 20 Feb 2011 11:50:10 +0000 Subject: [csw-devel] SF.net SVN: gar:[13411] csw/mgar/pkg/php5/trunk/Makefile Message-ID: Revision: 13411 http://gar.svn.sourceforge.net/gar/?rev=13411&view=rev Author: rthurner Date: 2011-02-20 11:50:09 +0000 (Sun, 20 Feb 2011) Log Message: ----------- php5: correct checkpkg errors Modified Paths: -------------- csw/mgar/pkg/php5/trunk/Makefile Modified: csw/mgar/pkg/php5/trunk/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/Makefile 2011-02-20 11:15:02 UTC (rev 13410) +++ csw/mgar/pkg/php5/trunk/Makefile 2011-02-20 11:50:09 UTC (rev 13411) @@ -1,9 +1,3 @@ -# TODO (release-critical prefixed with !, non release-critical with *) -# -# ! Re-enable the integrated PHP extension builds. This either requires -# performance enhancements to GAR or a completely different approach. -# Details documented below. -# NAME = php5 VERSION = 5.3.5 CATEGORIES = lang @@ -38,10 +32,9 @@ SPKG_DESC_CSWphp5 = A High-Level Scripting Language CATALOGNAME_CSWphp5devel = php5_devel SPKG_DESC_CSWphp5devel = Development files for php5 -RUNTIME_DEP_PKGS_CSWphp5 = CSWexpat CSWggettextrt CSWiconv CSWpng CSWsqlite -RUNTIME_DEP_PKGS_CSWphp5 += CSWlibxml2 CSWzlib CSWmysql5rt CSWxpm CSWt1lib -RUNTIME_DEP_PKGS_CSWphp5 += CSWftype2 CSWgd CSWjpeg CSWlibmm -RUNTIME_DEP_PKGS_CSWphp5devel = CSWphp5 +RUNTIME_DEP_PKGS_CSWphp5 = CSWiconv +RUNTIME_DEP_PKGS_CSWphp5 += CSWlibxml2 CSWzlib +RUNTIME_DEP_PKGS_CSWphp5 += CSWlibmm CSWapache2 PKGFILES_CSWphp5devel = $(bindir)/php-config PKGFILES_CSWphp5devel += $(bindir)/phpize @@ -99,5 +92,32 @@ SKIPTEST = 1 #ENABLE_CHECK = 0 +CHECKPKG_OVERRIDES_CSWphp5 += file-with-bad-content|/usr/local|root/opt/csw/apache/libexec/libphp5.so +CHECKPKG_OVERRIDES_CSWphp5 += file-with-bad-content|/usr/local|root/opt/csw/apache2/libexec/libphp5.so +CHECKPKG_OVERRIDES_CSWphp5 += file-with-bad-content|/usr/local|root/opt/csw/php5/bin/php +CHECKPKG_OVERRIDES_CSWphp5 += file-with-bad-content|/usr/local|root/opt/csw/php5/bin/php-cgi +CHECKPKG_OVERRIDES_CSWphp5 += file-with-bad-content|/usr/local|root/opt/csw/php5/lib/php.ini.CSW +CHECKPKG_OVERRIDES_CSWphp5 += file-with-bad-content|/usr/local|root/opt/csw/php5/lib/php/build/phpize.m4 +CHECKPKG_OVERRIDES_CSWphp5 += file-with-bad-content|/usr/local|root/opt/csw/php5/lib/php/build/libtool.m4 +CHECKPKG_OVERRIDES_CSWphp5 += file-with-bad-content|/usr/local|root/opt/csw/php5/lib/php/build/shtool +CHECKPKG_OVERRIDES_CSWphp5 += file-with-bad-content|/usr/local|root/opt/csw/php5/lib/php/build/acinclude.m4 +CHECKPKG_OVERRIDES_CSWphp5 += file-with-bad-content|/usr/local|root/opt/csw/php5/lib/php/PEAR/Config.php +CHECKPKG_OVERRIDES_CSWphp5 += file-with-bad-content|/usr/local|root/opt/csw/php5/man/man1/php-config.1 +CHECKPKG_OVERRIDES_CSWphp5 += license-missing|/opt/csw/share/doc/php5/license +CHECKPKG_OVERRIDES_CSWphp5 += bad-rpath-entry|/usr/ucblib|opt/csw/apache/libexec/libphp5.so +CHECKPKG_OVERRIDES_CSWphp5 += bad-rpath-entry|/usr/ucblib|opt/csw/apache2/libexec/libphp5.so +CHECKPKG_OVERRIDES_CSWphp5 += bad-rpath-entry|/usr/ucblib|opt/csw/php5/bin/php +CHECKPKG_OVERRIDES_CSWphp5 += bad-rpath-entry|/usr/ucblib|opt/csw/php5/bin/php-cgi + +CHECKPKG_OVERRIDES_CSWphp5 += file-collision|/opt/csw/apache2/libexec/libphp5.so|CSWap2modphp5|CSWphp5 +CHECKPKG_OVERRIDES_CSWphp5 += file-collision|/opt/csw/apache/libexec/libphp5.so|CSWmodphp5|CSWphp5 +CHECKPKG_OVERRIDES_CSWphp5 += file-collision|/opt/csw/apache2/etc/extra/httpd-php5.conf.CSW|CSWap2modphp5|CSWphp5 +CHECKPKG_OVERRIDES_CSWphp5devel += action-class-only-in-pkginfo|none +CHECKPKG_OVERRIDES_CSWphp5devel += catalogname-does-not-match-pkgname|pkgname=CSWphp5devel|catalogname=php5_devel|expected-catalogname=php5devel +CHECKPKG_OVERRIDES_CSWphp5devel += license-missing|/opt/csw/share/doc/php5_devel/license +CHECKPKG_OVERRIDES_CSWphp5devel += surplus-dependency|CSWphp5 + + + include files/scripts.mk include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From idogan23 at users.sourceforge.net Sun Feb 20 13:08:37 2011 From: idogan23 at users.sourceforge.net (idogan23 at users.sourceforge.net) Date: Sun, 20 Feb 2011 12:08:37 +0000 Subject: [csw-devel] SF.net SVN: gar:[13412] csw/mgar/pkg/unbound/branches/ihsan/Makefile Message-ID: Revision: 13412 http://gar.svn.sourceforge.net/gar/?rev=13412&view=rev Author: idogan23 Date: 2011-02-20 12:08:37 +0000 (Sun, 20 Feb 2011) Log Message: ----------- unbound: added 64-bit build Modified Paths: -------------- csw/mgar/pkg/unbound/branches/ihsan/Makefile Modified: csw/mgar/pkg/unbound/branches/ihsan/Makefile =================================================================== --- csw/mgar/pkg/unbound/branches/ihsan/Makefile 2011-02-20 11:50:09 UTC (rev 13411) +++ csw/mgar/pkg/unbound/branches/ihsan/Makefile 2011-02-20 12:08:37 UTC (rev 13412) @@ -43,6 +43,8 @@ LICENSE = LICENSE +BUILD64 = 1 + EXTRA_BUILD_ISAS_i386 = pentium_pro EXTRA_BUILD_ISAS_sparc = sparcv8plus+vis @@ -76,6 +78,18 @@ EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv8plus+vis += $(prefix)/sbin/unbound-control-setup EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv8plus+vis += $(prefix)/sbin/unbound-host +EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = $(prefix)/sbin/unbound-anchor +EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 += $(prefix)/sbin/unbound-checkconf +EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 += $(prefix)/sbin/unbound-control +EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 += $(prefix)/sbin/unbound-control-setup +EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 += $(prefix)/sbin/unbound-host + +EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = $(prefix)/sbin/unbound-anchor +EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 += $(prefix)/sbin/unbound-checkconf +EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 += $(prefix)/sbin/unbound-control +EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 += $(prefix)/sbin/unbound-control-setup +EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 += $(prefix)/sbin/unbound-host + SPKG_CLASSES_CSWunbound = none cswusergroup cswcpsampleconf cswinitsmf INITSMF = /etc/opt/csw/init.d/cswunbound USERGROUP = /etc/opt/csw/CSWunbound/cswusergroup This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From rthurner at users.sourceforge.net Sun Feb 20 13:34:15 2011 From: rthurner at users.sourceforge.net (rthurner at users.sourceforge.net) Date: Sun, 20 Feb 2011 12:34:15 +0000 Subject: [csw-devel] SF.net SVN: gar:[13413] csw/mgar/pkg/php5/trunk/Makefile Message-ID: Revision: 13413 http://gar.svn.sourceforge.net/gar/?rev=13413&view=rev Author: rthurner Date: 2011-02-20 12:34:15 +0000 (Sun, 20 Feb 2011) Log Message: ----------- php5: chkpkg error Modified Paths: -------------- csw/mgar/pkg/php5/trunk/Makefile Modified: csw/mgar/pkg/php5/trunk/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/Makefile 2011-02-20 12:08:37 UTC (rev 13412) +++ csw/mgar/pkg/php5/trunk/Makefile 2011-02-20 12:34:15 UTC (rev 13413) @@ -115,7 +115,6 @@ CHECKPKG_OVERRIDES_CSWphp5devel += action-class-only-in-pkginfo|none CHECKPKG_OVERRIDES_CSWphp5devel += catalogname-does-not-match-pkgname|pkgname=CSWphp5devel|catalogname=php5_devel|expected-catalogname=php5devel CHECKPKG_OVERRIDES_CSWphp5devel += license-missing|/opt/csw/share/doc/php5_devel/license -CHECKPKG_OVERRIDES_CSWphp5devel += surplus-dependency|CSWphp5 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at opencsw.org Sun Feb 20 13:34:09 2011 From: skayser at opencsw.org (Sebastian Kayser) Date: Sun, 20 Feb 2011 13:34:09 +0100 Subject: [csw-devel] SF.net SVN: gar:[13411] csw/mgar/pkg/php5/trunk/Makefile In-Reply-To: References: Message-ID: <20110220123409.GJ21671@sebastiankayser.de> Hi Rupert, * rthurner at users.sourceforge.net wrote: > Modified: csw/mgar/pkg/php5/trunk/Makefile > =================================================================== > --- csw/mgar/pkg/php5/trunk/Makefile 2011-02-20 11:15:02 UTC (rev 13410) > +++ csw/mgar/pkg/php5/trunk/Makefile 2011-02-20 11:50:09 UTC (rev 13411) > @@ -1,9 +1,3 @@ > -# TODO (release-critical prefixed with !, non release-critical with *) > -# > -# ! Re-enable the integrated PHP extension builds. This either requires > -# performance enhancements to GAR or a completely different approach. > -# Details documented below. our of curiosity: did you get the automatic module build performance issues fixed or will you simply take a different approach? Sebastian From dmichelsen at users.sourceforge.net Sun Feb 20 13:58:59 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Sun, 20 Feb 2011 12:58:59 +0000 Subject: [csw-devel] SF.net SVN: gar:[13414] csw/mgar/pkg/gd/trunk Message-ID: Revision: 13414 http://gar.svn.sourceforge.net/gar/?rev=13414&view=rev Author: dmichelsen Date: 2011-02-20 12:58:59 +0000 (Sun, 20 Feb 2011) Log Message: ----------- gd: Build against SUNW X11 again, use /opt/csw/... fontpath, split packages Modified Paths: -------------- csw/mgar/pkg/gd/trunk/Makefile Removed Paths: ------------- csw/mgar/pkg/gd/trunk/files/Makefile.diff csw/mgar/pkg/gd/trunk/files/fixme.sh Modified: csw/mgar/pkg/gd/trunk/Makefile =================================================================== --- csw/mgar/pkg/gd/trunk/Makefile 2011-02-20 12:34:15 UTC (rev 13413) +++ csw/mgar/pkg/gd/trunk/Makefile 2011-02-20 12:58:59 UTC (rev 13414) @@ -17,23 +17,47 @@ PACKAGES = CSWgd CATALOGNAME_CSWgd = gd -SPKG_DESC_CSWgd = $(DESCRIPTION) +SPKG_DESC_CSWgd = Utilities facilitating libgd for dynamic image creation +# PKGFILES is catchall +RUNTIME_DEP_pkgs_CSWgd = CSWlibgd2 +RUNTIME_DEP_PKGS_CSWgd += CSWiconv +RUNTIME_DEP_PKGS_CSWgd += CSWpng +RUNTIME_DEP_PKGS_CSWgd += CSWjpeg +RUNTIME_DEP_PKGS_CSWgd += CSWzlib +RUNTIME_DEP_PKGS_CSWgd += CSWftype2 +RUNTIME_DEP_PKGS_CSWgd += CSWlibgd2 +RUNTIME_DEP_PKGS_CSWgd += CSWxpm +RUNTIME_DEP_PKGS_CSWgd += CSWfconfig -#PATCHFILES = Makefile.diff +PACKAGES += CSWlibgd2 +CATALOGNAME_CSWlibgd2 = libgd2 +SPKG_DESC_CSWlibgd2 = A library used for dynamic image creation providing libgd.so.2 +PKGFILES_CSWlibgd2 = $(call baseisadirs,$(libdir),libgd\.so\.2(\.\d+)*) +RUNTIME_DEP_PKGS_CSWlibgd2 += CSWfconfig +RUNTIME_DEP_PKGS_CSWlibgd2 += CSWftype2 +RUNTIME_DEP_PKGS_CSWlibgd2 += CSWiconv +RUNTIME_DEP_PKGS_CSWlibgd2 += CSWjpeg +RUNTIME_DEP_PKGS_CSWlibgd2 += CSWpng +RUNTIME_DEP_PKGS_CSWlibgd2 += CSWxpm +RUNTIME_DEP_PKGS_CSWlibgd2 += CSWzlib -RUNTIME_DEP_PKGS_CSWgd = CSWexpat CSWfconfig CSWftype2 CSWiconv -RUNTIME_DEP_PKGS_CSWgd += CSWjpeg CSWpng CSWxpm CSWzlib CSWlibx11 -RUNTIME_DEP_PKGS_CSWgd += CSWlibxpm +PACKAGES += CSWlibgd-dev +CATALOGNAME_CSWlibgd-dev = libgd_dev +SPKG_DESC_CSWlibgd-dev = Development files for libgd.so +PKGFILES_CSWlibgd-dev = $(PKGFILES_DEVEL) +RUNTIME_DEP_PKGS_CSWlibgd-dev = CSWlibgd2 UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.bz2 +CSW_DEFAULT_FONTPATH = $(sharedstatedir)/fonts/truetype + +# This is evaluated twice, quote properly +EXTRA_CPPFLAGS = -DDEFAULT_FONTPATH=\\\"$(CSW_DEFAULT_FONTPATH)\\\" + BUILD64 = 1 +NOISAEXEC = 1 STRIP_LIBTOOL = 1 -EXTRA_INC = $(prefix)/X11/include -EXTRA_LIB = $(prefix)/X11/lib -EXTRA_PKG_CONFIG_DIRS = $(prefix)/X11/lib - CONFIGURE_ARGS = $(DIRPATHS) CONFIGURE_ARGS += --with-libiconv-prefix=$(prefix) CONFIGURE_ARGS += --with-png=$(prefix) @@ -43,18 +67,30 @@ CONFIGURE_ARGS += --with-xpm=$(prefix) CONFIGURE_ARGS += --disable-fast-install -## There are no tests for this -TEST_SCRIPTS = skip +# GD does not have a testsuite +TEST_SCRIPTS = +MERGE_DIRS_isa-extra = $(libdir) + +# This is ok as there are a number of search pathes for fonts in there. +# We made sure that the $CSW_DEFAULT_FONTPATH is the first one in the list. +CHECKPKG_OVERRIDES_CSWlibgd-dev += file-with-bad-content|/usr/share|root/opt/csw/include/gd.h + include gar/category.mk -test-skip: - $(DONADA) +# Make sure GDFONTPATH is set correctly +post-extract-modulated: + perl -pi -e 's,/usr/share/fonts/truetype,$(CSW_DEFAULT_FONTPATH),' \ + $(WORKSRC)/gdtestft.c \ + $(WORKSRC)/annotate.c + perl -pi -e 's,(DEFAULT_FONTPATH\s+"),\1$(CSW_DEFAULT_FONTPATH):,' \ + $(WORKSRC)/gd.h + @$(MAKECOOKIE) +# The shipped libtool doesn't know about Sun Studio C++ compiler 'CC' pre-configure-modulated: grm -f $(WORKSRC)/config/ltmain.sh gcp /opt/csw/share/libtool/config/ltmain.sh $(WORKSRC)/config/ltmain.sh - cd $(WORKSRC); aclocal - cd $(WORKSRC); automake + cd $(WORKSRC) && aclocal && automake @$(MAKECOOKIE) Deleted: csw/mgar/pkg/gd/trunk/files/Makefile.diff =================================================================== --- csw/mgar/pkg/gd/trunk/files/Makefile.diff 2011-02-20 12:34:15 UTC (rev 13413) +++ csw/mgar/pkg/gd/trunk/files/Makefile.diff 2011-02-20 12:58:59 UTC (rev 13414) @@ -1,10 +0,0 @@ ---- gd-2.0.35/Makefile.in.orig 2009-02-20 16:42:35.992955622 -0600 -+++ gd-2.0.35/Makefile.in 2009-02-20 16:42:39.401892868 -0600 -@@ -399,6 +399,7 @@ - cd $(top_srcdir) && $(AUTOHEADER) - rm -f stamp-h1 -+ @$(srcdir)../fixme.sh $(srcdir) - touch $@ - - distclean-hdr: - -rm -f config.h stamp-h1 Deleted: csw/mgar/pkg/gd/trunk/files/fixme.sh =================================================================== --- csw/mgar/pkg/gd/trunk/files/fixme.sh 2011-02-20 12:34:15 UTC (rev 13413) +++ csw/mgar/pkg/gd/trunk/files/fixme.sh 2011-02-20 12:58:59 UTC (rev 13414) @@ -1,52 +0,0 @@ -#!/bin/bash -#################################################### -# -# fixme.sh -# Intended to remove the use of libtool's -# pseudo-libraries for opencsw builds. -# -# Author: Mike Watters mwatters_at_opencsw.org -# Initial Version: 0.1 -# -#################################################### - -umask 0022 -PATH=/opt/csw/bin - -if [ $# -ne 1 ]; then - gecho "USAGE: $(basename $0) WORKSRC" - exit 1 -fi -BASEPATH=$1 - -## Fix Makefiles -for mk in $(gfind ${BASEPATH} -name Makefile -print); do - gcp ${mk} ${mk}.orig - LT_FILES=$(ggrep '/opt/csw.*/lib/.*\.la' ${mk} | \ - gsed "s/^.*\(\/opt\/csw.*\/lib\/.*\.la\).*$/\1/") - - for file in ${LT_FILES}; do - LIB_NAME=$(ggrep 'dlname=' ${file} | \ - gsed -e "s/.*'\(.*\)'/\1/" \ - -e "s/^lib//" \ - -e "s/\.so.*$//") - fixpath=$(gecho $file |gsed 's/\//\\\//g') - gsed "s/${fixpath}/-l${LIB_NAME}/g" ${mk} >Makefile.new - gmv Makefile.new ${mk} - done -done - -## Fix libtool Script -for lt in $(gfind ${BASEPATH} -name libtool -print); do - gcp ${lt} ${lt}.orig - gsed "/for search_ext in .*\.la/s/\.la//" ${lt} >${lt}.new - gmv ${lt}.new ${lt} -done - -LTMAIN=$(gfind ${BASEPATH} -name ltmain.sh -print) -gcp ${LTMAIN} ${LTMAIN}.orig -if [ -f ${LTMAIN} ]; then - gsed "/for search_ext in .*\.la/s/\.la//" ${LTMAIN} >${LTMAIN}.new - gmv ${LTMAIN}.new ${LTMAIN} -fi - This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Sun Feb 20 14:58:38 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Sun, 20 Feb 2011 13:58:38 +0000 Subject: [csw-devel] SF.net SVN: gar:[13415] csw/mgar/pkg/aria2/trunk Message-ID: Revision: 13415 http://gar.svn.sourceforge.net/gar/?rev=13415&view=rev Author: dmichelsen Date: 2011-02-20 13:58:38 +0000 (Sun, 20 Feb 2011) Log Message: ----------- aria2: Add necessary patches Modified Paths: -------------- csw/mgar/pkg/aria2/trunk/Makefile csw/mgar/pkg/aria2/trunk/files/0002-Use-inttypes-if-stdint-is-not-available.patch Added Paths: ----------- csw/mgar/pkg/aria2/trunk/files/0003-Skip-Wall-for-Sun-Studio.patch csw/mgar/pkg/aria2/trunk/files/0004-Include-string.h-if-available.patch Modified: csw/mgar/pkg/aria2/trunk/Makefile =================================================================== --- csw/mgar/pkg/aria2/trunk/Makefile 2011-02-20 12:58:59 UTC (rev 13414) +++ csw/mgar/pkg/aria2/trunk/Makefile 2011-02-20 13:58:38 UTC (rev 13415) @@ -12,10 +12,15 @@ PATCHFILES += 0001-Remove-tailing-commas-in-enum.patch PATCHFILES += 0002-Use-inttypes-if-stdint-is-not-available.patch +PATCHFILES += 0003-Skip-Wall-for-Sun-Studio.patch +PATCHFILES += 0004-Include-string.h-if-available.patch # File name regex to get notifications about upstream software releases UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.xz +EXTRA_CXXFLAGS += -library=stlport4 +EXTRA_CXXFLAGS += -features=zla + CONFIGURE_ARGS = $(DIRPATHS) include gar/category.mk Modified: csw/mgar/pkg/aria2/trunk/files/0002-Use-inttypes-if-stdint-is-not-available.patch =================================================================== --- csw/mgar/pkg/aria2/trunk/files/0002-Use-inttypes-if-stdint-is-not-available.patch 2011-02-20 12:58:59 UTC (rev 13414) +++ csw/mgar/pkg/aria2/trunk/files/0002-Use-inttypes-if-stdint-is-not-available.patch 2011-02-20 13:58:38 UTC (rev 13415) @@ -1,16 +1,21 @@ -From 226b1019fd220a305bc3e9f364685c3fb2ff584e Mon Sep 17 00:00:00 2001 +From 7aed90f76dc6fdebe217a61e3e7c6402cf4e0aae Mon Sep 17 00:00:00 2001 From: Dagobert Michelsen -Date: Wed, 2 Feb 2011 15:43:26 +0100 -Subject: [PATCH 2/2] Use inttypes if stdint is not available +Date: Wed, 2 Feb 2011 16:51:41 +0100 +Subject: [PATCH] Use inttypes if stdint is not available --- - src/DownloadResult.h | 8 +++++++- - src/ProgressAwareEntry.h | 9 ++++++++- - src/Segment.h | 9 ++++++++- - src/TimeA2.h | 8 +++++++- - src/TransferStat.h | 8 +++++++- - src/common.h | 8 +++++++- - 6 files changed, 44 insertions(+), 6 deletions(-) + src/DownloadResult.h | 8 +++++++- + src/FtpNegotiationCommand.cc | 13 ++++++++++++- + src/HttpResponse.h | 8 +++++++- + src/Piece.h | 9 ++++++++- + src/ProgressAwareEntry.h | 9 ++++++++- + src/Segment.h | 9 ++++++++- + src/SocketCore.cc | 4 ++++ + src/TimeA2.h | 8 +++++++- + src/TransferStat.h | 8 +++++++- + src/common.h | 8 +++++++- + src/util.cc | 9 ++++++++- + 11 files changed, 83 insertions(+), 10 deletions(-) diff --git a/src/DownloadResult.h b/src/DownloadResult.h index f224750..e62f925 100644 @@ -31,6 +36,69 @@ #include #include +diff --git a/src/FtpNegotiationCommand.cc b/src/FtpNegotiationCommand.cc +index 7ad0934..514b19b 100644 +--- a/src/FtpNegotiationCommand.cc ++++ b/src/FtpNegotiationCommand.cc +@@ -34,7 +34,18 @@ + /* copyright --> */ + #include "FtpNegotiationCommand.h" + +-#include ++#ifdef HAVE_STDINT_H ++# include ++#else ++# ifdef HAVE_INTTYPES_H ++# include ++# endif ++#endif ++ ++#ifdef HAVE_STDLIB_H ++# include ++#endif ++ + #include + #include + #include +diff --git a/src/HttpResponse.h b/src/HttpResponse.h +index f818e7c..30e9b7b 100644 +--- a/src/HttpResponse.h ++++ b/src/HttpResponse.h +@@ -37,7 +37,13 @@ + + #include "common.h" + +-#include ++#ifdef HAVE_STDINT_H ++# include ++#else ++# ifdef HAVE_INTTYPES_H ++# include ++# endif ++#endif + + #include "SharedHandle.h" + #include "TimeA2.h" +diff --git a/src/Piece.h b/src/Piece.h +index c9abbd3..4137101 100644 +--- a/src/Piece.h ++++ b/src/Piece.h +@@ -37,7 +37,14 @@ + + #include "common.h" + +-#include ++#ifdef HAVE_STDINT_H ++# include ++#else ++# ifdef HAVE_INTTYPES_H ++# include ++# endif ++#endif ++ + #include + #include + diff --git a/src/ProgressAwareEntry.h b/src/ProgressAwareEntry.h index 48f0ad0..d658ef1 100644 --- a/src/ProgressAwareEntry.h @@ -71,6 +139,21 @@ #include #include "SharedHandle.h" +diff --git a/src/SocketCore.cc b/src/SocketCore.cc +index aba9db2..5ec281f 100644 +--- a/src/SocketCore.cc ++++ b/src/SocketCore.cc +@@ -42,6 +42,10 @@ + #include + #include + ++#ifdef HAVE_STRING_H ++# include ++#endif // HAVE_STRING_H ++ + #ifdef HAVE_LIBGNUTLS + # include + #endif // HAVE_LIBGNUTLS diff --git a/src/TimeA2.h b/src/TimeA2.h index 97302a5..dd2a1fc 100644 --- a/src/TimeA2.h @@ -127,6 +210,26 @@ +#endif #endif // D_COMMON_H +diff --git a/src/util.cc b/src/util.cc +index 6bf66e6..9324f03 100644 +--- a/src/util.cc ++++ b/src/util.cc +@@ -36,7 +36,14 @@ + + #include + #include +-#include ++ ++#ifdef HAVE_STDINT_H ++# include ++#else ++# ifdef HAVE_INTTYPES_H ++# include ++# endif ++#endif + + #include + #include -- 1.7.3.2 Added: csw/mgar/pkg/aria2/trunk/files/0003-Skip-Wall-for-Sun-Studio.patch =================================================================== --- csw/mgar/pkg/aria2/trunk/files/0003-Skip-Wall-for-Sun-Studio.patch (rev 0) +++ csw/mgar/pkg/aria2/trunk/files/0003-Skip-Wall-for-Sun-Studio.patch 2011-02-20 13:58:38 UTC (rev 13415) @@ -0,0 +1,53 @@ +From 679e45b2d321b4ef82435dd378c4a1f22069ced7 Mon Sep 17 00:00:00 2001 +From: Dagobert Michelsen +Date: Wed, 2 Feb 2011 16:27:53 +0100 +Subject: [PATCH] Skip -Wall for Sun Studio + +--- + m4/libcares.m4 | 2 +- + src/Makefile.am | 2 +- + src/Makefile.in | 2 +- + 3 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/m4/libcares.m4 b/m4/libcares.m4 +index 4273917..d737d4d 100644 +--- a/m4/libcares.m4 ++++ b/m4/libcares.m4 +@@ -16,7 +16,7 @@ LIBS_save=$LIBS + CPPFLAGS_save=$CPPFLAGS + + LIBS="-L$libcares_prefix_lib $LIBS" +-CPPFLAGS="-I$libcares_prefix_include -Wall $CPPFLAGS" ++CPPFLAGS="-I$libcares_prefix_include $CPPFLAGS" + + AC_CHECK_LIB([cares], [ares_init], [have_libcares=yes]) + +diff --git a/src/Makefile.am b/src/Makefile.am +index b295483..22f4715 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -559,7 +559,7 @@ aria2c_LDADD = libaria2c.a @LIBINTL@ @ALLOCA@ @LIBGNUTLS_LIBS@\ + @LIBCARES_LIBS@ @LIBEXPAT_LIBS@ @LIBZ_LIBS@\ + @SQLITE3_LIBS@ #-lprofiler + #aria2c_LDFLAGS = -pg +-AM_CPPFLAGS = -Wall\ ++AM_CPPFLAGS = \ + -I$(top_srcdir)/lib -I$(top_srcdir)/intl\ + @LIBGNUTLS_CFLAGS@ @LIBGCRYPT_CFLAGS@ @OPENSSL_CFLAGS@ @XML_CPPFLAGS@\ + @LIBCARES_CPPFLAGS@ @LIBEXPAT_CPPFLAGS@\ +diff --git a/src/Makefile.in b/src/Makefile.in +index c7b0b97..7284e34 100644 +--- a/src/Makefile.in ++++ b/src/Makefile.in +@@ -1322,7 +1322,7 @@ aria2c_LDADD = libaria2c.a @LIBINTL@ @ALLOCA@ @LIBGNUTLS_LIBS@\ + @SQLITE3_LIBS@ #-lprofiler + + #aria2c_LDFLAGS = -pg +-AM_CPPFLAGS = -Wall\ ++AM_CPPFLAGS = \ + -I$(top_srcdir)/lib -I$(top_srcdir)/intl\ + @LIBGNUTLS_CFLAGS@ @LIBGCRYPT_CFLAGS@ @OPENSSL_CFLAGS@ @XML_CPPFLAGS@\ + @LIBCARES_CPPFLAGS@ @LIBEXPAT_CPPFLAGS@\ +-- +1.7.3.2 + Added: csw/mgar/pkg/aria2/trunk/files/0004-Include-string.h-if-available.patch =================================================================== --- csw/mgar/pkg/aria2/trunk/files/0004-Include-string.h-if-available.patch (rev 0) +++ csw/mgar/pkg/aria2/trunk/files/0004-Include-string.h-if-available.patch 2011-02-20 13:58:38 UTC (rev 13415) @@ -0,0 +1,27 @@ +From 9bc60cdd312557c994f079597453de0eaa8dd4ea Mon Sep 17 00:00:00 2001 +From: Dagobert Michelsen +Date: Wed, 2 Feb 2011 16:53:18 +0100 +Subject: [PATCH] Include string.h if available + +--- + src/FtpConnection.cc | 4 ++++ + 1 files changed, 4 insertions(+), 0 deletions(-) + +diff --git a/src/FtpConnection.cc b/src/FtpConnection.cc +index debde95..d08aad7 100644 +--- a/src/FtpConnection.cc ++++ b/src/FtpConnection.cc +@@ -38,6 +38,10 @@ + #include + #include + ++#ifdef HAVE_STRING_H ++# include ++#endif // HAVE_STRING_H ++ + #include "Request.h" + #include "Segment.h" + #include "Option.h" +-- +1.7.3.2 + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Sun Feb 20 15:05:04 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Sun, 20 Feb 2011 14:05:04 +0000 Subject: [csw-devel] SF.net SVN: gar:[13416] csw/mgar/pkg/aria2/trunk Message-ID: Revision: 13416 http://gar.svn.sourceforge.net/gar/?rev=13416&view=rev Author: dmichelsen Date: 2011-02-20 14:05:04 +0000 (Sun, 20 Feb 2011) Log Message: ----------- aria2: Commit additional patch Modified Paths: -------------- csw/mgar/pkg/aria2/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/aria2/trunk/files/0005-Add-missing-includes.patch Modified: csw/mgar/pkg/aria2/trunk/Makefile =================================================================== --- csw/mgar/pkg/aria2/trunk/Makefile 2011-02-20 13:58:38 UTC (rev 13415) +++ csw/mgar/pkg/aria2/trunk/Makefile 2011-02-20 14:05:04 UTC (rev 13416) @@ -14,6 +14,7 @@ PATCHFILES += 0002-Use-inttypes-if-stdint-is-not-available.patch PATCHFILES += 0003-Skip-Wall-for-Sun-Studio.patch PATCHFILES += 0004-Include-string.h-if-available.patch +PATCHFILES += 0005-Add-missing-includes.patch # File name regex to get notifications about upstream software releases UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.xz Added: csw/mgar/pkg/aria2/trunk/files/0005-Add-missing-includes.patch =================================================================== --- csw/mgar/pkg/aria2/trunk/files/0005-Add-missing-includes.patch (rev 0) +++ csw/mgar/pkg/aria2/trunk/files/0005-Add-missing-includes.patch 2011-02-20 14:05:04 UTC (rev 13416) @@ -0,0 +1,346 @@ +From ba0fa7ea91d41b0cf9f748c8bd255ff8285ffc60 Mon Sep 17 00:00:00 2001 +From: Dagobert Michelsen +Date: Sun, 20 Feb 2011 15:02:42 +0100 +Subject: [PATCH] Add missing includes + +--- + src/AdaptiveURISelector.cc | 4 ++-- + src/ConsoleStatCalc.cc | 1 + + src/DefaultBtProgressInfoFile.cc | 1 + + src/DiskWriterFactory.h | 1 + + src/DownloadEngineFactory.cc | 1 + + src/EventPoll.h | 2 +- + src/Option.cc | 1 + + src/OptionHandlerImpl.cc | 1 + + src/OptionParser.cc | 5 +++++ + src/ParameterizedStringParser.h | 2 ++ + src/PieceSelector.h | 1 + + src/PieceStatMan.cc | 1 + + src/ProtocolDetector.cc | 1 + + src/SelectEventPoll.cc | 1 + + src/SimpleRandomizer.cc | 1 + + src/SingleFileAllocationIterator.cc | 1 + + src/UnknownLengthPieceStorage.cc | 5 +++++ + src/array_fun.h | 4 ++-- + src/bitfield.h | 1 + + src/fmt.cc | 6 ++++++ + src/util.h | 1 + + 21 files changed, 37 insertions(+), 5 deletions(-) + +diff --git a/src/AdaptiveURISelector.cc b/src/AdaptiveURISelector.cc +index efe28b8..3e00f1c 100644 +--- a/src/AdaptiveURISelector.cc ++++ b/src/AdaptiveURISelector.cc +@@ -36,7 +36,7 @@ + #include "AdaptiveURISelector.h" + + #include +-#include ++#include + #include + + #include "DownloadCommand.h" +@@ -330,7 +330,7 @@ std::string AdaptiveURISelector::getFirstToTestUri + counter = ss->getCounter(); + if(counter > 8) + continue; +- power = (int)pow(2.0, (float)counter); ++ power = (int)pow(2.0f, (float)counter); + /* We test the mirror another time if it has not been + * tested since 2^counter days */ + if(ss->getLastUpdated().difference() > power*24*60*60) { +diff --git a/src/ConsoleStatCalc.cc b/src/ConsoleStatCalc.cc +index adbaaab..c931955 100644 +--- a/src/ConsoleStatCalc.cc ++++ b/src/ConsoleStatCalc.cc +@@ -47,6 +47,7 @@ + #include + #include + #include ++#include + #include + #include + +diff --git a/src/DefaultBtProgressInfoFile.cc b/src/DefaultBtProgressInfoFile.cc +index 5677ff2..a4d3fa5 100644 +--- a/src/DefaultBtProgressInfoFile.cc ++++ b/src/DefaultBtProgressInfoFile.cc +@@ -35,6 +35,7 @@ + #include "DefaultBtProgressInfoFile.h" + + #include ++#include + #include + + #include "PieceStorage.h" +diff --git a/src/DiskWriterFactory.h b/src/DiskWriterFactory.h +index 8e154ec..9a83b52 100644 +--- a/src/DiskWriterFactory.h ++++ b/src/DiskWriterFactory.h +@@ -37,6 +37,7 @@ + + #include "common.h" + #include "SharedHandle.h" ++#include + + namespace aria2 { + +diff --git a/src/DownloadEngineFactory.cc b/src/DownloadEngineFactory.cc +index 5b793ca..4c2b72c 100644 +--- a/src/DownloadEngineFactory.cc ++++ b/src/DownloadEngineFactory.cc +@@ -35,6 +35,7 @@ + #include "DownloadEngineFactory.h" + + #include ++#include + + #include "Option.h" + #include "RequestGroup.h" +diff --git a/src/EventPoll.h b/src/EventPoll.h +index 7217ef2..80d9309 100644 +--- a/src/EventPoll.h ++++ b/src/EventPoll.h +@@ -53,7 +53,7 @@ public: + EVENT_READ = 1, + EVENT_WRITE = 1 << 1, + EVENT_ERROR = 1 << 2, +- EVENT_HUP = 1 << 3, ++ EVENT_HUP = 1 << 3 + }; + + virtual ~EventPoll() {} +diff --git a/src/Option.cc b/src/Option.cc +index 579d7e7..0470e50 100644 +--- a/src/Option.cc ++++ b/src/Option.cc +@@ -37,6 +37,7 @@ + #include "A2STR.h" + #include + #include ++#include + + namespace aria2 { + +diff --git a/src/OptionHandlerImpl.cc b/src/OptionHandlerImpl.cc +index bef438b..211db72 100644 +--- a/src/OptionHandlerImpl.cc ++++ b/src/OptionHandlerImpl.cc +@@ -42,6 +42,7 @@ + #include + #include + #include ++#include + + #include "util.h" + #include "DlAbortEx.h" +diff --git a/src/OptionParser.cc b/src/OptionParser.cc +index 15e49fa..0ef87e3 100644 +--- a/src/OptionParser.cc ++++ b/src/OptionParser.cc +@@ -35,11 +35,16 @@ + #include "OptionParser.h" + + #include ++#define __GNU_LIBRARY__ ++#undef __STDC__ ++#define __STDC__ 1 + #include + + #include ++#include + #include + #include ++#include + + #include "util.h" + #include "OptionHandlerImpl.h" +diff --git a/src/ParameterizedStringParser.h b/src/ParameterizedStringParser.h +index 91a23db..4ff115c 100644 +--- a/src/ParameterizedStringParser.h ++++ b/src/ParameterizedStringParser.h +@@ -35,6 +35,8 @@ + #ifndef D_PARAMETERIZED_STRING_PARSER_H + #define D_PARAMETERIZED_STRING_PARSER_H + ++#include ++ + #include "common.h" + #include "PStringDatum.h" + +diff --git a/src/PieceSelector.h b/src/PieceSelector.h +index 659a386..7904b1f 100644 +--- a/src/PieceSelector.h ++++ b/src/PieceSelector.h +@@ -38,6 +38,7 @@ + #include "common.h" + + #include ++#include + + namespace aria2 { + +diff --git a/src/PieceStatMan.cc b/src/PieceStatMan.cc +index a196702..edbcc50 100644 +--- a/src/PieceStatMan.cc ++++ b/src/PieceStatMan.cc +@@ -38,6 +38,7 @@ + + #include "SimpleRandomizer.h" + #include "bitfield.h" ++#include + + namespace aria2 { + +diff --git a/src/ProtocolDetector.cc b/src/ProtocolDetector.cc +index 1daa199..0f744e4 100644 +--- a/src/ProtocolDetector.cc ++++ b/src/ProtocolDetector.cc +@@ -35,6 +35,7 @@ + #include "ProtocolDetector.h" + + #include ++#include + #include + #include + +diff --git a/src/SelectEventPoll.cc b/src/SelectEventPoll.cc +index b541631..b45a10c 100644 +--- a/src/SelectEventPoll.cc ++++ b/src/SelectEventPoll.cc +@@ -38,6 +38,7 @@ + # include + #endif // __MINGW32__ + #include ++#include + #include + #include + +diff --git a/src/SimpleRandomizer.cc b/src/SimpleRandomizer.cc +index 27d3e0c..d4eb35b 100644 +--- a/src/SimpleRandomizer.cc ++++ b/src/SimpleRandomizer.cc +@@ -35,6 +35,7 @@ + #include "SimpleRandomizer.h" + #include "a2time.h" + #include ++#include + #include + #include + +diff --git a/src/SingleFileAllocationIterator.cc b/src/SingleFileAllocationIterator.cc +index 420ff69..d1cd990 100644 +--- a/src/SingleFileAllocationIterator.cc ++++ b/src/SingleFileAllocationIterator.cc +@@ -35,6 +35,7 @@ + #include "SingleFileAllocationIterator.h" + + #include ++#include + #include + + #include "BinaryStream.h" +diff --git a/src/UnknownLengthPieceStorage.cc b/src/UnknownLengthPieceStorage.cc +index abb4035..c661a73 100644 +--- a/src/UnknownLengthPieceStorage.cc ++++ b/src/UnknownLengthPieceStorage.cc +@@ -35,6 +35,7 @@ + #include "UnknownLengthPieceStorage.h" + + #include ++#include + + #include "DefaultDiskWriter.h" + #include "DirectDiskAdaptor.h" +@@ -76,6 +77,7 @@ void UnknownLengthPieceStorage::initStorage() + bool UnknownLengthPieceStorage::hasMissingPiece(const SharedHandle& peer) + { + abort(); ++ return false; + } + + void UnknownLengthPieceStorage::getMissingPiece +@@ -115,18 +117,21 @@ void UnknownLengthPieceStorage::getMissingFastPiece + SharedHandle UnknownLengthPieceStorage::getMissingPiece(const SharedHandle& peer) + { + abort(); ++ return SharedHandle(); + } + + SharedHandle UnknownLengthPieceStorage::getMissingPiece + (const SharedHandle& peer, const std::vector& excludedIndexes) + { + abort(); ++ return SharedHandle(); + } + #endif // ENABLE_BITTORRENT + + bool UnknownLengthPieceStorage::hasMissingUnusedPiece() + { + abort(); ++ return false; + } + + SharedHandle UnknownLengthPieceStorage::getSparseMissingUnusedPiece +diff --git a/src/array_fun.h b/src/array_fun.h +index 897a7a8..2c8d00a 100644 +--- a/src/array_fun.h ++++ b/src/array_fun.h +@@ -39,11 +39,11 @@ + #include + + namespace aria2 { +- ++/* + // calculate length of array + template + char (&char_array_ref_fun(T (&)[N]))[N]; +- ++*/ + // For 0 length array + template + char (&char_array_ref_fun(T (&)[0u]))[0u]; +diff --git a/src/bitfield.h b/src/bitfield.h +index 39313a1..c54e615 100644 +--- a/src/bitfield.h ++++ b/src/bitfield.h +@@ -40,6 +40,7 @@ + #include + #include + #include ++#include + + #include "util.h" + +diff --git a/src/fmt.cc b/src/fmt.cc +index a4e9733..6432bb5 100644 +--- a/src/fmt.cc ++++ b/src/fmt.cc +@@ -34,6 +34,12 @@ + /* copyright --> */ + #include "fmt.h" + ++// Make sure Sun Studio knows about va_list ++#ifdef __SUNPRO_CC ++#include ++#include ++#endif ++ + #include + #include + #include +diff --git a/src/util.h b/src/util.h +index 939dc2b..af46291 100644 +--- a/src/util.h ++++ b/src/util.h +@@ -40,6 +40,7 @@ + #include + + #include ++#include + #include + #include + #include +-- +1.7.3.2 + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Sun Feb 20 16:38:40 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Sun, 20 Feb 2011 15:38:40 +0000 Subject: [csw-devel] SF.net SVN: gar:[13417] csw/mgar/pkg/wmf/trunk/Makefile Message-ID: Revision: 13417 http://gar.svn.sourceforge.net/gar/?rev=13417&view=rev Author: dmichelsen Date: 2011-02-20 15:38:40 +0000 (Sun, 20 Feb 2011) Log Message: ----------- wmf: Fix fontpath Modified Paths: -------------- csw/mgar/pkg/wmf/trunk/Makefile Modified: csw/mgar/pkg/wmf/trunk/Makefile =================================================================== --- csw/mgar/pkg/wmf/trunk/Makefile 2011-02-20 14:05:04 UTC (rev 13416) +++ csw/mgar/pkg/wmf/trunk/Makefile 2011-02-20 15:38:40 UTC (rev 13417) @@ -109,6 +109,9 @@ RUNTIME_DEP_PKGS_CSWlibwmfgtk += CSWlibwmflite0-2-7 BUILD_DEP_PKGS += CSWgtk2devel +# This *must* be the same as in the GD package +CSW_DEFAULT_FONTPATH = $(sharedstatedir)/fonts/truetype + BUILD64 = 1 NOISAEXEC = 1 @@ -130,13 +133,15 @@ MERGE_DIRS_isa-extra = $(libdir) -# default fontpath for unix systems = /usr/share/fonts/truetype -# Are our fonts picked up correctly? -CHECKPKG_OVERRIDES_CSWlibwmf-dev += file-with-bad-content|/usr/share|root/opt/csw/include/libwmf/gd/gd.h -CHECKPKG_OVERRIDES_CSWlibwmf0-2-7 += file-with-bad-content|/usr/share|root/opt/csw/lib/libwmf-0.2.so.7.1.0 -CHECKPKG_OVERRIDES_CSWlibwmf0-2-7 += file-with-bad-content|/usr/share|root/opt/csw/lib/sparcv9/libwmf-0.2.so.7.1.0 - # These are just docs CHECKPKG_OVERRIDES_CSWlibwmfdoc += file-with-bad-content include gar/category.mk + +# Make sure GDFONTPATH is set correctly +post-extract-modulated: + perl -pi -e 's,/usr/share/fonts/truetype,$(CSW_DEFAULT_FONTPATH),' \ + $(WORKSRC)/src/extra/gd/gd.h \ + $(WORKSRC)/src/extra/gd/gdft.c + @$(MAKECOOKIE) + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Sun Feb 20 16:48:07 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Sun, 20 Feb 2011 15:48:07 +0000 Subject: [csw-devel] SF.net SVN: gar:[13418] csw/mgar/pkg/wmf/trunk/Makefile Message-ID: Revision: 13418 http://gar.svn.sourceforge.net/gar/?rev=13418&view=rev Author: dmichelsen Date: 2011-02-20 15:48:06 +0000 (Sun, 20 Feb 2011) Log Message: ----------- wmf: Make sure libwmf-config is also added for 64 bit Modified Paths: -------------- csw/mgar/pkg/wmf/trunk/Makefile Modified: csw/mgar/pkg/wmf/trunk/Makefile =================================================================== --- csw/mgar/pkg/wmf/trunk/Makefile 2011-02-20 15:38:40 UTC (rev 13417) +++ csw/mgar/pkg/wmf/trunk/Makefile 2011-02-20 15:48:06 UTC (rev 13418) @@ -131,6 +131,7 @@ TEST_TARGET = check +MERGE_SCRIPTS_isa-extra = copy-relocated-only copy-config-only MERGE_DIRS_isa-extra = $(libdir) # These are just docs This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 20 18:17:54 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 20 Feb 2011 17:17:54 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[302] web/wordpresscsw/wp-content/themes/opencsw/qa.php Message-ID: Revision: 302 http://opencsw.svn.sourceforge.net/opencsw/?rev=302&view=rev Author: wbonnet Date: 2011-02-20 17:17:54 +0000 (Sun, 20 Feb 2011) Log Message: ----------- Fix typo Modified Paths: -------------- web/wordpresscsw/wp-content/themes/opencsw/qa.php Modified: web/wordpresscsw/wp-content/themes/opencsw/qa.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/qa.php 2011-02-20 09:32:16 UTC (rev 301) +++ web/wordpresscsw/wp-content/themes/opencsw/qa.php 2011-02-20 17:17:54 UTC (rev 302) @@ -32,7 +32,7 @@ Retired maintainers
    - The following list displays the last activity overview of each maintainer. The purpose of this QA page is to detected maintainers who potentially retired."; + The following list displays the last activity overview of each maintainer. The purpose of this QA page is to detected maintainers who potentially retired.
    • Maintainers last activity This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Sun Feb 20 20:17:33 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Sun, 20 Feb 2011 19:17:33 +0000 Subject: [csw-devel] SF.net SVN: gar:[13419] csw/mgar/gar/v2 Message-ID: Revision: 13419 http://gar.svn.sourceforge.net/gar/?rev=13419&view=rev Author: dmichelsen Date: 2011-02-20 19:17:33 +0000 (Sun, 20 Feb 2011) Log Message: ----------- mGAR v2: Add OBSOLETED_* Modified Paths: -------------- csw/mgar/gar/v2/gar.mk csw/mgar/gar/v2/gar.pkg.mk Modified: csw/mgar/gar/v2/gar.mk =================================================================== --- csw/mgar/gar/v2/gar.mk 2011-02-20 15:48:06 UTC (rev 13418) +++ csw/mgar/gar/v2/gar.mk 2011-02-20 19:17:33 UTC (rev 13419) @@ -803,7 +803,7 @@ # The basic merge merges the compiles for all ISAs on the current architecture -merge: checksum pre-merge merge-do merge-license merge-classutils merge-checkpkgoverrides merge-alternatives $(if $(COMPILE_ELISP),compile-elisp) $(if $(NOSOURCEPACKAGE),,merge-src) merge-README.CSW $(if $(AP2_MODS),post-merge-ap2mod) post-merge +merge: checksum pre-merge merge-do merge-license merge-classutils merge-checkpkgoverrides merge-alternatives $(if $(COMPILE_ELISP),compile-elisp) $(if $(NOSOURCEPACKAGE),,merge-src) merge-README.CSW merge-obsoleted-by $(if $(AP2_MODS),post-merge-ap2mod) post-merge banner merge @$(MAKECOOKIE) @@ -887,7 +887,7 @@ .PHONY: remerge reset-merge reset-merge-modulated remerge: reset-merge merge -reset-merge: reset-package $(addprefix reset-merge-,$(MODULATIONS)) reset-merge-license reset-merge-classutils reset-merge-checkpkgoverrides reset-merge-alternatives reset-merge-README.CSW reset-merge-ap2mod reset-merge-src +reset-merge: reset-package $(addprefix reset-merge-,$(MODULATIONS)) reset-merge-license reset-merge-classutils reset-merge-checkpkgoverrides reset-merge-alternatives reset-merge-README.CSW reset-merge-obsoleted-by reset-merge-ap2mod reset-merge-src @rm -f $(COOKIEDIR)/pre-merge $(foreach M,$(MODULATIONS),$(COOKIEDIR)/merge-$M) $(COOKIEDIR)/merge $(COOKIEDIR)/post-merge @rm -rf $(PKGROOT) Modified: csw/mgar/gar/v2/gar.pkg.mk =================================================================== --- csw/mgar/gar/v2/gar.pkg.mk 2011-02-20 15:48:06 UTC (rev 13418) +++ csw/mgar/gar/v2/gar.pkg.mk 2011-02-20 19:17:33 UTC (rev 13419) @@ -40,7 +40,8 @@ CATALOGNAME ?= $(if $(filter-out $(firstword $(PACKAGES)),$(PACKAGES)),,$(subst -,_,$(patsubst CSW%,%,$(PACKAGES)))) SRCPACKAGE_BASE = $(firstword $(PACKAGES)) SRCPACKAGE ?= $(SRCPACKAGE_BASE)-src -SPKG_SPECS ?= $(sort $(basename $(filter %.gspec,$(DISTFILES))) $(PACKAGES) $(if $(NOSOURCEPACKAGE),,$(SRCPACKAGE))) +OBSOLETED_PKGS ?= $(sort $(foreach P,$(PACKAGES),$(OBSOLETES_$P))) +SPKG_SPECS ?= $(sort $(basename $(filter %.gspec,$(DISTFILES))) $(PACKAGES) $(OBSOLETED_PKGS) $(if $(NOSOURCEPACKAGE),,$(SRCPACKAGE))) endif # Automatic definitions for source package @@ -54,6 +55,21 @@ RUNTIME_DEP_PKGS_$(SRCPACKAGE) ?= $(or $(GARPKG_$(GARSYSTEMVERSION)),$(error GAR version $(GARSYSTEMVERSION) unknown)) CATALOG_RELEASE ?= current +define obsoleted_pkg +CATALOGNAME_$(1) = $(call catalogname,$(1)) +SPKG_DESC_$(1) = Transitional package as contents moved to $(foreach P,$(PACKAGES),$(if $(filter $(1),$(OBSOLETES_$P)),$P)) +RUNTIME_DEP_PKGS_$(1) = $(foreach P,$(PACKAGES),$(if $(filter $(1),$(OBSOLETES_$P)),$P)) +PKGFILES_$(1) = NOFILES +ARCHALL_$(1) = 1 +$(foreach P,$(PACKAGES),$(if $(filter $(1),$(OBSOLETES_$P)), + CHECKPKG_OVERRIDES_$(1) += surplus-dependency|$P +)) +endef + +$(warning O: $(OBSOLETED_PKGS)) + +$(foreach P,$(OBSOLETED_PKGS),$(eval $(call obsoleted_pkg,$P))) + _PKG_SPECS = $(filter-out $(NOPACKAGE),$(SPKG_SPECS)) # The is the name of the package containing the sourcefiles for all packages generated from this GAR recipe. @@ -111,7 +127,7 @@ $(CATALOGNAME_$(1)), $(if $(CATALOGNAME), $(CATALOGNAME), - $(if $(filter $(1),$(PACKAGES)), + $(if $(filter $(1),$(PACKAGES) $(OBSOLETED_PKGS)), $(subst -,_,$(patsubst CSW%,%,$(1))), $(if $(realpath files/$(1).gspec), $(shell perl -F'\s+' -ane 'print "$$F[2]" if( $$F[0] eq "%var" && $$F[1] eq "bitname")' files/$(1).gspec), @@ -394,6 +410,10 @@ | ( cat; if test -f "$(WORKDIR_GLOBAL)/$(1).cswreleasenotes";then echo "i cswreleasenotes=$(1).cswreleasenotes"; fi) endef +define obsoleted_filter + | ( cat; if test -f "$(WORKDIR_GLOBAL)/$(1).obsoleted-by";then echo "i obsoleted-by=$(1).obsoleted-by"; fi) +endef + # This file contains all installed pathes. This can be used as a starting point # for distributing files to individual packages. PROTOTYPE = $(WORKDIR)/prototype @@ -444,9 +464,9 @@ ) \ <$(PROTOTYPE); \ if [ -n "$(EXTRA_PKGFILES_$*)" ]; then echo "$(EXTRA_PKGFILES_$*)"; fi \ - ) $(call checkpkg_override_filter,$*) $(call cswreleasenotes_filter,$*) $(_CSWCLASS_FILTER) $(_CATEGORY_FILTER) $(_PROTOTYPE_MODIFIERS) $(_PROTOTYPE_FILTER_$*) >$@; \ + ) $(call checkpkg_override_filter,$*) $(call cswreleasenotes_filter,$*) $(call obsoleted_filter,$*) $(_CSWCLASS_FILTER) $(_CATEGORY_FILTER) $(_PROTOTYPE_MODIFIERS) $(_PROTOTYPE_FILTER_$*) >$@; \ else \ - cat $(PROTOTYPE) $(call checkpkg_override_filter,$*) $(call cswreleasenotes_filter,$*) $(_CSWCLASS_FILTER) $(_CATEGORY_FILTER) $(_PROTOTYPE_MODIFIERS) $(_PROTOTYPE_FILTER_$*) >$@; \ + cat $(PROTOTYPE) $(call checkpkg_override_filter,$*) $(call cswreleasenotes_filter,$*) $(call obsoleted_filter,$*) $(_CSWCLASS_FILTER) $(_CATEGORY_FILTER) $(_PROTOTYPE_MODIFIERS) $(_PROTOTYPE_FILTER_$*) >$@; \ fi $(if $(ALLOW_RELOCATE),$(call dontrelocate,opt,$(PROTOTYPE))) @@ -665,6 +685,19 @@ reset-merge-README.CSW: $(_DBG)rm -f $(COOKIEDIR)/merge-README.CSW $(foreach SPEC,$(_PKG_SPECS),$(PKGROOT)$(docdir)/$(call catalogname,$(SPEC))/README.CSW) +merge-obsoleted-by: $(WORKDIR_GLOBAL) + $(_DBG)$(foreach P,$(OBSOLETED_PKGS),$(foreach Q,$(PACKAGES),$(if $(filter $P,$(OBSOLETES_$Q)), \ + $(if $(SPKG_DESC_$Q), \ + echo "$Q $(call catalogname,$Q) - $(SPKG_DESC_$Q)" >> $(WORKDIR_GLOBAL)/$P.obsoleted-by;, \ + echo "$(shell (/usr/bin/pkginfo $Q || echo "$Q - ") | $(GAWK) '{ $$1 = "P"; print } ')" $(WORKDIR_GLOBAL)/$P.obsoleted-by; \ + ) \ + ))) + @$(MAKECOOKIE) + +.PHONY: reset-merge-obsoleted-by +reset-merge-obsoleted-by: + $(_DBG)rm -f $(COOKIEDIR)/merge-obsoleted-by $(WORKDIR_GLOBAL)/obsoleted-by.* + merge-classutils: merge-migrateconf merge-usergroup merge-inetdconf merge-etcservices reset-merge-classutils: reset-merge-migrateconf reset-merge-usergroup reset-merge-inetdconf reset-merge-etcservices This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Sun Feb 20 22:04:03 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sun, 20 Feb 2011 21:04:03 +0000 Subject: [csw-devel] SF.net SVN: gar:[13420] csw/mgar/pkg Message-ID: Revision: 13420 http://gar.svn.sourceforge.net/gar/?rev=13420&view=rev Author: bdwalton Date: 2011-02-20 21:04:03 +0000 (Sun, 20 Feb 2011) Log Message: ----------- comment out the UFILES_REGEX in the standard and x11 newpkg templates (there may be more to fine still) Modified Paths: -------------- csw/mgar/pkg/Makefile csw/mgar/pkg/x11/Makefile Modified: csw/mgar/pkg/Makefile =================================================================== --- csw/mgar/pkg/Makefile 2011-02-20 19:17:33 UTC (rev 13419) +++ csw/mgar/pkg/Makefile 2011-02-20 21:04:03 UTC (rev 13420) @@ -82,8 +82,10 @@ echo "MASTER_SITES = "; \ echo "DISTFILES = $$(DISTNAME).tar.gz"; \ echo ""; \ - echo "# File name regex to get notifications about upstream software releases"; \ - echo "UFILES_REGEX = $$(NAME)-(\d+(?:\.\d+)*).tar.gz"; \ + echo "# File name regex to get notifications about upstream software releases"; \ + echo "# NOTE: Use this only if the automatic regex creation"; \ + echo "# does not work for your package"; \ + echo "# UFILES_REGEX = $$(NAME)-(\d+(?:\.\d+)*).tar.gz"; \ echo ""; \ echo "# If the url used to check for software update is different of MASTER_SITES, then "; \ echo "# uncomment the next line. Otherwise it is set by default to the value of MASTER_SITES"; \ Modified: csw/mgar/pkg/x11/Makefile =================================================================== --- csw/mgar/pkg/x11/Makefile 2011-02-20 19:17:33 UTC (rev 13419) +++ csw/mgar/pkg/x11/Makefile 2011-02-20 21:04:03 UTC (rev 13420) @@ -41,7 +41,8 @@ echo "DISTFILES = $$(NAME)-$$(VERSION).tar.gz"; \ echo ""; \ echo "# We define upstream file regex so we can be notifed of new upstream software release"; \ - echo "UFILES_REGEX = $$(NAME)-(\d+(?:\.\d+)*).tar.gz"; \ + echo "# does not work for your package"; \ + echo "# UFILES_REGEX = $$(NAME)-(\d+(?:\.\d+)*).tar.gz"; echo ""; \ echo "# If the url used to check for software update is different of MASTER_SITES, then "; \ echo "# uncomment the next line. Otherwise it is set by default to the value of MASTER_SITES"; \ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From rthurner at users.sourceforge.net Sun Feb 20 22:15:59 2011 From: rthurner at users.sourceforge.net (rthurner at users.sourceforge.net) Date: Sun, 20 Feb 2011 21:15:59 +0000 Subject: [csw-devel] SF.net SVN: gar:[13421] csw/mgar/pkg/mysql5/branches/51/ Message-ID: Revision: 13421 http://gar.svn.sourceforge.net/gar/?rev=13421&view=rev Author: rthurner Date: 2011-02-20 21:15:59 +0000 (Sun, 20 Feb 2011) Log Message: ----------- branch to be able to still deliver 5.1 packages should it be necessary Added Paths: ----------- csw/mgar/pkg/mysql5/branches/51/ Property changes on: csw/mgar/pkg/mysql5/branches/51 ___________________________________________________________________ Added: svn:ignore + cookies download work mysql-5.0.84 old-pkgs CSWmysql5 Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2-checkpkg Added: svn:mergeinfo + /csw/mgar/pkg/mysql5/branches/mysql-5.0.x:6058-7197 /csw/mgar/pkg/mysql5/branches/mysql-5.1.x:7198-7556 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From rthurner at users.sourceforge.net Sun Feb 20 22:25:52 2011 From: rthurner at users.sourceforge.net (rthurner at users.sourceforge.net) Date: Sun, 20 Feb 2011 21:25:52 +0000 Subject: [csw-devel] SF.net SVN: gar:[13422] csw/mgar/pkg/mysql5/branches/51/ Message-ID: Revision: 13422 http://gar.svn.sourceforge.net/gar/?rev=13422&view=rev Author: rthurner Date: 2011-02-20 21:25:52 +0000 (Sun, 20 Feb 2011) Log Message: ----------- mysql: remove this branch, already exists with different name Removed Paths: ------------- csw/mgar/pkg/mysql5/branches/51/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From rthurner at users.sourceforge.net Sun Feb 20 22:32:23 2011 From: rthurner at users.sourceforge.net (rthurner at users.sourceforge.net) Date: Sun, 20 Feb 2011 21:32:23 +0000 Subject: [csw-devel] SF.net SVN: gar:[13423] csw/mgar/pkg/mysql5/trunk Message-ID: Revision: 13423 http://gar.svn.sourceforge.net/gar/?rev=13423&view=rev Author: rthurner Date: 2011-02-20 21:32:23 +0000 (Sun, 20 Feb 2011) Log Message: ----------- mysql5: upgrade to mysql-5.5, first try Modified Paths: -------------- csw/mgar/pkg/mysql5/trunk/Makefile csw/mgar/pkg/mysql5/trunk/checksums Added Paths: ----------- csw/mgar/pkg/mysql5/trunk/files/CSWmysql55.postinstall csw/mgar/pkg/mysql5/trunk/files/CSWmysql55.preinstall csw/mgar/pkg/mysql5/trunk/files/cswmysql55 Removed Paths: ------------- csw/mgar/pkg/mysql5/trunk/files/CSWmysql51.postinstall csw/mgar/pkg/mysql5/trunk/files/CSWmysql51.preinstall csw/mgar/pkg/mysql5/trunk/files/cswmysql51 Modified: csw/mgar/pkg/mysql5/trunk/Makefile =================================================================== --- csw/mgar/pkg/mysql5/trunk/Makefile 2011-02-20 21:25:52 UTC (rev 13422) +++ csw/mgar/pkg/mysql5/trunk/Makefile 2011-02-20 21:32:23 UTC (rev 13423) @@ -2,9 +2,9 @@ # Distributed under the terms of the GNU General Public License v2 # $Id$ -NAME = mysql51 -BASE_VERSION = 5.1 -PATCHLEVEL = 40 +NAME = mysql55 +BASE_VERSION = 5.5 +PATCHLEVEL = 9 VERSION = $(BASE_VERSION).$(PATCHLEVEL) CATEGORIES = server Modified: csw/mgar/pkg/mysql5/trunk/checksums =================================================================== --- csw/mgar/pkg/mysql5/trunk/checksums 2011-02-20 21:25:52 UTC (rev 13422) +++ csw/mgar/pkg/mysql5/trunk/checksums 2011-02-20 21:32:23 UTC (rev 13423) @@ -1,12 +1 @@ -a0b98a7320bce2da3e1f90da704d3c85 0001-Use-libc-not-libcrypt.patch -1414d06fab1530484a508927a0de4154 0002-cast-user_info-pw_gid-to-gid_t.patch -5415f365f1b0f7a179d1efc25f45bbee 0003-OpenCSW-perl-for-tests.patch -8ab232cd4d232b3cda3bbced93f80237 0004-basedir-and-datadir-in-the-cnf-files.patch -c8c2ef6365a9bd9b71fac6198d3eeef8 CSWmysql51.postinstall -a652ccff001c328178f4b0ed9bfebbd6 CSWmysql51.preinstall -e691b0cf00a3925ac55c1844045d6e30 ChangeLog -e42afb5ec1b1ab02d2ec3b46d0922636 README.CSW -0974c28c048437612c6a0ace93460d3b cswmysql51 -67228e1f096fe08a94f4267439a4ec36 cswusergroup -32e7373c16271606007374396e6742ad mysql-5.1.40.tar.gz -60bc6bed72839668ef6496fd31a01ad3 quick_start-csw +701c0c44b7f1c2300adc0dc45729f903 mysql-5.5.9.tar.gz Deleted: csw/mgar/pkg/mysql5/trunk/files/CSWmysql51.postinstall =================================================================== --- csw/mgar/pkg/mysql5/trunk/files/CSWmysql51.postinstall 2011-02-20 21:25:52 UTC (rev 13422) +++ csw/mgar/pkg/mysql5/trunk/files/CSWmysql51.postinstall 2011-02-20 21:32:23 UTC (rev 13423) @@ -1,15 +0,0 @@ -#!/bin/sh -# -# $Id$ -# - -MYSQLDATADIR=/var/opt/csw/mysql5 -if [ ! -d "${MYSQLDATADIR}/mysql" ] ; then - echo "No database directory found in the default location:" - echo "${MYSQLDATADIR}/mysql" - echo "If you need to build the initial database directory," - echo " see /opt/csw/mysql5/share/mysql/quick_start-csw" - echo "If you are using a non-default database directory location," - echo " please start mysql manually." - exit 0 -fi Deleted: csw/mgar/pkg/mysql5/trunk/files/CSWmysql51.preinstall =================================================================== --- csw/mgar/pkg/mysql5/trunk/files/CSWmysql51.preinstall 2011-02-20 21:25:52 UTC (rev 13422) +++ csw/mgar/pkg/mysql5/trunk/files/CSWmysql51.preinstall 2011-02-20 21:32:23 UTC (rev 13423) @@ -1,40 +0,0 @@ -#!/bin/sh -# vim:set sw=2 ts=2 sts=2 expandtab: -# -# $Id$ -# - -obsolete_directories="/opt/csw/mysql5/var:/var/opt/csw/mysql5" - -obsolete_dir_information=" -This directory is obsolete. Files in this directory are going to be ignored. -Please move your data to the new location. - -Feel free to remove this file afterwards. -" -obsolete_dir_file_name="README.THIS_DIRECTORY_IS_OBSOLETE" - -for dirpair in ${obsolete_directories}; do - obsolete_dir=`echo ${dirpair} | cut -d: -f1` - new_dir=`echo ${dirpair} | cut -d: -f2` - if [ -d "${PKG_INSTALL_ROOT}${obsolete_dir}" ]; then - echo - echo "*******************************************************************" - echo "* The old configuration directory ${obsolete_dir} still exists. " - echo "* Please move your configuration to ${new_dir}. " - echo "* " - echo "* Installation will continue in 10 seconds. " - echo "* Press CTRL+C if you want to stop now. " - echo "*******************************************************************" - echo - sleep 10 - - # Leaving a note for the sysadmin if the they proceed with the installation. - fn="${PKG_INSTALL_ROOT}${obsolete_dir}/${obsolete_dir_file_name}" - if touch "${fn}" 2>/dev/null; then - echo "${obsolete_dir_information}" > "${fn}" - fi - fi -done - -exit 0 Copied: csw/mgar/pkg/mysql5/trunk/files/CSWmysql55.postinstall (from rev 13392, csw/mgar/pkg/mysql5/trunk/files/CSWmysql51.postinstall) =================================================================== --- csw/mgar/pkg/mysql5/trunk/files/CSWmysql55.postinstall (rev 0) +++ csw/mgar/pkg/mysql5/trunk/files/CSWmysql55.postinstall 2011-02-20 21:32:23 UTC (rev 13423) @@ -0,0 +1,15 @@ +#!/bin/sh +# +# $Id$ +# + +MYSQLDATADIR=/var/opt/csw/mysql5 +if [ ! -d "${MYSQLDATADIR}/mysql" ] ; then + echo "No database directory found in the default location:" + echo "${MYSQLDATADIR}/mysql" + echo "If you need to build the initial database directory," + echo " see /opt/csw/mysql5/share/mysql/quick_start-csw" + echo "If you are using a non-default database directory location," + echo " please start mysql manually." + exit 0 +fi Copied: csw/mgar/pkg/mysql5/trunk/files/CSWmysql55.preinstall (from rev 13392, csw/mgar/pkg/mysql5/trunk/files/CSWmysql51.preinstall) =================================================================== --- csw/mgar/pkg/mysql5/trunk/files/CSWmysql55.preinstall (rev 0) +++ csw/mgar/pkg/mysql5/trunk/files/CSWmysql55.preinstall 2011-02-20 21:32:23 UTC (rev 13423) @@ -0,0 +1,40 @@ +#!/bin/sh +# vim:set sw=2 ts=2 sts=2 expandtab: +# +# $Id$ +# + +obsolete_directories="/opt/csw/mysql5/var:/var/opt/csw/mysql5" + +obsolete_dir_information=" +This directory is obsolete. Files in this directory are going to be ignored. +Please move your data to the new location. + +Feel free to remove this file afterwards. +" +obsolete_dir_file_name="README.THIS_DIRECTORY_IS_OBSOLETE" + +for dirpair in ${obsolete_directories}; do + obsolete_dir=`echo ${dirpair} | cut -d: -f1` + new_dir=`echo ${dirpair} | cut -d: -f2` + if [ -d "${PKG_INSTALL_ROOT}${obsolete_dir}" ]; then + echo + echo "*******************************************************************" + echo "* The old configuration directory ${obsolete_dir} still exists. " + echo "* Please move your configuration to ${new_dir}. " + echo "* " + echo "* Installation will continue in 10 seconds. " + echo "* Press CTRL+C if you want to stop now. " + echo "*******************************************************************" + echo + sleep 10 + + # Leaving a note for the sysadmin if the they proceed with the installation. + fn="${PKG_INSTALL_ROOT}${obsolete_dir}/${obsolete_dir_file_name}" + if touch "${fn}" 2>/dev/null; then + echo "${obsolete_dir_information}" > "${fn}" + fi + fi +done + +exit 0 Deleted: csw/mgar/pkg/mysql5/trunk/files/cswmysql51 =================================================================== --- csw/mgar/pkg/mysql5/trunk/files/cswmysql51 2011-02-20 21:25:52 UTC (rev 13422) +++ csw/mgar/pkg/mysql5/trunk/files/cswmysql51 2011-02-20 21:32:23 UTC (rev 13423) @@ -1,183 +0,0 @@ -#!/bin/sh -# -# $Id$ -# Start script for MySQL database. -# -# NOTE: Make sure DB_DIR is owned BY the mysql user and group and chmod -# 700. -# -# First time installation can use quick_start-csw in -# /opt/csw/mysql5/share/mysql to build the mysql database for the -# grant tables. Or create the initial database yourself. -# -# Use my.cnf for startup options. See MySQL documention -# for 'Using Option Files'. -# Support for mysql5rc still remains in this startup script. -# - -RETVAL=0 -MYSQLHOME=/opt/csw/mysql5 -MYSQL_VAR=/var/opt/csw/mysql5 -MYSQLD_DATADIR=$MYSQL_VAR -MYSQLD_PID_FILE=$MYSQL_VAR/mysql.pid -CONFFILE=$MYSQL_VAR/my.cnf - -# -# Source configuration -[ -r /opt/csw/mysql5/etc/mysql5rc ] && . /opt/csw/mysql5/etc/mysql5rc -[ -r /etc/opt/csw/mysql5rc ] && . /etc/opt/csw/mysql5rc - -# To get started quickly, copy a sample configuration file from -# $MYSQLHOME/share/mysql -# For example, -# cp /opt/csw/mysql5/share/mysql/my-medium.cnf /opt/csw/mysql5/var/my.cnf -# -# Or, manually follow the database creation steps below, and have -# mysql just use defaults for everything. - -# 2006-03-11 Changed to only look for the grant tables database -# 2006-04-16 Changed again. Look for either the grant tables database -# or the options file. -# 2006-12-28 Fix problem. Look for either the grant tables database in -# the default location or the default options file. -if [ ! -d "$MYSQLD_DATADIR/mysql" -a ! -f "$CONFFILE" ] ; then - exit 0 -fi - -# If CONFFILE is the server default file, unset CONFFILE -if [ x"$CONFFILE" = x"$MYSQL_VAR/my.cnf" ]; then - CONFFILE= -fi - -# If MYSQLD_DATADIR does not contain a mysql directory, unset MYSQLD_DATADIR -# Also, check that MYSQLD_DATADIR contains a mysql directory -if [ ! -d "$MYSQL_VAR/mysql" -a ! -d "$MYSQLD_DATADIR/mysql" ] ; then - MYSQLD_DATADIR= -fi - -# Make sure required vars are set -MYSQLD_PID_FILE=${MYSQLD_PID_FILE:=$MYSQL_VAR/mysql.pid} - -# If a database already exists, start whether or not there is a conf file. -# If no conf file, the database will just use internal defaults for everything. - -start_it() { - if test -r $MYSQLD_PID_FILE ; then - if kill -0 `cat $MYSQLD_PID_FILE` > /dev/null 2>&1 ; then - echo "mysqld (`cat $MYSQLD_PID_FILE`) seems to be running." - return 1 - fi - fi - - printf "%-60s" "Starting mysqld: " -# 2006-03-11 -# This script no longer creates the default database. You may create the -# default database manually or use /opt/csw/mysql5/share/mysql/quick_start-csw -# if [ ! -d "$MYSQLHOME/var/mysql" ] ; then -# echo MySQL core database has not been created. -# echo Creating it now... -# $MYSQLHOME/bin/mysql_install_db -# chown -R mysql:mysql $MYSQLHOME/var -# fi - -# 2006-04-16 --defaults-file is changed to --defaults-extra-file - $MYSQLHOME/bin/mysqld_safe \ - `[ -n "$CONFFILE" ] && echo "--defaults-extra-file=$CONFFILE"` \ - --pid-file=$MYSQLD_PID_FILE \ - `[ -n "$MYSQLD_PROG" ] && echo "--mysqld=$MYSQLD_PROG"` \ - `[ -n "$MYSQLD_ANSI" ] && echo "--ansi"` \ - `[ -n "$MYSQLD_BASEDIR" ] && echo "--basedir=$MYSQLD_BASEDIR"` \ - `[ -n "$MYSQLD_BIG_TABLES" ] && echo "--big-tables"` \ - `[ -n "$MYSQLD_BIND_ADDRESS" ] && echo "--bind-address=$MYSQLD_BIND_ADDRESS"` \ - `[ -n "$MYSQLD_CHARACTER_SETS" ] && echo "--character-sets-dir=$MYSQLD_CHARACTER_SETS"` \ - `[ -n "$MYSQLD_CHROOT" ] && echo "--chroot=$MYSQLD_CHROOT"` \ - `[ -n "$MYSQLD_DATADIR" ] && echo "--datadir=$MYSQLD_DATADIR"` \ - `[ -n "$MYSQLD_DEFAULT_CHARSET" ] && echo "--default-character-set=$MYSQLD_DEFAULT_CHARSET"` \ - `[ -n "$MYSQLD_DEFAULT_TABLE_TYPE" ] && echo "--default-table-type=$MYSQLD_DEFAULT_TABLE_TYPE"` \ - `[ -n "$MYSQLD_DELAY_KEY_WRITE_TABLES" ] && echo "--delay-key-write-for-all-tables"` \ - `[ -n "$MYSQLD_ENABLE_LOCKING" ] && echo "--enable-locking"` \ - `[ -n "$MYSQLD_EXIT_INFO" ] && echo "--exit-info"` \ - `[ -n "$MYSQLD_FLUSH" ] && echo "--flush"` \ - `[ -n "$MYSQLD_INIT_FILE" ] && echo "--init-file=$MYSQLD_INIT_FILE"` \ - `[ -n "$MYSQLD_LANGUAGE" ] && echo "--language=$MYSQLD_LANGUAGE"` \ - `[ -n "$MYSQLD_LOG" ] && echo "--log=$MYSQLD_LOG"` \ - `[ -n "$MYSQLD_LOG_ISAM" ] && echo "--log-isam=$MYSQLD_LOG_ISAM"` \ - `[ -n "$MYSQLD_LOG_SLOW_QUERIES" ] && echo "--log-slow-queries=$MYSQLD_LOG_SLOW_QUERIES"` \ - `[ -n "$MYSQLD_LOG_UPDATE" ] && echo "--log-update=$MYSQLD_LOG_UPDATE"` \ - `[ -n "$MYSQLD_LOG_LONG_FORMAT" ] && echo "--log-long-format"` \ - `[ -n "$MYSQLD_LOW_PRIORITY_UPDATES" ] && echo "--low-priority-updates"` \ - `[ -n "$MYSQLD_MEMLOCK" ] && echo "--memlock"` \ - `[ -n "$MYSQLD_MYISAM_RECOVER" ] && echo "--myisam-recover=$MYSQLD_MYISAM_RECOVER"` \ - `[ -n "$MYSQLD_PORT" ] && echo "--port=$MYSQLD_PORT"` \ - `[ -n "$MYSQLD_OLD_PROTOCOL" ] && echo "--old-protocol"` \ - `[ -n "$MYSQLD_ONE_THREAD" ] && echo "--one-thread"` \ - `[ -n "$MYSQLD_SET_VARIABLE" ] && echo "--set-variablevar=$MYSQLD_SET_VARIABLE"` \ - `[ -n "$MYSQLD_SKIP_GRANT_TABLES" ] && echo "--skip-grant-tables"` \ - `[ -n "$MYSQLD_SAFE_MODE" ] && echo "--safe-mode"` \ - `[ -n "$MYSQLD_SECURE" ] && echo "--secure"` \ - `[ -n "$MYSQLD_SKIP_CONCURRENT_INSERT" ] && echo "--skip-concurrent-insert"` \ - `[ -n "$MYSQLD_SKIP_DELAY_KEY_WRITE" ] && echo "--skip-delay-key-write"` \ - `[ -n "$MYSQLD_SKIP_LOCKING" ] && echo "--skip-locking"` \ - `[ -n "$MYSQLD_SKIP_NAME_RESOLVE" ] && echo "--skip-name-resolve"` \ - `[ -n "$MYSQLD_SKIP_NETWORKING" ] && echo "--skip-networking"` \ - `[ -n "$MYSQLD_SKIP_NEW" ] && echo "--skip-new"` \ - `[ -n "$MYSQLD_SKIP_HOST_CACHE" ] && echo "--skip-host-cache"` \ - `[ -n "$MYSQLD_SKIP_SHOW_DATABASE" ] && echo "--skip-show-database"` \ - `[ -n "$MYSQLD_SKIP_THREAD_PRIORITY" ] && echo "--skip-thread-priority"` \ - `[ -n "$MYSQLD_SOCKET" ] && echo "--socket=$MYSQLD_SOCKET"` \ - `[ -n "$MYSQLD_TMPDIR" ] && echo "--tmpdir=$MYSQLD_TMPDIR"` \ - `[ -n "$MYSQLD_USER" ] && echo "--user=$MYSQLD_USER"` \ - & >/dev/null 2>&1 - RETVAL=$? - if [ $RETVAL = 0 ] ; then - echo "[ OK ]" - else - echo "[FAILED]" - return 1 - fi - return 0 -} - -stop_it() { - - printf "%-60s" "Shutting down mysqld: " - if test -f "$MYSQLD_PID_FILE" ; then - pkill mysqld_safe >/dev/null 2>&1 - kill `cat $MYSQLD_PID_FILE` >/dev/null 2>&1 - RETVAL=$? - else - RETVAL=1 - fi - if [ $RETVAL = 0 ] ; then - echo "[ OK ]" - else - echo "[FAILED]" - fi - echo "" - return 0 -} - -case $1 in - start) - start_it - ;; - - stop) - stop_it - ;; - - restart) - stop_it - while pgrep mysqld > /dev/null - do - sleep 1 - done - start_it - ;; - - *) - echo "Usage: $0 { start | stop | restart } " - ;; -esac - -exit $RETVAL Copied: csw/mgar/pkg/mysql5/trunk/files/cswmysql55 (from rev 13392, csw/mgar/pkg/mysql5/trunk/files/cswmysql51) =================================================================== --- csw/mgar/pkg/mysql5/trunk/files/cswmysql55 (rev 0) +++ csw/mgar/pkg/mysql5/trunk/files/cswmysql55 2011-02-20 21:32:23 UTC (rev 13423) @@ -0,0 +1,183 @@ +#!/bin/sh +# +# $Id$ +# Start script for MySQL database. +# +# NOTE: Make sure DB_DIR is owned BY the mysql user and group and chmod +# 700. +# +# First time installation can use quick_start-csw in +# /opt/csw/mysql5/share/mysql to build the mysql database for the +# grant tables. Or create the initial database yourself. +# +# Use my.cnf for startup options. See MySQL documention +# for 'Using Option Files'. +# Support for mysql5rc still remains in this startup script. +# + +RETVAL=0 +MYSQLHOME=/opt/csw/mysql5 +MYSQL_VAR=/var/opt/csw/mysql5 +MYSQLD_DATADIR=$MYSQL_VAR +MYSQLD_PID_FILE=$MYSQL_VAR/mysql.pid +CONFFILE=$MYSQL_VAR/my.cnf + +# +# Source configuration +[ -r /opt/csw/mysql5/etc/mysql5rc ] && . /opt/csw/mysql5/etc/mysql5rc +[ -r /etc/opt/csw/mysql5rc ] && . /etc/opt/csw/mysql5rc + +# To get started quickly, copy a sample configuration file from +# $MYSQLHOME/share/mysql +# For example, +# cp /opt/csw/mysql5/share/mysql/my-medium.cnf /opt/csw/mysql5/var/my.cnf +# +# Or, manually follow the database creation steps below, and have +# mysql just use defaults for everything. + +# 2006-03-11 Changed to only look for the grant tables database +# 2006-04-16 Changed again. Look for either the grant tables database +# or the options file. +# 2006-12-28 Fix problem. Look for either the grant tables database in +# the default location or the default options file. +if [ ! -d "$MYSQLD_DATADIR/mysql" -a ! -f "$CONFFILE" ] ; then + exit 0 +fi + +# If CONFFILE is the server default file, unset CONFFILE +if [ x"$CONFFILE" = x"$MYSQL_VAR/my.cnf" ]; then + CONFFILE= +fi + +# If MYSQLD_DATADIR does not contain a mysql directory, unset MYSQLD_DATADIR +# Also, check that MYSQLD_DATADIR contains a mysql directory +if [ ! -d "$MYSQL_VAR/mysql" -a ! -d "$MYSQLD_DATADIR/mysql" ] ; then + MYSQLD_DATADIR= +fi + +# Make sure required vars are set +MYSQLD_PID_FILE=${MYSQLD_PID_FILE:=$MYSQL_VAR/mysql.pid} + +# If a database already exists, start whether or not there is a conf file. +# If no conf file, the database will just use internal defaults for everything. + +start_it() { + if test -r $MYSQLD_PID_FILE ; then + if kill -0 `cat $MYSQLD_PID_FILE` > /dev/null 2>&1 ; then + echo "mysqld (`cat $MYSQLD_PID_FILE`) seems to be running." + return 1 + fi + fi + + printf "%-60s" "Starting mysqld: " +# 2006-03-11 +# This script no longer creates the default database. You may create the +# default database manually or use /opt/csw/mysql5/share/mysql/quick_start-csw +# if [ ! -d "$MYSQLHOME/var/mysql" ] ; then +# echo MySQL core database has not been created. +# echo Creating it now... +# $MYSQLHOME/bin/mysql_install_db +# chown -R mysql:mysql $MYSQLHOME/var +# fi + +# 2006-04-16 --defaults-file is changed to --defaults-extra-file + $MYSQLHOME/bin/mysqld_safe \ + `[ -n "$CONFFILE" ] && echo "--defaults-extra-file=$CONFFILE"` \ + --pid-file=$MYSQLD_PID_FILE \ + `[ -n "$MYSQLD_PROG" ] && echo "--mysqld=$MYSQLD_PROG"` \ + `[ -n "$MYSQLD_ANSI" ] && echo "--ansi"` \ + `[ -n "$MYSQLD_BASEDIR" ] && echo "--basedir=$MYSQLD_BASEDIR"` \ + `[ -n "$MYSQLD_BIG_TABLES" ] && echo "--big-tables"` \ + `[ -n "$MYSQLD_BIND_ADDRESS" ] && echo "--bind-address=$MYSQLD_BIND_ADDRESS"` \ + `[ -n "$MYSQLD_CHARACTER_SETS" ] && echo "--character-sets-dir=$MYSQLD_CHARACTER_SETS"` \ + `[ -n "$MYSQLD_CHROOT" ] && echo "--chroot=$MYSQLD_CHROOT"` \ + `[ -n "$MYSQLD_DATADIR" ] && echo "--datadir=$MYSQLD_DATADIR"` \ + `[ -n "$MYSQLD_DEFAULT_CHARSET" ] && echo "--default-character-set=$MYSQLD_DEFAULT_CHARSET"` \ + `[ -n "$MYSQLD_DEFAULT_TABLE_TYPE" ] && echo "--default-table-type=$MYSQLD_DEFAULT_TABLE_TYPE"` \ + `[ -n "$MYSQLD_DELAY_KEY_WRITE_TABLES" ] && echo "--delay-key-write-for-all-tables"` \ + `[ -n "$MYSQLD_ENABLE_LOCKING" ] && echo "--enable-locking"` \ + `[ -n "$MYSQLD_EXIT_INFO" ] && echo "--exit-info"` \ + `[ -n "$MYSQLD_FLUSH" ] && echo "--flush"` \ + `[ -n "$MYSQLD_INIT_FILE" ] && echo "--init-file=$MYSQLD_INIT_FILE"` \ + `[ -n "$MYSQLD_LANGUAGE" ] && echo "--language=$MYSQLD_LANGUAGE"` \ + `[ -n "$MYSQLD_LOG" ] && echo "--log=$MYSQLD_LOG"` \ + `[ -n "$MYSQLD_LOG_ISAM" ] && echo "--log-isam=$MYSQLD_LOG_ISAM"` \ + `[ -n "$MYSQLD_LOG_SLOW_QUERIES" ] && echo "--log-slow-queries=$MYSQLD_LOG_SLOW_QUERIES"` \ + `[ -n "$MYSQLD_LOG_UPDATE" ] && echo "--log-update=$MYSQLD_LOG_UPDATE"` \ + `[ -n "$MYSQLD_LOG_LONG_FORMAT" ] && echo "--log-long-format"` \ + `[ -n "$MYSQLD_LOW_PRIORITY_UPDATES" ] && echo "--low-priority-updates"` \ + `[ -n "$MYSQLD_MEMLOCK" ] && echo "--memlock"` \ + `[ -n "$MYSQLD_MYISAM_RECOVER" ] && echo "--myisam-recover=$MYSQLD_MYISAM_RECOVER"` \ + `[ -n "$MYSQLD_PORT" ] && echo "--port=$MYSQLD_PORT"` \ + `[ -n "$MYSQLD_OLD_PROTOCOL" ] && echo "--old-protocol"` \ + `[ -n "$MYSQLD_ONE_THREAD" ] && echo "--one-thread"` \ + `[ -n "$MYSQLD_SET_VARIABLE" ] && echo "--set-variablevar=$MYSQLD_SET_VARIABLE"` \ + `[ -n "$MYSQLD_SKIP_GRANT_TABLES" ] && echo "--skip-grant-tables"` \ + `[ -n "$MYSQLD_SAFE_MODE" ] && echo "--safe-mode"` \ + `[ -n "$MYSQLD_SECURE" ] && echo "--secure"` \ + `[ -n "$MYSQLD_SKIP_CONCURRENT_INSERT" ] && echo "--skip-concurrent-insert"` \ + `[ -n "$MYSQLD_SKIP_DELAY_KEY_WRITE" ] && echo "--skip-delay-key-write"` \ + `[ -n "$MYSQLD_SKIP_LOCKING" ] && echo "--skip-locking"` \ + `[ -n "$MYSQLD_SKIP_NAME_RESOLVE" ] && echo "--skip-name-resolve"` \ + `[ -n "$MYSQLD_SKIP_NETWORKING" ] && echo "--skip-networking"` \ + `[ -n "$MYSQLD_SKIP_NEW" ] && echo "--skip-new"` \ + `[ -n "$MYSQLD_SKIP_HOST_CACHE" ] && echo "--skip-host-cache"` \ + `[ -n "$MYSQLD_SKIP_SHOW_DATABASE" ] && echo "--skip-show-database"` \ + `[ -n "$MYSQLD_SKIP_THREAD_PRIORITY" ] && echo "--skip-thread-priority"` \ + `[ -n "$MYSQLD_SOCKET" ] && echo "--socket=$MYSQLD_SOCKET"` \ + `[ -n "$MYSQLD_TMPDIR" ] && echo "--tmpdir=$MYSQLD_TMPDIR"` \ + `[ -n "$MYSQLD_USER" ] && echo "--user=$MYSQLD_USER"` \ + & >/dev/null 2>&1 + RETVAL=$? + if [ $RETVAL = 0 ] ; then + echo "[ OK ]" + else + echo "[FAILED]" + return 1 + fi + return 0 +} + +stop_it() { + + printf "%-60s" "Shutting down mysqld: " + if test -f "$MYSQLD_PID_FILE" ; then + pkill mysqld_safe >/dev/null 2>&1 + kill `cat $MYSQLD_PID_FILE` >/dev/null 2>&1 + RETVAL=$? + else + RETVAL=1 + fi + if [ $RETVAL = 0 ] ; then + echo "[ OK ]" + else + echo "[FAILED]" + fi + echo "" + return 0 +} + +case $1 in + start) + start_it + ;; + + stop) + stop_it + ;; + + restart) + stop_it + while pgrep mysqld > /dev/null + do + sleep 1 + done + start_it + ;; + + *) + echo "Usage: $0 { start | stop | restart } " + ;; +esac + +exit $RETVAL This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Mon Feb 21 00:45:23 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sun, 20 Feb 2011 23:45:23 +0000 Subject: [csw-devel] SF.net SVN: gar:[13424] csw/mgar/pkg/ruby18/ Message-ID: Revision: 13424 http://gar.svn.sourceforge.net/gar/?rev=13424&view=rev Author: bdwalton Date: 2011-02-20 23:45:23 +0000 (Sun, 20 Feb 2011) Log Message: ----------- move ruby to ruby18 Added Paths: ----------- csw/mgar/pkg/ruby18/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Mon Feb 21 00:55:55 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sun, 20 Feb 2011 23:55:55 +0000 Subject: [csw-devel] SF.net SVN: gar:[13425] csw/mgar/pkg/php5/branches/re-enable-extensions/ Message-ID: Revision: 13425 http://gar.svn.sourceforge.net/gar/?rev=13425&view=rev Author: bdwalton Date: 2011-02-20 23:55:55 +0000 (Sun, 20 Feb 2011) Log Message: ----------- add re-enable-extensions branch to get sub-package splits under control again Added Paths: ----------- csw/mgar/pkg/php5/branches/re-enable-extensions/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Mon Feb 21 01:00:13 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Mon, 21 Feb 2011 00:00:13 +0000 Subject: [csw-devel] SF.net SVN: gar:[13426] csw/mgar/pkg/php5/branches/re-enable-extensions/ extensions/php5_recode/Makefile.disabled Message-ID: Revision: 13426 http://gar.svn.sourceforge.net/gar/?rev=13426&view=rev Author: bdwalton Date: 2011-02-21 00:00:13 +0000 (Mon, 21 Feb 2011) Log Message: ----------- disable the recode module for now Added Paths: ----------- csw/mgar/pkg/php5/branches/re-enable-extensions/extensions/php5_recode/Makefile.disabled Added: csw/mgar/pkg/php5/branches/re-enable-extensions/extensions/php5_recode/Makefile.disabled =================================================================== --- csw/mgar/pkg/php5/branches/re-enable-extensions/extensions/php5_recode/Makefile.disabled (rev 0) +++ csw/mgar/pkg/php5/branches/re-enable-extensions/extensions/php5_recode/Makefile.disabled 2011-02-21 00:00:13 UTC (rev 13426) @@ -0,0 +1 @@ +@ ( echo "==> Not configuring recode see README in extensions/php5_recode" ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Mon Feb 21 01:50:19 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Mon, 21 Feb 2011 00:50:19 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[303] utilities/mk_core_list.sh Message-ID: Revision: 303 http://opencsw.svn.sourceforge.net/opencsw/?rev=303&view=rev Author: wahwah Date: 2011-02-21 00:50:19 +0000 (Mon, 21 Feb 2011) Log Message: ----------- mk_core_list.sh: A utility to create a list of packages for the core catalog. People are welcome to add their packages. Added Paths: ----------- utilities/mk_core_list.sh Added: utilities/mk_core_list.sh =================================================================== --- utilities/mk_core_list.sh (rev 0) +++ utilities/mk_core_list.sh 2011-02-21 00:50:19 UTC (rev 303) @@ -0,0 +1,51 @@ +#!/bin/bash + +# $Id$ +# +# This script helps creating a list of core packages, by starting with +# specific packages and adding all their dependencies. + +set -u +set -e + +# The current idea is to keep the list divided by sections, each section +# sorted alphabetically. +core_start_pkgs=( + # Servers + apache2 + # Interpreters + perl + python + ruby + # Editors + vim + emacs + # Userland + coreutils + elinks + findutils + gawk + gfile + ggrep + gsed + gtar + mc + rsync + screen + sudo + wget +) +outfile="core.txt" +rm -f "${outfile}" tmp + +for catalogname in "${core_start_pkgs[@]}"; do + pkgutil -d --parse --config ~/pkgutil.conf \ + -W "${HOME}/.pkgutil" \ + "${catalogname}" \ + | awk '{print $1}' \ + >> "${outfile}" +done + +< "${outfile}" sort | uniq > tmp +mv tmp "${outfile}" +less "${outfile}" Property changes on: utilities/mk_core_list.sh ___________________________________________________________________ Added: svn:keywords + Id This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Mon Feb 21 02:13:11 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Mon, 21 Feb 2011 01:13:11 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[304] utilities/build_all_architectures.py Message-ID: Revision: 304 http://opencsw.svn.sourceforge.net/opencsw/?rev=304&view=rev Author: wahwah Date: 2011-02-21 01:13:11 +0000 (Mon, 21 Feb 2011) Log Message: ----------- build_all_architectures.py: Removing an obsolete script. Removed Paths: ------------- utilities/build_all_architectures.py Deleted: utilities/build_all_architectures.py =================================================================== --- utilities/build_all_architectures.py 2011-02-21 00:50:19 UTC (rev 303) +++ utilities/build_all_architectures.py 2011-02-21 01:13:11 UTC (rev 304) @@ -1,177 +0,0 @@ -#!/opt/csw/bin/python2.6 -# coding=utf-8 -# Copyright (c) 2009 OpenCSW -# Distributed under the terms of GNU GPL v2. -# vim:set sw=2 ts=2 sts=2 expandtab: -# $Id$ -# -# This script allows to build a set of packages with one keypress. For -# instance, build packages for both sparc and x86 in one go. Or build a -# modulated package with both 32- and 64-bit binaries. It's only workaround -# until Dago releases GAR with parallel builds. - -import copy -import logging -import subprocess -import optparse -import os -import os.path - -logging.basicConfig(level=logging.DEBUG) -DEFAULT_GARPATH_TMPL = "/home/%s/src/opencsw/pkg" -DEFAULT_GARPATH = DEFAULT_GARPATH_TMPL % os.environ["LOGNAME"] -DEFAULT_BRANCH = "trunk" - -class Error(Exception): - pass - -class BuildError(Error): - pass - -class SolarisBuilder(object): - - def __init__(self, software, versions_to_build, build_64_bit=False, - garpath=DEFAULT_GARPATH, - branch=DEFAULT_BRANCH, - checkpkg=True, - debug_flavor=False, - checkout=False): - self.software = software - self.versions_to_build = versions_to_build - self.build_64_bit = build_64_bit - self.garpath = garpath - self.branch = branch - self.checkpkg = checkpkg - self.debug_flavor = debug_flavor - self.checkout = checkout - - def GetBuildPath(self): - return os.path.join(self.garpath, - self.software, - self.branch) - - def BuildOne(self, sol_ver, arch, job_id, - targets=["clean", "package"], - fail_on_errors=True): - build_env = copy.copy(os.environ) - build_env["PARALLELMFLAGS"] = "-l -j 2" - host = "build%s%s" % (sol_ver, arch) - buildpath = self.GetBuildPath() - args = ["ssh", host, "gmake", - "-C", buildpath] - if not self.checkpkg: - args.append("ENABLE_CHECK=0") - build_env["ENABLE_CHECK"] = "0" - - if self.debug_flavor: - args.append("GARFLAVOR=DBG") - build_env["GARFLAVOR"] = "DBG" - - args.extend(targets) - build_proc = subprocess.Popen(args, - stdin=subprocess.PIPE, - stdout=subprocess.PIPE, - stderr=subprocess.PIPE, - env=build_env) - logging.info("Running %s", repr(args)) - (out_stdout, out_stderr) = build_proc.communicate() - ret = build_proc.wait() - if ret: - base_file_name = "%s-%s" % (job_id, host) - fd = open("%s.stdout" % base_file_name, "w") - fd.write(out_stdout) - fd.close() - fd = open("%s.stderr" % base_file_name, "w") - fd.write(out_stderr) - fd.close() - if fail_on_errors: - raise BuildError("Build %s failed" % repr(args)) - else: - logging.info("Build %s has failed", repr(args)) - else: - logging.info("The run of %s was successful", repr(args)) - - def Build(self): - if self.checkout: - args = ["svn", "update", os.path.join(self.garpath, self.software)] - ret = subprocess.call(args) - if ret: - logging.error("Couldn't update %s", self.GetBuildPath()) - if self.build_64_bit and "10" not in self.versions_to_build: - self.BuildOne("8", "s", self.software, - targets=["clean", "package"]) - self.BuildOne("8", "x", self.software, - targets=["clean", "merge"], - fail_on_errors=False) - logging.info("It's okay if build8x merge has failed.") - self.BuildOne("10", "x", self.software, - targets=["merge"]) - self.BuildOne("8", "x", self.software, - targets=["package"], - fail_on_errors=False) - elif not self.build_64_bit: - for sol_ver in self.versions_to_build: - for arch in ("s", "x"): - self.BuildOne(sol_ver, arch, self.software) - - -def main(): - parser = optparse.OptionParser() - parser.add_option("-s", "--software", - dest="software", - help="Software name, e.g. 'cups'") - parser.add_option("", "--64bit", dest="build_64_bit", - action="store_true", default=False, - help="Build a 64-bit binary. Implies building" - " a Solaris 8 binary for sparc, and a modulated" - " binary for x86, compiled on Solaris 8 and 10.") - parser.add_option("", "--no-build-for-8", dest="build_sol_8", - action="store_false", default=True, - help="Skip building Solaris 8 binary") - parser.add_option("", "--build-for-9", dest="build_sol_9", - action="store_true", default=False, - help="Build a separate Solaris 9 binary") - parser.add_option("", "--build-for-10", dest="build_sol_10", - action="store_true", default=False, - help="Build a separate Solaris 10 binary") - parser.add_option("-b", "--branch", dest="branch", - default="trunk", - help="A branch to build, default: 'trunk'." - "To build from a subversion branch: " - "'branches/branch-name'") - parser.add_option("", "--no-check", dest="checkpkg", - action="store_false", default=True, - help="Equivalent to ENABLE_CHECK=0") - parser.add_option("", "--debug-flavor", dest="debug_flavor", - action="store_true", default=False, - help="Equivalent to passing GARFLAVOR=DBG") - parser.add_option("-g", "--gar-path", dest="garpath", - default=DEFAULT_GARPATH, - help="Absolute path to the GAR tree. " - "default: %s" % DEFAULT_GARPATH) - parser.add_option("-c", "--checkout", dest="checkout", - default=False, action="store_true", - help="Check out Subversion sources " - "before building") - (options, args) = parser.parse_args() - if not options.software: - raise Error("I need a software name. Run --help.") - versions_to_build = [] - if options.build_sol_8: - versions_to_build.append("8") - if options.build_sol_9: - versions_to_build.append("9") - if options.build_sol_10: - versions_to_build.append("10") - sb = SolarisBuilder(options.software, - versions_to_build=versions_to_build, - build_64_bit=options.build_64_bit, - branch=options.branch, - checkpkg=options.checkpkg, - debug_flavor=options.debug_flavor, - garpath=options.garpath, - checkout=options.checkout) - sb.Build() - -if __name__ == "__main__": - main() This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Mon Feb 21 02:22:06 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Mon, 21 Feb 2011 01:22:06 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[305] utilities/patch_assist.py Message-ID: Revision: 305 http://opencsw.svn.sourceforge.net/opencsw/?rev=305&view=rev Author: wahwah Date: 2011-02-21 01:22:06 +0000 (Mon, 21 Feb 2011) Log Message: ----------- patch_assist.py: Removing an obsolete file Replaced by 'makepatch' in gar. Removed Paths: ------------- utilities/patch_assist.py Deleted: utilities/patch_assist.py =================================================================== --- utilities/patch_assist.py 2011-02-21 01:13:11 UTC (rev 304) +++ utilities/patch_assist.py 2011-02-21 01:22:06 UTC (rev 305) @@ -1,45 +0,0 @@ -#!/opt/csw/bin/python2.6 -# coding=utf-8 - -"""This file makes it easier to create a casual patch when working with GAR.""" - -import optparse -import shutil -import os.path -import logging -import subprocess - -def main(): - logging.basicConfig(level=logging.DEBUG) - parser = optparse.OptionParser() - parser.add_option("-n", "--patch-name", dest="patch_name", - help="Patch name") - options, args = parser.parse_args() - - file_path = args[0] - base_path, file_name = os.path.split(file_path) - # Make a backup copy if it doesn't exist - orig_file_path = os.path.join(base_path, "%s.orig" % file_name) - if not os.path.exists(orig_file_path): - shutil.copy(file_path, orig_file_path) - path_parts = file_path.split("/") - worksrc = "/".join(path_parts[0:3]) - relative_file_path = "/".join(path_parts[3:]) - patch_path = os.path.join("files", "%s.patch" % options.patch_name) - # Edit the file - subprocess.call(["vim", file_path]) - # e.g. - # work/solaris8-sparc/build-isa-sparcv8/nspr-4.8/mozilla/nsprpub/configure - args = ["gdiff", "-u", relative_file_path + ".orig", relative_file_path] - logging.debug("Creating a diff: %s %s", args, worksrc) - diff_proc = subprocess.Popen(args, cwd=worksrc, stdout=subprocess.PIPE) - stdout, stderr = diff_proc.communicate() - diff_proc.wait() - fd = open(patch_path, "w") - fd.write(stdout) - fd.close() - print "cat", patch_path - - -if __name__ == '__main__': - main() This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Mon Feb 21 11:40:40 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Mon, 21 Feb 2011 10:40:40 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[306] web/wordpresscsw/wp-content/themes/opencsw Message-ID: Revision: 306 http://opencsw.svn.sourceforge.net/opencsw/?rev=306&view=rev Author: wbonnet Date: 2011-02-21 10:40:40 +0000 (Mon, 21 Feb 2011) Log Message: ----------- add missing links between qa pages and standard pages Modified Paths: -------------- web/wordpresscsw/wp-content/themes/opencsw/maintainer.php web/wordpresscsw/wp-content/themes/opencsw/package.php web/wordpresscsw/wp-content/themes/opencsw/qa-maintainers-activity.php web/wordpresscsw/wp-content/themes/opencsw/qa-package.php Modified: web/wordpresscsw/wp-content/themes/opencsw/maintainer.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/maintainer.php 2011-02-21 01:22:06 UTC (rev 305) +++ web/wordpresscsw/wp-content/themes/opencsw/maintainer.php 2011-02-21 10:40:40 UTC (rev 306) @@ -51,11 +51,21 @@ print "Status" . $maintainerStatus . "\n" ; print "\n" ; print "\n" ; + print "QA pageGo to " . $maintainerFullName . " QA page\n" ; + print "\n" ; + print "\n" ; print "Bug trackingList of open/relevant bugs for " . $maintainerFullName . "\n" ; print "\n" ; print "\n" ; - print "Last activity date" . $lastActivityInfo[0]["software"] . " has been added to unstable on " . $lastActivityInfo[0]["date"] . "\n" ; + if ($lastActivityInfo[0]["date"] != "") { + print "Last packaging activity" . $lastActivityInfo[0]["software"] . " has been added to unstable on " . $lastActivityInfo[0]["date"] . "\n" ; + } else { + print "Last packaging activityNo information available\n" ; + } print "\n" ; + print "\n" ; + print "Last bug tracker activityNo information available\n" ; + print "\n" ; print ""; print ""; Modified: web/wordpresscsw/wp-content/themes/opencsw/package.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/package.php 2011-02-21 01:22:06 UTC (rev 305) +++ web/wordpresscsw/wp-content/themes/opencsw/package.php 2011-02-21 10:40:40 UTC (rev 306) @@ -77,6 +77,9 @@ } print "\n" ; print "\n" ; + print "\n" ; + print "QA pageGo to " . $softwareName . " QA page\n" ; + print "\n" ; print "\n" ; print "Maintainer" ; if ( $maintainerStatus == "Active" ) { Modified: web/wordpresscsw/wp-content/themes/opencsw/qa-maintainers-activity.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/qa-maintainers-activity.php 2011-02-21 01:22:06 UTC (rev 305) +++ web/wordpresscsw/wp-content/themes/opencsw/qa-maintainers-activity.php 2011-02-21 10:40:40 UTC (rev 306) @@ -34,7 +34,7 @@ print ""; print ""; print ""; - print "\n" ; + print "\n" ; print ""; $totalPkg = 0; for( $i = 0 ; $i < count($arrayMaint) ; $i++) { @@ -46,6 +46,7 @@ } else { print "\n"; } + print ""; } // Close table Modified: web/wordpresscsw/wp-content/themes/opencsw/qa-package.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/qa-package.php 2011-02-21 01:22:06 UTC (rev 305) +++ web/wordpresscsw/wp-content/themes/opencsw/qa-package.php 2011-02-21 10:40:40 UTC (rev 306) @@ -35,7 +35,7 @@ print "
      "; print "
      "; - print "

      Details for $pkgName

      "; + print "

      QA page for $pkgName

      "; print "
      "; print "
      "; print "

      The requested software $pkgName does not exist in our package database.

      "; @@ -48,7 +48,7 @@ print "
      "; print "
      "; - print "

      Details for $softwareName

      "; + print "

      QA page for $softwareName

      "; print "
      "; print "

      Information about Solaris package $pkgName.

      "; print "
      NameLast activity datePackageNameLast packaging activityMost recently updated packageLast bug tracker activity
      " . $maint["fullname"] . "" . $lastActivityInfo[0]["date"] . "" . $lastActivityInfo[0]["software"] . "
      "; @@ -79,6 +79,9 @@ } print "\n" ; print "\n" ; + print "\n" ; + print "\n"; + print "\n" ; print "\n" ; print "\n" ; print "\n" ; if ($lastActivityInfo[0]["date"] != "") { - print "\n" ; + if ( $lastActivityInfo[0]["date"] == "2009-10-14") { + print ""; + } else { + print "\n" ; + } } else { - print "\n" ; + print "\n" ; } print "\n" ; print "\n" ; Modified: web/wordpresscsw/wp-content/themes/opencsw/qa-maintainers-activity.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/qa-maintainers-activity.php 2011-02-21 10:40:40 UTC (rev 306) +++ web/wordpresscsw/wp-content/themes/opencsw/qa-maintainers-activity.php 2011-02-21 10:58:07 UTC (rev 307) @@ -34,7 +34,7 @@ print "
      Package pageGo to " . $softwareName . " page
      Maintainer" ; if ( $maintainerStatus == "Active" ) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Mon Feb 21 12:00:51 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Mon, 21 Feb 2011 11:00:51 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[308] utilities/mk_struct.sh Message-ID: Revision: 308 http://opencsw.svn.sourceforge.net/opencsw/?rev=308&view=rev Author: wahwah Date: 2011-02-21 11:00:50 +0000 (Mon, 21 Feb 2011) Log Message: ----------- mk_struct.sh: A script which creates a template opencsw mirror directory structure. Added Paths: ----------- utilities/mk_struct.sh Added: utilities/mk_struct.sh =================================================================== --- utilities/mk_struct.sh (rev 0) +++ utilities/mk_struct.sh 2011-02-21 11:00:50 UTC (rev 308) @@ -0,0 +1,66 @@ +#!/bin/bash +# $Id$ +# +# This script creates a template directory structure of opencsw mirror. + +set -u +set -e + +tiers=( core active unsupported ) +released=( legacy ) +named_rels=( paris dublin legacy ) + +function c_tiers { + for tier in "${tiers[@]}" + do + mkdir -p "${tier}" + done +} + +declare -r BASEDIR="opencsw" + +rm -rf "${BASEDIR}" +mkdir -p "${BASEDIR}" +pushd "${BASEDIR}" + +mkdir -p dists +pushd dists + +for namedrel in "${named_rels[@]}" +do + mkdir -p "${namedrel}" + pushd "${namedrel}" + c_tiers + popd +done +popd # dists + +mkdir -p "releases" +pushd "releases" +for rel in "${released[@]}" +do + ln -s ../dists/${rel} ${rel} +done +popd # releases + +# The compat directory contains core+active+unsupported squashed together, so +# that pkg-get users can get them. +mkdir -p compat +pushd "compat" +for namedrel in "${named_rels[@]}" +do + mkdir -p "${namedrel}" +done +popd # compat + +# This intentionally breaks backward compatibility. pkg-get users need to +# start subscribing to the compat subtree. pkgutil users can start +# subscribing to specific core/active/unsupported catalogs. +ln -s releases/legacy stable +ln -s dists/dublin unstable +ln -s dists/paris testing + +popd # opencsw + +clear +tree "${BASEDIR}" | less Property changes on: utilities/mk_struct.sh ___________________________________________________________________ Added: svn:keywords + Id This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Mon Feb 21 12:01:28 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Mon, 21 Feb 2011 11:01:28 +0000 Subject: [csw-devel] SF.net SVN: gar:[13427] csw/mgar/gar/v2/gar.pkg.mk Message-ID: Revision: 13427 http://gar.svn.sourceforge.net/gar/?rev=13427&view=rev Author: dmichelsen Date: 2011-02-21 11:01:28 +0000 (Mon, 21 Feb 2011) Log Message: ----------- mGAR v2: Remove debug output Modified Paths: -------------- csw/mgar/gar/v2/gar.pkg.mk Modified: csw/mgar/gar/v2/gar.pkg.mk =================================================================== --- csw/mgar/gar/v2/gar.pkg.mk 2011-02-21 00:00:13 UTC (rev 13426) +++ csw/mgar/gar/v2/gar.pkg.mk 2011-02-21 11:01:28 UTC (rev 13427) @@ -66,8 +66,6 @@ )) endef -$(warning O: $(OBSOLETED_PKGS)) - $(foreach P,$(OBSOLETED_PKGS),$(eval $(call obsoleted_pkg,$P))) _PKG_SPECS = $(filter-out $(NOPACKAGE),$(SPKG_SPECS)) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Mon Feb 21 11:58:07 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Mon, 21 Feb 2011 10:58:07 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[307] web/wordpresscsw/wp-content/themes/opencsw Message-ID: Revision: 307 http://opencsw.svn.sourceforge.net/opencsw/?rev=307&view=rev Author: wbonnet Date: 2011-02-21 10:58:07 +0000 (Mon, 21 Feb 2011) Log Message: ----------- Fix the default no information message Modified Paths: -------------- web/wordpresscsw/wp-content/themes/opencsw/maintainer.php web/wordpresscsw/wp-content/themes/opencsw/qa-maintainers-activity.php web/wordpresscsw/wp-content/themes/opencsw/qaDAO.php Modified: web/wordpresscsw/wp-content/themes/opencsw/maintainer.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/maintainer.php 2011-02-21 10:40:40 UTC (rev 306) +++ web/wordpresscsw/wp-content/themes/opencsw/maintainer.php 2011-02-21 10:58:07 UTC (rev 307) @@ -58,9 +58,13 @@ print "
      Last packaging activity" . $lastActivityInfo[0]["software"] . " has been added to unstable on " . $lastActivityInfo[0]["date"] . "Last packaging activityNo information availableLast packaging activity" . $lastActivityInfo[0]["software"] . " has been added to unstable on " . $lastActivityInfo[0]["date"] . "Last packaging activityNo information availableLast packaging activityThe maintainer has no package
      "; print ""; print ""; - print "\n" ; + print "\n" ; print ""; $totalPkg = 0; for( $i = 0 ; $i < count($arrayMaint) ; $i++) { @@ -42,11 +42,16 @@ $lastActivityInfo = $qaDAO->getMaintainerLastUnstableSubmitDate($maint["maintainer"]); print ""; if ( $lastActivityInfo[0]["date"] == "") { - print "\n"; + print "\n"; } else { - print "\n"; + if ( $lastActivityInfo[0]["date"] == "2009-10-14") { + print "\n"; + } else { + print "\n"; + } } - print ""; + print ""; + print ""; } // Close table Modified: web/wordpresscsw/wp-content/themes/opencsw/qaDAO.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/qaDAO.php 2011-02-21 10:40:40 UTC (rev 306) +++ web/wordpresscsw/wp-content/themes/opencsw/qaDAO.php 2011-02-21 10:58:07 UTC (rev 307) @@ -472,7 +472,7 @@ function getMaintainerLastUnstableSubmitDate($maintName) { // Define the query used to retrieve the packages from the database - $sqlQuery = "select p.software , h.HIST_VERSION_DATE from UWATCH_VERSION_HISTORY as h , UWATCH_PKG_VERSION as v , packages as p where p.maintlogin = '" . $maintName . "' and p.software = v.PKG_CATALOGNAME and v.ID_PKG = h.ID_PKG and h.HIST_VERSION_TYPE = 'unstable' order by h.HIST_VERSION_DATE desc limit 1 ; "; + $sqlQuery = "select p.software , date(h.HIST_VERSION_DATE) from UWATCH_VERSION_HISTORY as h , UWATCH_PKG_VERSION as v , packages as p where p.maintlogin = '" . $maintName . "' and p.software = v.PKG_CATALOGNAME and v.ID_PKG = h.ID_PKG and h.HIST_VERSION_TYPE = 'unstable' order by h.HIST_VERSION_DATE desc limit 1 ; "; // Execute the query to retrieve the row to update $this->execQuery($sqlQuery); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Mon Feb 21 14:10:10 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Mon, 21 Feb 2011 13:10:10 +0000 Subject: [csw-devel] SF.net SVN: gar:[13428] csw/mgar/gar Message-ID: Revision: 13428 http://gar.svn.sourceforge.net/gar/?rev=13428&view=rev Author: skayser Date: 2011-02-21 13:10:10 +0000 (Mon, 21 Feb 2011) Log Message: ----------- gar: drop obsolete branches Removed Paths: ------------- csw/mgar/gar/v2-noexternals/ csw/mgar/gar/v2-skayser/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Mon Feb 21 14:22:29 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Mon, 21 Feb 2011 13:22:29 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[309] utilities/mk_core_list.sh Message-ID: Revision: 309 http://opencsw.svn.sourceforge.net/opencsw/?rev=309&view=rev Author: wahwah Date: 2011-02-21 13:22:29 +0000 (Mon, 21 Feb 2011) Log Message: ----------- mk_core_list.sh: Additional packages Modified Paths: -------------- utilities/mk_core_list.sh Property Changed: ---------------- utilities/mk_core_list.sh Modified: utilities/mk_core_list.sh =================================================================== --- utilities/mk_core_list.sh 2011-02-21 11:00:50 UTC (rev 308) +++ utilities/mk_core_list.sh 2011-02-21 13:22:29 UTC (rev 309) @@ -13,6 +13,9 @@ core_start_pkgs=( # Servers apache2 + mysql5 + postfix + exim # Interpreters perl python Property changes on: utilities/mk_core_list.sh ___________________________________________________________________ Added: svn:executable + * This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Mon Feb 21 14:22:52 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Mon, 21 Feb 2011 13:22:52 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[310] utilities/setup.py Message-ID: Revision: 310 http://opencsw.svn.sourceforge.net/opencsw/?rev=310&view=rev Author: wahwah Date: 2011-02-21 13:22:52 +0000 (Mon, 21 Feb 2011) Log Message: ----------- setup.py: Removing references to non-existing files. Modified Paths: -------------- utilities/setup.py Modified: utilities/setup.py =================================================================== --- utilities/setup.py 2011-02-21 13:22:29 UTC (rev 309) +++ utilities/setup.py 2011-02-21 13:22:52 UTC (rev 310) @@ -10,7 +10,10 @@ author="Maciej Blizi?ski", author_email="maciej at opencsw.org", url="http://www.opencsw.org/", - scripts=["build_all_architectures.py", "build_sun_catalog.py", - "compare_pkgs.py", "mirror_check.py", "patch_assist.py", - "site_links.py", "submit_to_newpkgs.py", ], + scripts=["build_sun_catalog.py", + "compare_pkgs.py", + "mirror_check.py", + "patch_assist.py", + "site_links.py", + ], ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Mon Feb 21 14:37:25 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Mon, 21 Feb 2011 13:37:25 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[312] gar-wrapper/mgar Message-ID: Revision: 312 http://opencsw.svn.sourceforge.net/opencsw/?rev=312&view=rev Author: skayser Date: 2011-02-21 13:37:25 +0000 (Mon, 21 Feb 2011) Log Message: ----------- mgar: enable multi-GAR-branch handling, adjust locate to use NAME (instead of GARNAME) Modified Paths: -------------- gar-wrapper/mgar Modified: gar-wrapper/mgar =================================================================== --- gar-wrapper/mgar 2011-02-21 13:24:48 UTC (rev 311) +++ gar-wrapper/mgar 2011-02-21 13:37:25 UTC (rev 312) @@ -15,16 +15,16 @@ # ---------------------------------------------------------------------------- # # Todos: -# * Integrate functionality to download/switch to different gar branches +# * Recipes: Move from svn:externals to GARTYPE # * Integrate the creation of a new package (with sanity check whether -# package already exists) +# package already exists). Use per-directory Makefile.template files. +# * Improve errors messages when buildsys can't be found # # Bugs: # # Ideas/thoughts: +# * Should read_makefile_value support commandline overrides (like gmake)? # * mgar commit: check for and warn on stale checksums file -# * mgar init: pulls gar/v2.*, how about a gar/current/ symlink in the repo -# to facilitate GAR version or location changes # * stuff that's indexed by namazu is overkill, reduce to speed up index? # # Possible issues: @@ -41,9 +41,20 @@ PATH=$PATH:/opt/csw/bin DEF_BUILDTREE=~/opencsw -SVN_REPO=https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/ -SVN_BUILDSYS=gar/v2/ +GAR_REPO=https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/ +PKG_REPO=https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/pkg/ +function read_config_value { + __param=$1 + [ -f ~/.garrc ] || die_config_missing + ggrep -E "^$__param *=" ~/.garrc | tail -1 | cut -d= -f2 | sed -e 's/^ *//' +} + +function read_makefile_value { + __param=$1 + ggrep -E "^$__param *=" Makefile | tail -1 | cut -d= -f2 | sed -e 's/^ *//' +} + function die_config_missing { cat >&2 <&2 <&2 exit 2 } -function read_config_value { - __param=$1 - [ -f ~/.garrc ] || die_config_missing - ggrep -E "^$__param *=" ~/.garrc | tail -1 | cut -d= -f2 | sed -e 's/^ *//' +function in_pkg_dir { + [ -f Makefile ] || return 1 + grep "^include gar/category.mk" Makefile >/dev/null 2>&1 || return 1 } -function assert_buildsys_present { - [ -f "$1/category.mk" ] || die_buildsys_not_found +function assert_in_pkg_dir { + in_pkg_dir || die_not_in_pkg_dir } -function ensure_in_pkg_dir { - [ -f Makefile ] || die_not_in_pkg_dir - grep "^include gar/category.mk" Makefile >/dev/null 2>&1 || die_not_in_pkg_dir +# Is this a per-pkg command? Relies on *-cmd markers in the code (c.f. ##main) +function is_per_pkg_command { + __cmd=$1 + __global_cmds=`sed -ne '/^# global-cmds/,/^# \/global-cmds/p' $0 | \ + ggrep -E '^\s*[^)]+\) ' | cut -d\) -f1` + + while read cmd; do + [ "$cmd" == "$1" ] && return 1 + done < <( echo "$__global_cmds" ) + + return 0 } function init_buildtree { @@ -97,8 +113,8 @@ fi mkdir -p $__buildtree/.buildsys echo "Initializing the package build tree at $__buildtree" - svn co $SVN_REPO/$SVN_BUILDSYS "$__buildtree/.buildsys" - svn co --depth empty $SVN_REPO/pkg "$__buildtree" + svn co $GAR_REPO "$__buildtree/.buildsys" + svn co --depth empty $PKG_REPO "$__buildtree" echo echo "Initialized the package build tree at $__buildtree." echo "Registering the package build tree location in ~/.garrc" @@ -106,18 +122,33 @@ echo >> ~/.garrc echo BUILDTREE="$__buildtree" >> ~/.garrc echo - echo 'Now you can fetch the package build descriptions via: "mgar up-pkgtree"' + echo 'Now you can fetch the package build descriptions via: "mgar up"' echo 'Please be advised that this will take some time. So grab yourself a cup' echo 'of tea/coffee :)' } function create_legacy_gar_link { - __buildsys=$1 + __buildsys="$1" if [ ! -h "$__buildsys"/gar ]; then ( cd "$__buildsys" && ln -s . gar ) fi } +function assert_multi_buildsys_tree { + __buildsys_tree="$1" + + # migrate from single-buildsys to multi-buildsys (<= mgar version 297) + if [ -f "$__buildsys_tree"/category.mk ]; then + echo "Your GAR tree needs to be updated. To do so please run:" + echo + echo " rm -rf $__buildsys_tree" + echo " svn co $GAR_REPO \\" + echo " $__buildsys_tree/" + echo + exit 2 + fi +} + # Commit working files (prefixes pkg path and checks for untracked changes) function verify_local_status_and_commit() { @@ -162,6 +193,15 @@ $0 -f <( cat Makefile; echo -e '\npkgdir:\n\t at echo $(PKGROOT)' ) pkgdir } +function get_pkg_buildsysdir() { + # fallback to svn:externals until builds are adjusted to carry GARYTPE + __gartype=`read_makefile_value GARTYPE`; + if [ -z "$__gartype" ]; then + __gartype=`svn pg svn:externals . | awk -F/ '/^gar/ { print $NF }'` + fi + echo $BUILDTREE/.buildsys/$__gartype +} + # Build the index for locating Makefiles within the package build tree function build_index() { __buildtree=$1 @@ -186,10 +226,10 @@ case "$__term" in a:*) __term=${__term#a:}; __searchby="";; - g:*) __term=${__term#g:}; __searchby="GARNAME";; + g:*) __term=${__term#g:}; __searchby="NAME";; p:*) __term=${__term#p:}; __searchby="PACKAGES";; c:*) __term=${__term#c:}; __searchby="CATALOG";; - *) __searchby="(CATALOG|PACKAGES|GARNAME)";; + *) __searchby="(CATALOG|PACKAGES|NAME)";; esac namazu -slr "*$__term*" $__buildtree/.index | while read f; do @@ -209,8 +249,7 @@ init [dir] Initialize package build tree, defaults to ~/opencsw/ index Build/update the package build tree index locate Search a package within the package build tree index - show-pkgtree Show the location of the package build tree - up-pkgtree Update the package build tree + up [--all] Update current (or all) package build descriptions Package build actions (to be called from a package build directory): fetch Download the package source @@ -229,7 +268,7 @@ modenv Display employed compiler options scm Pass a command to the underlying SCM (currently: svn) show-buildsys Display the location and version of the build system - up-buildsys Update the build system + show-pkgtree Show the location of the package build tree version Display mgar version information EOM @@ -238,14 +277,20 @@ ## pre-flight checks [ $# -eq 0 -o "${1:-}" == "help" -o "${1:-}" == "--help" ] && { usage; exit; } +[ $1 == "-x" ] && { shift; set -x; } # Unless we are going to "init", make sure that the build system is in place if [ "${1-}" != "init" ]; then BUILDTREE="`read_config_value BUILDTREE`"; eval BUILDTREE="$BUILDTREE" - BUILDSYS="`read_config_value BUILDSYS`"; eval BUILDSYS="$BUILDSYS" - if [ -z "$BUILDSYS" ]; then - BUILDSYS="$BUILDTREE/.buildsys" - fi +fi + +assert_multi_buildsys_tree "$BUILDTREE/.buildsys" + +# When we execute a non-global (i.e. pkg scope) command, assert that we are +# actually in a pkg directory and that the pkg relevant GAR branch can be found +if is_per_pkg_command $1; then + assert_in_pkg_dir + BUILDSYS=`get_pkg_buildsysdir` assert_buildsys_present "$BUILDSYS" create_legacy_gar_link "$BUILDSYS" fi @@ -253,24 +298,40 @@ ## main case $1 in + +# global-cmds init) init_buildtree ${2-$DEF_BUILDTREE};; index) build_index "$BUILDTREE";; locate) shift; search_index "$BUILDTREE" "${1-}";; show-pkgtree) echo "$BUILDTREE";; + commit|ci) shift; verify_local_status_and_commit "$@";; + scm) shift; svn $@;; + up) if [ "${2:-}" == "--all" ]; then + $0 up-all; + else + $0 up-pkg; + fi + ;; + up-all) echo "Updating full build tree (this will take some time)" + svn up \ + --set-depth infinity --ignore-externals \ + "$BUILDTREE" + svn up "$BUILDTREE/.buildsys" + ;; + version) grep '^# $Id:' $0 | cut -d" " -f4;; +# /global-cmds + +# per-pkg-cmds show-buildsys) __rev="`svn info "$BUILDSYS" | grep ^Revision:`" __branch=`svn info "$BUILDSYS" | grep ^URL: | awk -F/ '{ print $(NF-1)"/"$NF }'` echo -e "$BUILDSYS\t($__rev, Branch: $__branch)" ;; - up-buildsys) cd "$BUILDSYS" && svn up;; - up-pkgtree) cd "$BUILDTREE" && \ - svn up --set-depth infinity --ignore-externals + show-srcdir) echo `get_srcdir`;; + show-stagedir) echo `get_stagedir`;; + up-pkg) echo "Updating current package directory + build system" + svn up --ignore-externals; svn up $BUILDSYS;; + *) gmake -I "$BUILDSYS" "$@" ;; - show-srcdir) ensure_in_pkg_dir; echo `get_srcdir`;; - show-stagedir) ensure_in_pkg_dir; echo `get_stagedir`;; - scm) shift; svn $@;; - commit|ci) shift; verify_local_status_and_commit "$@";; - version) grep '^# $Id:' $0 | cut -d" " -f4;; - *) ensure_in_pkg_dir - gmake -I "$BUILDSYS" "$@" - ;; +# /per-pkg-cmds + esac This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Mon Feb 21 14:24:48 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Mon, 21 Feb 2011 13:24:48 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[311] utilities Message-ID: Revision: 311 http://opencsw.svn.sourceforge.net/opencsw/?rev=311&view=rev Author: wahwah Date: 2011-02-21 13:24:48 +0000 (Mon, 21 Feb 2011) Log Message: ----------- Renaming mk_struct to mk_mirror_struct. Added Paths: ----------- utilities/mk_mirror_struct.sh Removed Paths: ------------- utilities/mk_struct.sh Copied: utilities/mk_mirror_struct.sh (from rev 308, utilities/mk_struct.sh) =================================================================== --- utilities/mk_mirror_struct.sh (rev 0) +++ utilities/mk_mirror_struct.sh 2011-02-21 13:24:48 UTC (rev 311) @@ -0,0 +1,66 @@ +#!/bin/bash +# $Id$ +# +# This script creates a template directory structure of opencsw mirror. + +set -u +set -e + +tiers=( core active unsupported ) +released=( legacy ) +named_rels=( paris dublin legacy ) + +function c_tiers { + for tier in "${tiers[@]}" + do + mkdir -p "${tier}" + done +} + +declare -r BASEDIR="opencsw" + +rm -rf "${BASEDIR}" +mkdir -p "${BASEDIR}" +pushd "${BASEDIR}" + +mkdir -p dists +pushd dists + +for namedrel in "${named_rels[@]}" +do + mkdir -p "${namedrel}" + pushd "${namedrel}" + c_tiers + popd +done +popd # dists + +mkdir -p "releases" +pushd "releases" +for rel in "${released[@]}" +do + ln -s ../dists/${rel} ${rel} +done +popd # releases + +# The compat directory contains core+active+unsupported squashed together, so +# that pkg-get users can get them. +mkdir -p compat +pushd "compat" +for namedrel in "${named_rels[@]}" +do + mkdir -p "${namedrel}" +done +popd # compat + +# This intentionally breaks backward compatibility. pkg-get users need to +# start subscribing to the compat subtree. pkgutil users can start +# subscribing to specific core/active/unsupported catalogs. +ln -s releases/legacy stable +ln -s dists/dublin unstable +ln -s dists/paris testing + +popd # opencsw + +clear +tree "${BASEDIR}" | less Deleted: utilities/mk_struct.sh =================================================================== --- utilities/mk_struct.sh 2011-02-21 13:22:52 UTC (rev 310) +++ utilities/mk_struct.sh 2011-02-21 13:24:48 UTC (rev 311) @@ -1,66 +0,0 @@ -#!/bin/bash -# $Id$ -# -# This script creates a template directory structure of opencsw mirror. - -set -u -set -e - -tiers=( core active unsupported ) -released=( legacy ) -named_rels=( paris dublin legacy ) - -function c_tiers { - for tier in "${tiers[@]}" - do - mkdir -p "${tier}" - done -} - -declare -r BASEDIR="opencsw" - -rm -rf "${BASEDIR}" -mkdir -p "${BASEDIR}" -pushd "${BASEDIR}" - -mkdir -p dists -pushd dists - -for namedrel in "${named_rels[@]}" -do - mkdir -p "${namedrel}" - pushd "${namedrel}" - c_tiers - popd -done -popd # dists - -mkdir -p "releases" -pushd "releases" -for rel in "${released[@]}" -do - ln -s ../dists/${rel} ${rel} -done -popd # releases - -# The compat directory contains core+active+unsupported squashed together, so -# that pkg-get users can get them. -mkdir -p compat -pushd "compat" -for namedrel in "${named_rels[@]}" -do - mkdir -p "${namedrel}" -done -popd # compat - -# This intentionally breaks backward compatibility. pkg-get users need to -# start subscribing to the compat subtree. pkgutil users can start -# subscribing to specific core/active/unsupported catalogs. -ln -s releases/legacy stable -ln -s dists/dublin unstable -ln -s dists/paris testing - -popd # opencsw - -clear -tree "${BASEDIR}" | less This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Mon Feb 21 14:56:02 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Mon, 21 Feb 2011 13:56:02 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[313] gar-wrapper/mgar Message-ID: Revision: 313 http://opencsw.svn.sourceforge.net/opencsw/?rev=313&view=rev Author: skayser Date: 2011-02-21 13:56:02 +0000 (Mon, 21 Feb 2011) Log Message: ----------- mgar: add edit-file/find-file (contributed by Maciej) Modified Paths: -------------- gar-wrapper/mgar Modified: gar-wrapper/mgar =================================================================== --- gar-wrapper/mgar 2011-02-21 13:37:25 UTC (rev 312) +++ gar-wrapper/mgar 2011-02-21 13:56:02 UTC (rev 313) @@ -39,6 +39,7 @@ set -u set -e +EDITOR=${EDITOR:-vim} PATH=$PATH:/opt/csw/bin DEF_BUILDTREE=~/opencsw GAR_REPO=https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/ @@ -261,8 +262,11 @@ platforms Assemble packages for all platforms clean Reset current directory working files (current platform) spotless Reset the package build directory (all platforms) + show-srcdir Show the location of the extracted package source show-stagedir Show the location of the package staging directory + find-file Find a file within the extracted package source + edit-file Edit a file within the extracted package source Other actions: modenv Display employed compiler options @@ -322,6 +326,8 @@ # /global-cmds # per-pkg-cmds + edit-file) $EDITOR `gfind \`get_srcdir\` -name "$2"`;; + find-file) gfind "`get_srcdir`" -name "$2";; show-buildsys) __rev="`svn info "$BUILDSYS" | grep ^Revision:`" __branch=`svn info "$BUILDSYS" | grep ^URL: | awk -F/ '{ print $(NF-1)"/"$NF }'` echo -e "$BUILDSYS\t($__rev, Branch: $__branch)" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Mon Feb 21 15:02:24 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Mon, 21 Feb 2011 14:02:24 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[314] gar-wrapper/mgar Message-ID: Revision: 314 http://opencsw.svn.sourceforge.net/opencsw/?rev=314&view=rev Author: skayser Date: 2011-02-21 14:02:24 +0000 (Mon, 21 Feb 2011) Log Message: ----------- mgar: adjust instructions. upon init, mgar up --all is needed Modified Paths: -------------- gar-wrapper/mgar Modified: gar-wrapper/mgar =================================================================== --- gar-wrapper/mgar 2011-02-21 13:56:02 UTC (rev 313) +++ gar-wrapper/mgar 2011-02-21 14:02:24 UTC (rev 314) @@ -123,7 +123,7 @@ echo >> ~/.garrc echo BUILDTREE="$__buildtree" >> ~/.garrc echo - echo 'Now you can fetch the package build descriptions via: "mgar up"' + echo 'Now you can fetch the package build descriptions via: "mgar up --all"' echo 'Please be advised that this will take some time. So grab yourself a cup' echo 'of tea/coffee :)' } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Mon Feb 21 15:18:27 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Mon, 21 Feb 2011 14:18:27 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[315] gar-wrapper/mgar Message-ID: Revision: 315 http://opencsw.svn.sourceforge.net/opencsw/?rev=315&view=rev Author: skayser Date: 2011-02-21 14:18:27 +0000 (Mon, 21 Feb 2011) Log Message: ----------- mgar: fix init handling by handling it as a special case that doesn't run through regular sanity checks Modified Paths: -------------- gar-wrapper/mgar Modified: gar-wrapper/mgar =================================================================== --- gar-wrapper/mgar 2011-02-21 14:02:24 UTC (rev 314) +++ gar-wrapper/mgar 2011-02-21 14:18:27 UTC (rev 315) @@ -108,7 +108,7 @@ function init_buildtree { __buildtree="$1" - if [ -d "$__buildtree" ]; then + if [ -a "$__buildtree" ]; then echo "The directory $__buildtree already exists. Please remove it." >&2 exit 2 fi @@ -282,12 +282,9 @@ [ $# -eq 0 -o "${1:-}" == "help" -o "${1:-}" == "--help" ] && { usage; exit; } [ $1 == "-x" ] && { shift; set -x; } +[ $1 == "init" ] && { init_buildtree ${2-$DEF_BUILDTREE}; exit; } -# Unless we are going to "init", make sure that the build system is in place -if [ "${1-}" != "init" ]; then - BUILDTREE="`read_config_value BUILDTREE`"; eval BUILDTREE="$BUILDTREE" -fi - +BUILDTREE="`read_config_value BUILDTREE`"; eval BUILDTREE="$BUILDTREE" assert_multi_buildsys_tree "$BUILDTREE/.buildsys" # When we execute a non-global (i.e. pkg scope) command, assert that we are @@ -304,7 +301,6 @@ case $1 in # global-cmds - init) init_buildtree ${2-$DEF_BUILDTREE};; index) build_index "$BUILDTREE";; locate) shift; search_index "$BUILDTREE" "${1-}";; show-pkgtree) echo "$BUILDTREE";; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Mon Feb 21 16:40:50 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Mon, 21 Feb 2011 15:40:50 +0000 Subject: [csw-devel] SF.net SVN: gar:[13429] csw/mgar/gar/v2/gar.pkg.mk Message-ID: Revision: 13429 http://gar.svn.sourceforge.net/gar/?rev=13429&view=rev Author: dmichelsen Date: 2011-02-21 15:40:50 +0000 (Mon, 21 Feb 2011) Log Message: ----------- mGAR v2: Fix problem with obsoletions when there is more than one dependency. THE NEWLINE IS IMPORTANT, DO NOT DELETE! Modified Paths: -------------- csw/mgar/gar/v2/gar.pkg.mk Modified: csw/mgar/gar/v2/gar.pkg.mk =================================================================== --- csw/mgar/gar/v2/gar.pkg.mk 2011-02-21 13:10:10 UTC (rev 13428) +++ csw/mgar/gar/v2/gar.pkg.mk 2011-02-21 15:40:50 UTC (rev 13429) @@ -63,6 +63,7 @@ ARCHALL_$(1) = 1 $(foreach P,$(PACKAGES),$(if $(filter $(1),$(OBSOLETES_$P)), CHECKPKG_OVERRIDES_$(1) += surplus-dependency|$P + )) endef This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Mon Feb 21 16:43:33 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Mon, 21 Feb 2011 15:43:33 +0000 Subject: [csw-devel] SF.net SVN: gar:[13430] csw/mgar/pkg/lzo/trunk/Makefile Message-ID: Revision: 13430 http://gar.svn.sourceforge.net/gar/?rev=13430&view=rev Author: dmichelsen Date: 2011-02-21 15:43:32 +0000 (Mon, 21 Feb 2011) Log Message: ----------- lzo: Use new obsoletions Modified Paths: -------------- csw/mgar/pkg/lzo/trunk/Makefile Modified: csw/mgar/pkg/lzo/trunk/Makefile =================================================================== --- csw/mgar/pkg/lzo/trunk/Makefile 2011-02-21 15:40:50 UTC (rev 13429) +++ csw/mgar/pkg/lzo/trunk/Makefile 2011-02-21 15:43:32 UTC (rev 13430) @@ -13,23 +13,18 @@ # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz -PACKAGES += CSWlzo -CATALOGNAME_CSWlzo = lzo -SPKG_DESC_CSWlzo = Transitional package as contents moved to CSWliblzo2-2 -CHECKPKG_OVERRIDES_CSWlzo += surplus-dependency|CSWliblzo2-2 -PKGFILES_CSWlzo = NOFILES -ARCHALL_CSWlzo = 1 - PACKAGES += CSWliblzo-dev CATALOGNAME_CSWliblzo-dev = liblzo_dev SPKG_DESC_CSWliblzo-dev = Development files for liblzo2.so.2 RUNTIME_DEP_PKGS_CSWliblzo-dev = CSWliblzo2-2 # PKGFILES is catchall +OBSOLETES_CSWliblzo-dev = CSWlzo PACKAGES += CSWliblzo2-2 CATALOGNAME_CSWliblzo2-2 = liblzo2_2 SPKG_DESC_CSWliblzo2-2 = Library for LZO compression providing liblzo2.so.2 PKGFILES_CSWliblzo2-2 = $(call baseisadirs,$(libdir),liblzo2\.so\.2(\.\d+)*) +OBSOLETES_CSWliblzo2-2 = CSWlzo VENDOR_URL = http://www.oberhumer.com/opensource/lzo/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From maciej at opencsw.org Mon Feb 21 16:55:11 2011 From: maciej at opencsw.org (=?UTF-8?Q?Maciej_Blizi=C5=84ski?=) Date: Mon, 21 Feb 2011 15:55:11 +0000 Subject: [csw-devel] SF.net SVN: gar:[13429] csw/mgar/gar/v2/gar.pkg.mk In-Reply-To: References: Message-ID: 2011/2/21 : > mGAR v2: Fix problem with obsoletions when there is more than one dependency. THE NEWLINE IS IMPORTANT, DO NOT DELETE! You can add this as a comment above the new line; or as close to it, as possible. This would work better than just a commit message. From skayser at users.sourceforge.net Mon Feb 21 17:00:00 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Mon, 21 Feb 2011 16:00:00 +0000 Subject: [csw-devel] SF.net SVN: gar:[13431] csw/mgar/gar/v2/gar.pkg.mk Message-ID: Revision: 13431 http://gar.svn.sourceforge.net/gar/?rev=13431&view=rev Author: skayser Date: 2011-02-21 16:00:00 +0000 (Mon, 21 Feb 2011) Log Message: ----------- gar/v2: include Dago's thundering voice to raise awareness of potential hackers Modified Paths: -------------- csw/mgar/gar/v2/gar.pkg.mk Modified: csw/mgar/gar/v2/gar.pkg.mk =================================================================== --- csw/mgar/gar/v2/gar.pkg.mk 2011-02-21 15:43:32 UTC (rev 13430) +++ csw/mgar/gar/v2/gar.pkg.mk 2011-02-21 16:00:00 UTC (rev 13431) @@ -66,6 +66,7 @@ )) endef +# ^^ "THE NEWLINE IS IMPORTANT, DO NOT DELETE!", Dago M. $(foreach P,$(OBSOLETED_PKGS),$(eval $(call obsoleted_pkg,$P))) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bwalton at opencsw.org Mon Feb 21 22:33:51 2011 From: bwalton at opencsw.org (Ben Walton) Date: Mon, 21 Feb 2011 16:33:51 -0500 Subject: [csw-devel] SF.net SVN: gar:[13429] csw/mgar/gar/v2/gar.pkg.mk In-Reply-To: References: Message-ID: <1298324000-sup-9718@pinkfloyd.chass.utoronto.ca> Excerpts from Maciej Blizi?ski's message of Mon Feb 21 10:55:11 -0500 2011: > 2011/2/21 : > > mGAR v2: Fix problem with obsoletions when there is more than one dependency. THE NEWLINE IS IMPORTANT, DO NOT DELETE! > > You can add this as a comment above the new line; or as close to it, > as possible. This would work better than just a commit message. Agreed. It's the kind of thing that just begs to be deleted. :) Thanks -Ben -- Ben Walton Systems Programmer - CHASS University of Toronto C:416.407.5610 | W:416.978.4302 From skayser at opencsw.org Mon Feb 21 22:24:32 2011 From: skayser at opencsw.org (Sebastian Kayser) Date: Mon, 21 Feb 2011 22:24:32 +0100 Subject: [csw-devel] SF.net SVN: gar:[13429] csw/mgar/gar/v2/gar.pkg.mk In-Reply-To: <1298324000-sup-9718@pinkfloyd.chass.utoronto.ca> References: <1298324000-sup-9718@pinkfloyd.chass.utoronto.ca> Message-ID: <20110221212432.GO21671@sebastiankayser.de> * Ben Walton wrote: > Excerpts from Maciej Blizi??ski's message of Mon Feb 21 10:55:11 -0500 2011: > > 2011/2/21 : > > > mGAR v2: Fix problem with obsoletions when there is more than one dependency. THE NEWLINE IS IMPORTANT, DO NOT DELETE! > > > > You can add this as a comment above the new line; or as close to it, > > as possible. This would work better than just a commit message. > > Agreed. It's the kind of thing that just begs to be deleted. :) Sorry, I couldn't resist and added the comment right away earlier this day. Hope that's okay for you Dago, I gave you all the credits in the commit log ;) Sebastian From bdwalton at users.sourceforge.net Mon Feb 21 22:46:11 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Mon, 21 Feb 2011 21:46:11 +0000 Subject: [csw-devel] SF.net SVN: gar:[13432] csw/mgar/pkg/ruby18/trunk Message-ID: Revision: 13432 http://gar.svn.sourceforge.net/gar/?rev=13432&view=rev Author: bdwalton Date: 2011-02-21 21:46:11 +0000 (Mon, 21 Feb 2011) Log Message: ----------- ruby18/trunk: version bump to address two vulnerabilities Modified Paths: -------------- csw/mgar/pkg/ruby18/trunk/Makefile csw/mgar/pkg/ruby18/trunk/checksums Modified: csw/mgar/pkg/ruby18/trunk/Makefile =================================================================== --- csw/mgar/pkg/ruby18/trunk/Makefile 2011-02-21 16:00:00 UTC (rev 13431) +++ csw/mgar/pkg/ruby18/trunk/Makefile 2011-02-21 21:46:11 UTC (rev 13432) @@ -1,6 +1,6 @@ NAME = ruby DISTVERSION = 1.8.7 -PATCHLEVEL = p302 +PATCHLEVEL = p334 VERSION = $(DISTVERSION) CATEGORIES = lang Modified: csw/mgar/pkg/ruby18/trunk/checksums =================================================================== --- csw/mgar/pkg/ruby18/trunk/checksums 2011-02-21 16:00:00 UTC (rev 13431) +++ csw/mgar/pkg/ruby18/trunk/checksums 2011-02-21 21:46:11 UTC (rev 13432) @@ -1 +1 @@ -a6a9e37079ed8cf8726b455dad3de939 ruby-1.8.7-p302.tar.bz2 +2f14f604bf981bb938ab5fc8b09eb1a6 ruby-1.8.7-p334.tar.bz2 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Mon Feb 21 22:48:26 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Mon, 21 Feb 2011 21:48:26 +0000 Subject: [csw-devel] SF.net SVN: gar:[13433] csw/mgar/pkg/php5/branches/re-enable-extensions/ extensions Message-ID: Revision: 13433 http://gar.svn.sourceforge.net/gar/?rev=13433&view=rev Author: bdwalton Date: 2011-02-21 21:48:26 +0000 (Mon, 21 Feb 2011) Log Message: ----------- php5/branches/re-enable-extensions: make descriptions for 3 pdo sql adapters unique Modified Paths: -------------- csw/mgar/pkg/php5/branches/re-enable-extensions/extensions/php5_pdomysql/Makefile csw/mgar/pkg/php5/branches/re-enable-extensions/extensions/php5_pdopgsql/Makefile csw/mgar/pkg/php5/branches/re-enable-extensions/extensions/php5_pdosqlite/Makefile Modified: csw/mgar/pkg/php5/branches/re-enable-extensions/extensions/php5_pdomysql/Makefile =================================================================== --- csw/mgar/pkg/php5/branches/re-enable-extensions/extensions/php5_pdomysql/Makefile 2011-02-21 21:46:11 UTC (rev 13432) +++ csw/mgar/pkg/php5/branches/re-enable-extensions/extensions/php5_pdomysql/Makefile 2011-02-21 21:48:26 UTC (rev 13433) @@ -3,7 +3,7 @@ PACKAGES += CSWphp5pdomysql CATALOGNAME_CSWphp5pdomysql = php5_pdomysql -SPKG_DESC_CSWphp5pdomysql = A MySQL specific database access abstraction module for PHP applications +SPKG_DESC_CSWphp5pdomysql = A MySQL specific database access abstraction module for PHP applications (pdo version) RUNTIME_DEP_PKGS_CSWphp5pdomysql = CSWphp5 CSWmysql5rt CSWzlib CSWphp5pdo CONFIGURE_ARGS += --with-pdo-mysql=shared,$(prefix) Modified: csw/mgar/pkg/php5/branches/re-enable-extensions/extensions/php5_pdopgsql/Makefile =================================================================== --- csw/mgar/pkg/php5/branches/re-enable-extensions/extensions/php5_pdopgsql/Makefile 2011-02-21 21:46:11 UTC (rev 13432) +++ csw/mgar/pkg/php5/branches/re-enable-extensions/extensions/php5_pdopgsql/Makefile 2011-02-21 21:48:26 UTC (rev 13433) @@ -3,7 +3,7 @@ PACKAGES += CSWphp5pdopgsql CATALOGNAME_CSWphp5pdopgsql = php5_pdopgsql -SPKG_DESC_CSWphp5pdopgsql = A PgSQL specific database access abstraction module for PHP applications +SPKG_DESC_CSWphp5pdopgsql = A PgSQL specific database access abstraction module for PHP applications (pdo version) RUNTIME_DEP_PKGS_CSWphp5pdopgsql = CSWphp5 CSWlibpq CSWphp5pdo PATCHFILES += pdopgsql.diff Modified: csw/mgar/pkg/php5/branches/re-enable-extensions/extensions/php5_pdosqlite/Makefile =================================================================== --- csw/mgar/pkg/php5/branches/re-enable-extensions/extensions/php5_pdosqlite/Makefile 2011-02-21 21:46:11 UTC (rev 13432) +++ csw/mgar/pkg/php5/branches/re-enable-extensions/extensions/php5_pdosqlite/Makefile 2011-02-21 21:48:26 UTC (rev 13433) @@ -3,7 +3,7 @@ PACKAGES += CSWphp5pdosqlite CATALOGNAME_CSWphp5pdosqlite = php5_pdosqlite -SPKG_DESC_CSWphp5pdosqlite = A Sqlite specific database access abstraction module for PHP applications +SPKG_DESC_CSWphp5pdosqlite = A Sqlite specific database access abstraction module for PHP applications (pdo version) RUNTIME_DEP_PKGS_CSWphp5pdosqlite = CSWphp5 CSWphp5pdo CONFIGURE_ARGS += --with-pdo-sqlite=shared,$(prefix) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Mon Feb 21 22:49:22 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Mon, 21 Feb 2011 21:49:22 +0000 Subject: [csw-devel] SF.net SVN: gar:[13434] csw/mgar/pkg/php5/branches/re-enable-extensions/ extensions/php5_recode/Makefile Message-ID: Revision: 13434 http://gar.svn.sourceforge.net/gar/?rev=13434&view=rev Author: bdwalton Date: 2011-02-21 21:49:21 +0000 (Mon, 21 Feb 2011) Log Message: ----------- disabled the recode extension Removed Paths: ------------- csw/mgar/pkg/php5/branches/re-enable-extensions/extensions/php5_recode/Makefile Deleted: csw/mgar/pkg/php5/branches/re-enable-extensions/extensions/php5_recode/Makefile =================================================================== --- csw/mgar/pkg/php5/branches/re-enable-extensions/extensions/php5_recode/Makefile 2011-02-21 21:48:26 UTC (rev 13433) +++ csw/mgar/pkg/php5/branches/re-enable-extensions/extensions/php5_recode/Makefile 2011-02-21 21:49:21 UTC (rev 13434) @@ -1 +0,0 @@ -@ ( echo "==> Not configuring recode see README in extensions/php5_recode" ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Mon Feb 21 22:50:12 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Mon, 21 Feb 2011 21:50:12 +0000 Subject: [csw-devel] SF.net SVN: gar:[13435] csw/mgar/pkg/php5/branches/re-enable-extensions Message-ID: Revision: 13435 http://gar.svn.sourceforge.net/gar/?rev=13435&view=rev Author: bdwalton Date: 2011-02-21 21:50:12 +0000 (Mon, 21 Feb 2011) Log Message: ----------- php5/branches/re-enable-extensions: re-enable the extension building and update checksums to match this change Modified Paths: -------------- csw/mgar/pkg/php5/branches/re-enable-extensions/Makefile csw/mgar/pkg/php5/branches/re-enable-extensions/checksums Modified: csw/mgar/pkg/php5/branches/re-enable-extensions/Makefile =================================================================== --- csw/mgar/pkg/php5/branches/re-enable-extensions/Makefile 2011-02-21 21:49:21 UTC (rev 13434) +++ csw/mgar/pkg/php5/branches/re-enable-extensions/Makefile 2011-02-21 21:50:12 UTC (rev 13435) @@ -67,7 +67,7 @@ # 3) ... TBD, probably more # EXTENSION_MAKEFILES := $(wildcard extensions/*/Makefile) -#include $(EXTENSION_MAKEFILES) +include $(EXTENSION_MAKEFILES) EXTRA_CFLAGS = -I$(prefix)/include/ncursesw Modified: csw/mgar/pkg/php5/branches/re-enable-extensions/checksums =================================================================== --- csw/mgar/pkg/php5/branches/re-enable-extensions/checksums 2011-02-21 21:49:21 UTC (rev 13434) +++ csw/mgar/pkg/php5/branches/re-enable-extensions/checksums 2011-02-21 21:50:12 UTC (rev 13435) @@ -1 +1,11 @@ +632cb357e102e18e04bb5666825a912f CSWap2modphp5.postinstall +e1381a4ba49e46b2097b76286a1b36fb CSWap2modphp5.preremove +0dd379f20ceb32fc77bb3a9bf045097f CSWap2modphp5.space +5f0046fe1b3f8e2228fdb165bdbbe73a CSWmodphp5.postinstall +2e5dbed2c9dd5e24c331753984946822 CSWmodphp5.preremove +0dd379f20ceb32fc77bb3a9bf045097f CSWmodphp5.space +a71677d80f5cfd1aeb03547dfdeb705a httpd-php5.conf.CSW +2206431e47c2075c0b9c4a12de5cf791 odbc.diff +230126f76ee6400ccf225bb6a8243532 pdopgsql.diff +13db46097c9686302bebf160e2d26ed2 pgsql.diff 8aaf20c95e91f25c5b6a591e5d6d61b9 php-5.3.5.tar.bz2 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Mon Feb 21 22:53:55 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Mon, 21 Feb 2011 21:53:55 +0000 Subject: [csw-devel] SF.net SVN: gar:[13436] csw/mgar/pkg Message-ID: Revision: 13436 http://gar.svn.sourceforge.net/gar/?rev=13436&view=rev Author: skayser Date: 2011-02-21 21:53:54 +0000 (Mon, 21 Feb 2011) Log Message: ----------- various: fix dangling GAR svn:external references Property Changed: ---------------- csw/mgar/pkg/mod_wsgi/trunk/ csw/mgar/pkg/mysql5/branches/mysql-5.1.x/ csw/mgar/pkg/mysql5/branches/mysql-5.5.x/ csw/mgar/pkg/mysql5/trunk/ csw/mgar/pkg/sqlite3/tags/sqlite3-3.6.21,REV=2010.01.04/ csw/mgar/pkg/syslog_ng/trunk/ Property changes on: csw/mgar/pkg/mod_wsgi/trunk ___________________________________________________________________ Modified: svn:externals - gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2-pbuild + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Property changes on: csw/mgar/pkg/mysql5/branches/mysql-5.1.x ___________________________________________________________________ Modified: svn:externals - gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2-git + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Property changes on: csw/mgar/pkg/mysql5/branches/mysql-5.5.x ___________________________________________________________________ Modified: svn:externals - gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2-git + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Property changes on: csw/mgar/pkg/mysql5/trunk ___________________________________________________________________ Modified: svn:externals - gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2-checkpkg + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Property changes on: csw/mgar/pkg/sqlite3/tags/sqlite3-3.6.21,REV=2010.01.04 ___________________________________________________________________ Modified: svn:externals - gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2-checkpkg + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Property changes on: csw/mgar/pkg/syslog_ng/trunk ___________________________________________________________________ Modified: svn:externals - gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2-checkpkg + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bwalton at opencsw.org Mon Feb 21 23:04:09 2011 From: bwalton at opencsw.org (Ben Walton) Date: Mon, 21 Feb 2011 17:04:09 -0500 Subject: [csw-devel] SF.net SVN: gar:[13429] csw/mgar/gar/v2/gar.pkg.mk In-Reply-To: <20110221212432.GO21671@sebastiankayser.de> References: <1298324000-sup-9718@pinkfloyd.chass.utoronto.ca> <20110221212432.GO21671@sebastiankayser.de> Message-ID: <1298325605-sup-3601@pinkfloyd.chass.utoronto.ca> Excerpts from Sebastian Kayser's message of Mon Feb 21 16:24:32 -0500 2011: Hi Sebastian, > Sorry, I couldn't resist and added the comment right away earlier > this day. Hope that's okay for you Dago, I gave you all the credits > in the commit log ;) Nice! It also looks as though code review is starting to gain more traction here... :) Thanks -Ben -- Ben Walton Systems Programmer - CHASS University of Toronto C:416.407.5610 | W:416.978.4302 From skayser at users.sourceforge.net Mon Feb 21 23:45:28 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Mon, 21 Feb 2011 22:45:28 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[316] gar-wrapper/mgar Message-ID: Revision: 316 http://opencsw.svn.sourceforge.net/opencsw/?rev=316&view=rev Author: skayser Date: 2011-02-21 22:45:28 +0000 (Mon, 21 Feb 2011) Log Message: ----------- mgar: add check for required tools Modified Paths: -------------- gar-wrapper/mgar Modified: gar-wrapper/mgar =================================================================== --- gar-wrapper/mgar 2011-02-21 14:18:27 UTC (rev 315) +++ gar-wrapper/mgar 2011-02-21 22:45:28 UTC (rev 316) @@ -15,6 +15,7 @@ # ---------------------------------------------------------------------------- # # Todos: +# * Add command to update mgar itself # * Recipes: Move from svn:externals to GARTYPE # * Integrate the creation of a new package (with sanity check whether # package already exists). Use per-directory Makefile.template files. @@ -39,12 +40,30 @@ set -u set -e -EDITOR=${EDITOR:-vim} +EDITOR=${EDITOR:-vi} PATH=$PATH:/opt/csw/bin DEF_BUILDTREE=~/opencsw GAR_REPO=https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/ PKG_REPO=https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/pkg/ +REQ_TOOLS="gfind ggrep gmake mknmz namazu svn" +REQ_PKGS="findutils ggrep gmake namazu svn" + +function assert_required_tools { + for tool in $REQ_TOOLS; do + for dir in ${PATH/:/ /}; do + [ -x $dir/$tool ] && continue 2 + done + + echo "ERROR: Prerequisite command \"$tool\" not found in your \$PATH." + echo "Please make sure that these required packages are installed:" + echo + echo " $REQ_PKGS" + echo + exit 2 + done +} + function read_config_value { __param=$1 [ -f ~/.garrc ] || die_config_missing @@ -282,6 +301,9 @@ [ $# -eq 0 -o "${1:-}" == "help" -o "${1:-}" == "--help" ] && { usage; exit; } [ $1 == "-x" ] && { shift; set -x; } + +assert_required_tools + [ $1 == "init" ] && { init_buildtree ${2-$DEF_BUILDTREE}; exit; } BUILDTREE="`read_config_value BUILDTREE`"; eval BUILDTREE="$BUILDTREE" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Tue Feb 22 01:04:28 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Tue, 22 Feb 2011 00:04:28 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[317] gar-wrapper Message-ID: Revision: 317 http://opencsw.svn.sourceforge.net/opencsw/?rev=317&view=rev Author: skayser Date: 2011-02-22 00:04:28 +0000 (Tue, 22 Feb 2011) Log Message: ----------- mgar: add man page prototypes Added Paths: ----------- gar-wrapper/mgar.1.txt gar-wrapper/mgar.5.txt Added: gar-wrapper/mgar.1.txt =================================================================== --- gar-wrapper/mgar.1.txt (rev 0) +++ gar-wrapper/mgar.1.txt 2011-02-22 00:04:28 UTC (rev 317) @@ -0,0 +1,40 @@ +mgar(1) +======= + +NAME +---- +mgar - Automates the handling of the OpenCSW build tree and package builds + +SYNOPSIS +-------- +'mgar' [] + +DESCRIPTION +----------- +mgar is a command line tool that facilitates working with the OpenCSW package +build recipe tree. It automates everyday tasks and and abstracts implementation +details of the underlying repository as well as details of the build system +that is used to build packages out of the build recipes. + +GETTING STARTED +--------------- +So you've installed mgar. Great! In order to start working with it, you need +to initialize a local build tree and then pull in the build recipes from +OpenCSW. To do so, execute the following commands: + +------------ +$ mgar init # init the build tree at ~/opencsw +$ mgar up --all # fetch the build recipes +------------ + +If you haven't worked with the OpenCSW build recipes before, please hop over +to http://gar.opencsw.org for an introduction. For a full list of supported +commands, please see mgar --help. + +REPORTING BUGS +-------------- +Please report bugs at http://www.opencsw.org/mantis/. + +SEE ALSO +-------- +- mgar(5) Added: gar-wrapper/mgar.5.txt =================================================================== --- gar-wrapper/mgar.5.txt (rev 0) +++ gar-wrapper/mgar.5.txt 2011-02-22 00:04:28 UTC (rev 317) @@ -0,0 +1,21 @@ +mgar(5) +======= + +NAME +---- +mgar - Build recipe syntax + +DESCRIPTION +----------- +Build recipes are written in Makefile format (similar to what you would see in +e.g. FreeBSD ports). Please follow the links in the section section 'EXAMPLES' +for annotated examples and reference material. + +EXAMPLES +-------- +- https://gar.svn.sf.net/svnroot/gar/csw/mgar/pkg/template/trunk/Makefile +- http://sourceforge.net/apps/trac/gar/wiki/GAR%20Variable%20Reference + +SEE ALSO +-------- +- http://gar.opencsw.org This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Tue Feb 22 01:40:23 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Tue, 22 Feb 2011 00:40:23 +0000 Subject: [csw-devel] SF.net SVN: gar:[13437] csw/mgar/pkg Message-ID: Revision: 13437 http://gar.svn.sourceforge.net/gar/?rev=13437&view=rev Author: skayser Date: 2011-02-22 00:40:23 +0000 (Tue, 22 Feb 2011) Log Message: ----------- mgar: initial commit Added Paths: ----------- csw/mgar/pkg/mgar/ csw/mgar/pkg/mgar/Makefile csw/mgar/pkg/mgar/branches/ csw/mgar/pkg/mgar/tags/ csw/mgar/pkg/mgar/trunk/ csw/mgar/pkg/mgar/trunk/Makefile csw/mgar/pkg/mgar/trunk/checksums csw/mgar/pkg/mgar/trunk/files/ Copied: csw/mgar/pkg/mgar/Makefile (from rev 13436, csw/mgar/pkg/template/Makefile) =================================================================== --- csw/mgar/pkg/mgar/Makefile (rev 0) +++ csw/mgar/pkg/mgar/Makefile 2011-02-22 00:40:23 UTC (rev 13437) @@ -0,0 +1,15 @@ +# vim: ft=make ts=4 sw=4 noet + +default: + @echo "You are in the pkg/ directory." + +%: + $(MAKE) -C trunk $* + +paranoid-%: + $(MAKE) -C trunk $* || exit 2 + +export BUILDLOG ?= $(shell pwd)/buildlog.txt + +report-%: + $(MAKE) -C trunk $* || echo " *** make $* in $$i failed ***" >> $(BUILDLOG) Property changes on: csw/mgar/pkg/mgar/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/mgar/trunk/Makefile =================================================================== --- csw/mgar/pkg/mgar/trunk/Makefile (rev 0) +++ csw/mgar/pkg/mgar/trunk/Makefile 2011-02-22 00:40:23 UTC (rev 13437) @@ -0,0 +1,46 @@ +# TODO (release-critical prefixed with !, non release-critical with *) +# ! Check man pages for formatting/spelling bugs. Edit getting started to +# include some common tasks (see mgar wiki page). +# * Add bash auto-completion configuration +NAME = mgar +VERSION = 0.90 +CATEGORIES = apps + +DESCRIPTION = Command line interface to the OpenCSW build system +define BLURB + Long description +endef + +VENDOR_URL = http://gar.opencsw.org +SVNROOT = https://opencsw.svn.sourceforge.net/svnroot/opencsw/gar-wrapper +SVNREV = 317 + +ARCHALL = 1 + +RUNTIME_DEP_PKGS = CSWnamazu +RUNTIME_DEP_PKGS += CSWggrep +RUNTIME_DEP_PKGS += CSWgfind +RUNTIME_DEP_PKGS += CSWgmake +RUNTIME_DEP_PKGS += CSWsvn +RUNTIME_DEP_PKGS += CSWgardevel # Meta pkg. Pulls in deps required by GAR. + +CONFIGURE_SCRIPTS = +BUILD_SCRIPTS = custom +TEST_SCRIPTS = +INSTALL_SCRIPTS = custom + +include gar/category.mk + +build-custom: + svn export --force -r $(SVNREV) $(SVNROOT)/ $(WORKSRC) + a2x -d manpage -f manpage $(WORKSRC)/mgar.1.txt + a2x -d manpage -f manpage $(WORKSRC)/mgar.5.txt + $(MAKECOOKIE) + +install-custom: + mkdir -p $(DESTDIR)$(bindir) + mkdir -p $(DESTDIR)$(mandir)/man1 $(DESTDIR)$(mandir)/man5 + cp $(WORKSRC)/mgar $(DESTDIR)$(bindir) + cp $(WORKSRC)/mgar.1 $(DESTDIR)$(mandir)/man1/ + cp $(WORKSRC)/mgar.5 $(DESTDIR)$(mandir)/man5/ + $(MAKECOOKIE) Property changes on: csw/mgar/pkg/mgar/trunk/Makefile ___________________________________________________________________ Added: svn:keywords + Id Added: csw/mgar/pkg/mgar/trunk/checksums =================================================================== This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Tue Feb 22 01:42:31 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Tue, 22 Feb 2011 00:42:31 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[318] gar-wrapper/mgar Message-ID: Revision: 318 http://opencsw.svn.sourceforge.net/opencsw/?rev=318&view=rev Author: skayser Date: 2011-02-22 00:42:30 +0000 (Tue, 22 Feb 2011) Log Message: ----------- mgar: fix global command recognition for "commit|ci" Modified Paths: -------------- gar-wrapper/mgar Modified: gar-wrapper/mgar =================================================================== --- gar-wrapper/mgar 2011-02-22 00:04:28 UTC (rev 317) +++ gar-wrapper/mgar 2011-02-22 00:42:30 UTC (rev 318) @@ -15,6 +15,7 @@ # ---------------------------------------------------------------------------- # # Todos: +# * In commit mode, if (pwd.endswith('trunk') and svn.rev -eq 0) commit .. # * Add command to update mgar itself # * Recipes: Move from svn:externals to GARTYPE # * Integrate the creation of a new package (with sanity check whether @@ -116,7 +117,7 @@ function is_per_pkg_command { __cmd=$1 __global_cmds=`sed -ne '/^# global-cmds/,/^# \/global-cmds/p' $0 | \ - ggrep -E '^\s*[^)]+\) ' | cut -d\) -f1` + ggrep -E '^\s*[^)]+\) ' | cut -d\) -f1 | tr '|' '\n'` while read cmd; do [ "$cmd" == "$1" ] && return 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Tue Feb 22 01:47:04 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Tue, 22 Feb 2011 00:47:04 +0000 Subject: [csw-devel] SF.net SVN: gar:[13438] csw/mgar/pkg/mgar/trunk/Makefile Message-ID: Revision: 13438 http://gar.svn.sourceforge.net/gar/?rev=13438&view=rev Author: skayser Date: 2011-02-22 00:47:04 +0000 (Tue, 22 Feb 2011) Log Message: ----------- mgar: correct deps, add checkpkg dependency override Modified Paths: -------------- csw/mgar/pkg/mgar/trunk/Makefile Modified: csw/mgar/pkg/mgar/trunk/Makefile =================================================================== --- csw/mgar/pkg/mgar/trunk/Makefile 2011-02-22 00:40:23 UTC (rev 13437) +++ csw/mgar/pkg/mgar/trunk/Makefile 2011-02-22 00:47:04 UTC (rev 13438) @@ -1,6 +1,7 @@ # TODO (release-critical prefixed with !, non release-critical with *) # ! Check man pages for formatting/spelling bugs. Edit getting started to # include some common tasks (see mgar wiki page). +# ! Add a license # * Add bash auto-completion configuration NAME = mgar VERSION = 0.90 @@ -19,11 +20,13 @@ RUNTIME_DEP_PKGS = CSWnamazu RUNTIME_DEP_PKGS += CSWggrep -RUNTIME_DEP_PKGS += CSWgfind +RUNTIME_DEP_PKGS += CSWfindutils RUNTIME_DEP_PKGS += CSWgmake RUNTIME_DEP_PKGS += CSWsvn RUNTIME_DEP_PKGS += CSWgardevel # Meta pkg. Pulls in deps required by GAR. +CHECKPKG_OVERRIDES_CSWmgar += surplus-dependency + CONFIGURE_SCRIPTS = BUILD_SCRIPTS = custom TEST_SCRIPTS = This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Tue Feb 22 09:32:39 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Tue, 22 Feb 2011 08:32:39 +0000 Subject: [csw-devel] SF.net SVN: gar:[13439] csw/mgar/pkg/puppet/trunk/Makefile Message-ID: Revision: 13439 http://gar.svn.sourceforge.net/gar/?rev=13439&view=rev Author: wahwah Date: 2011-02-22 08:32:38 +0000 (Tue, 22 Feb 2011) Log Message: ----------- puppet: Fixed a problem with a file in /etc/puppet Modified Paths: -------------- csw/mgar/pkg/puppet/trunk/Makefile Modified: csw/mgar/pkg/puppet/trunk/Makefile =================================================================== --- csw/mgar/pkg/puppet/trunk/Makefile 2011-02-22 00:47:04 UTC (rev 13438) +++ csw/mgar/pkg/puppet/trunk/Makefile 2011-02-22 08:32:38 UTC (rev 13439) @@ -96,14 +96,18 @@ gsed -e "s|/var/puppet|/var/opt/csw/puppet|g" -i ./lib/puppet/defaults.rb; \ gsed -e "s|/etc/puppet|/etc/opt/csw/puppet|g" -i ./lib/puppet/defaults.rb; \ gsed -e "s|/var/run/puppet|/var/opt/csw/puppet/run|g" -i ./lib/puppet/defaults.rb) - cd $(WORKSRC) && DESTDIR=$(DESTDIR) ruby install.rb + cd $(WORKSRC) && $(INSTALL_ENV) ruby install.rb \ + --configdir=$(sysconfdir) \ + --bindir=$(bindir) \ + --sbindir=$(sbindir) \ + --full cd $(DESTDIR)$(mandir)/man8 && gunzip * (cd $(WORKSRC)/examples/etc/puppet && \ for f in *; do \ if [ -f $$f ] ; then \ cp $$f $(DESTDIR)$(sysconfdir)/puppet/$$f.example; \ chmod 644 $(DESTDIR)$(sysconfdir)/puppet/$$f.example; \ - fi \ + fi; \ done) ginstall -d -m 755 $(DESTDIR)$(sysconfdir)/pkg/puppet ginstall -m 644 $(FILEDIR)/cswusergroup \ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Tue Feb 22 10:09:41 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Tue, 22 Feb 2011 09:09:41 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[319] utilities Message-ID: Revision: 319 http://opencsw.svn.sourceforge.net/opencsw/?rev=319&view=rev Author: wahwah Date: 2011-02-22 09:09:41 +0000 (Tue, 22 Feb 2011) Log Message: ----------- mk_code_list.sh: Adding mapping between catalognames and vendors Modified Paths: -------------- utilities/mk_core_list.sh Added Paths: ----------- utilities/catalogname_by_vendor.yml Added: utilities/catalogname_by_vendor.yml =================================================================== --- utilities/catalogname_by_vendor.yml (rev 0) +++ utilities/catalogname_by_vendor.yml 2011-02-22 09:09:41 UTC (rev 319) @@ -0,0 +1,1813 @@ +ftp://freefriends.org/arnold/Source/: [9menu] +ftp://ftp.adobe.com/pub/adobe/reader/unix/8.x/8.1.7/enu/: [adobereader] +ftp://ftp.akl.lt/ispell-lt/: [aspelllt] +ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/: [cyrus_imapd, cyrus_imapd_utils, pm_cyrus] +ftp://ftp.andrew.cmu.edu/pub/mpack: [mpack] +ftp://ftp.berlios.de/pub/smake/: [smake] +ftp://ftp.berlios.de/pub/ved/: [ved] +ftp://ftp.cmf.nrl.navy.mil/pub/kenh/netscape-remote-1.3.tar.Z: [tm_netscape_remote] +ftp://ftp.cs.toronto.edu/pub/moraes/jove: [jove] +ftp://ftp.dcs.ed.ac.uk/pub/ajcd/psutils.tar.gz: [psutils] +ftp://ftp.exim.org/pub/exim/exim4/: [exim] +ftp://ftp.foolabs.com/pub/xpdf/: [xpdf] +ftp://ftp.fvwm.org/pub/fvwm/version-2/: [fvwm] +ftp://ftp.gnome.org/pub/gnome/sources/ORBit/0.5/: [orbit] +ftp://ftp.gnu.org/pub/gnu/kawa/: [kawa] +ftp://ftp.gnupg.org/gcrypt/gnupg/: [gnupg_minimal] +ftp://ftp.gtk.org/pub/babl: [libbabl] +ftp://ftp.hylafax.org/source/: [hylafax] +ftp://ftp.imagemagick.org/pub/ImageMagick/delegates/: [libfpx] +ftp://ftp.kaybee.org/pub/linux/: [logwatch] +ftp://ftp.kde.org/pub/kde/stable/3.3.1/src: [kde_i18n_fa, kde_i18n_fi, kde_i18n_hr, + kde_i18n_mn, kde_i18n_ms, kde_i18n_uz, kde_i18n_zhtw] +ftp://ftp.kde.org/pub/kde/stable/3.4.2/src/kde-i18n/: [kde_i18n_af, kde_i18n_bg, kde_i18n_bn, + kde_i18n_bs, kde_i18n_ca, kde_i18n_cs, kde_i18n_cy, kde_i18n_da, kde_i18n_de, kde_i18n_el, + kde_i18n_en_gb, kde_i18n_eo, kde_i18n_es, kde_i18n_et, kde_i18n_eu, kde_i18n_fr, + kde_i18n_fy, kde_i18n_ga, kde_i18n_he, kde_i18n_hi, kde_i18n_hsb, kde_i18n_hu, kde_i18n_is, + kde_i18n_it, kde_i18n_ja, kde_i18n_lt, kde_i18n_mk, kde_i18n_nb, kde_i18n_nds, kde_i18n_nl, + kde_i18n_nn, kde_i18n_pa, kde_i18n_pl, kde_i18n_pt, kde_i18n_pt_br, kde_i18n_ro, + kde_i18n_ru, kde_i18n_se, kde_i18n_sk, kde_i18n_sl, kde_i18n_sr, kde_i18n_sr_latn, + kde_i18n_sv, kde_i18n_ta, kde_i18n_tg, kde_i18n_tr, kde_i18n_uk, kde_i18n_zh_cn] +ftp://ftp.kde.org/pub/kde/stable/amarok/1.4.8/src/: [amarok] +ftp://ftp.lyx.org/pub/lyx/stable/: [lyx] +ftp://ftp.monash.edu.au/pub/nihongo: [jdicts] +ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/3.0.14/linux-i686/xpi/: [firefox_l10n_af, + firefox_l10n_ar, firefox_l10n_be, firefox_l10n_bg, firefox_l10n_bn_in, firefox_l10n_ca, + firefox_l10n_cs, firefox_l10n_cy, firefox_l10n_da, firefox_l10n_de, firefox_l10n_el, + firefox_l10n_en_gb, firefox_l10n_eo, firefox_l10n_es_ar, firefox_l10n_es_es, firefox_l10n_et, + firefox_l10n_eu, firefox_l10n_fi, firefox_l10n_fr, firefox_l10n_fy_nl, firefox_l10n_ga_ie, + firefox_l10n_gl, firefox_l10n_gu_in, firefox_l10n_he, firefox_l10n_hi_in, firefox_l10n_hu, + firefox_l10n_id, firefox_l10n_is, firefox_l10n_it, firefox_l10n_ja, firefox_l10n_ka, + firefox_l10n_kn, firefox_l10n_ko, firefox_l10n_ku, firefox_l10n_lt, firefox_l10n_lv, + firefox_l10n_mk, firefox_l10n_mn, firefox_l10n_mr, firefox_l10n_nb_no, firefox_l10n_nl, + firefox_l10n_nn_no, firefox_l10n_oc, firefox_l10n_pa_in, firefox_l10n_pl, firefox_l10n_pt_br, + firefox_l10n_pt_pt, firefox_l10n_ro, firefox_l10n_ru, firefox_l10n_si, firefox_l10n_sk, + firefox_l10n_sl, firefox_l10n_sq, firefox_l10n_sr, firefox_l10n_sv_se, firefox_l10n_te, + firefox_l10n_th, firefox_l10n_tr, firefox_l10n_uk, firefox_l10n_zh_cn, firefox_l10n_zh_tw] +ftp://ftp.mozilla.org/pub/mozilla.org/thunderbird/releases/2.0.0.23/linux-i686/xpi/: [ + thunderbird_af, thunderbird_be, thunderbird_bg, thunderbird_ca, thunderbird_cs, + thunderbird_da, thunderbird_de, thunderbird_el, thunderbird_en_gb, thunderbird_es_ar, + thunderbird_es_es, thunderbird_eu, thunderbird_fi, thunderbird_fr, thunderbird_ga_ie, + thunderbird_he, thunderbird_hu, thunderbird_it, thunderbird_ja, thunderbird_ko, + thunderbird_lt, thunderbird_mk, thunderbird_nb_no, thunderbird_nl, thunderbird_nn_no, + thunderbird_pa_in, thunderbird_pl, thunderbird_pt_br, thunderbird_pt_pt, thunderbird_ru, + thunderbird_sk, thunderbird_sl, thunderbird_sv_se, thunderbird_tr, thunderbird_uk, + thunderbird_zh_cn, thunderbird_zh_tw] +ftp://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/: [openssh, openssh_client] +ftp://ftp.perens.com/pub/ElectricFence/: [efence] +ftp://ftp.planix.com/pub/mirror/: [trafshow] +ftp://ftp.proftpd.org/distrib/source/: [proftpd] +ftp://ftp.ruby-lang.org/pub/ruby/: [libruby1, ruby, rubydev, rubydoc, rubymode, rubymode_el, + rubytk] +ftp://ftp.sudo.ws/pub/sudo/: [sudo, sudo_common, sudo_ldap] +ftp://ftp.trolltech.com/qt/source: [qt_gcc] +ftp://ftp.uni-frankfurt.de/pub/Mirrors2/gentoo.org/distfiles/: [xbattle] +ftp://ftp.uu.net/pub/archiving/: [arc] +ftp://ftp.uu.net/usenet/comp.sources.x/: [spider] +ftp://ftp.zebra.org/pub/zebra/: [zebra] +ftp://invisible-island.net/vttest/: [vttest] +ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof: [lsof] +ftp://mirror.switch.ch/mirror/mysql/Downloads/MySQL-5.0/: [mysql5bench, mysql5test] +ftp://sbcl.sourceforge.net: [sbcl] +ftp://scon155.phys.msu.su/pub/russian/ispell/: [aspellru] +ftp://siag.nu/pub/pen/: [pen] +ftp://sid.joedog.org/pub/siege/: [siege] +ftp://sources.redhat.com/pub/docbook-tools/new-trials/SOURCES/: [sgmlcommon, xmlcommon] +ftp://sunsite.unc.edu/pub/Linux/libs/graphics: [t1lib] +ftp://vsftpd.beasts.org/users/cevans/: [vsftpd] +ftp://xmlsoft.org/libxml2/: [libxml2, libxml2_devel, py_libxml2] +http://aa-project.sourceforge.net/aalib/: [aalib] +http://albumshaper.sourceforge.net/: [albumshaper, albumshaper_common] +http://alioth.debian.org/projects/fortune/: [fortune] +http://alioth.debian.org/projects/libpst/: [libpst] +http://alioth.debian.org/projects/minicom/: [minicom] +http://alioth.debian.org/projects/pkg-isocodes/: [iso_codes] +http://alpha.greenie.net/mgetty/: [mgetty] +http://amsn.sourceforge.net/: [amsn] +http://anjuta.sourceforge.net/: [anjuta] +http://ant.apache.org/: [ant, antdoc] +http://apache.cict.fr/commons/beanutils/binaries/: [commons_beanutils, commons_beanutl_doc] +http://apache.cict.fr/commons/chain/binaries/: [commons_chain, commons_chain_doc] +http://apache.cict.fr/commons/cli/binaries/: [commons_cli, commons_cli_doc] +http://apache.cict.fr/commons/codec/binaries/: [commons_codec, commons_codec_doc] +http://apache.cict.fr/commons/collections/binaries/: [commons_collect, commons_collect_doc] +http://apache.cict.fr/commons/configuration/binaries/: [commons_config, commons_config_doc] +http://apache.cict.fr/commons/digester/binaries/: [commons_digester, commons_digester_doc] +http://apache.cict.fr/commons/discovery/binaries/: [commons_disco_doc, commons_discovery] +http://apache.cict.fr/commons/email/binaries/: [commons_email, commons_email_doc] +http://apache.cict.fr/commons/fileupload/binaries/: [commons_upload, commons_upload_doc] +http://apache.cict.fr/commons/io/binaries/: [commons_io, commons_io_doc] +http://apache.cict.fr/commons/lang/binaries/: [commons_lang, commons_lang_doc] +http://apache.cict.fr/commons/logging/binaries/: [commons_logging, commons_logging_doc] +http://apache.cict.fr/commons/math/binaries/: [commons_math, commons_math_doc] +http://apache.cict.fr/commons/net/binaries/: [commons_net, commons_net_doc] +http://apache.cict.fr/commons/pool/binaries/: [commons_pool, commons_pool_doc] +http://apache.cict.fr/commons/primitives/binaries/: [commons_primit_doc, commons_primitives] +http://apache.cict.fr/commons/validator/binaries/: [commons_validat_doc, commons_validator] +http://apache.cict.fr/logging/log4j/1.2.15/: [log4j, log4j_doc] +http://apache.crihan.fr/dist/apr/: [apr, apr_util] +http://archivemail.sourceforge.net/: [archivemail] +http://arthurdejong.org/svn2cl/: [svn2cl] +http://asg.web.cmu.edu/sasl/: [sasl, sasl_gssapi, sasl_sql, saslauthd] +http://aspell.net/: [aspell] +http://augeas.net: [augeas, py_augeas] +http://awstats.sourceforge.net/: [awstats] +http://axel.alioth.debian.org/: [axel] +http://bgoffice.sourceforge.net/: [aspellbg] +http://bitbucket.org/haypo/hachoir/wiki/Home: [py_hachoir_core, py_hachoir_parser] +http://blogs.sun.com/timc/entry/nicstat_the_solaris_and_linux: [nicstat] +http://bluefish.openoffice.nl/: [bluefish] +http://bochs.sourceforge.net/: [bochs] +http://boinc.berkeley.edu/: [boincclient, boincdevel, boinclibs, boincmanager] +http://borel.slu.edu/crubadan/: [aspellaz, aspellfy, aspellgd, aspellgv, aspellky, + aspellny, aspelltk] +http://borel.slu.edu/crubadan/index.html: [aspellrw, aspelltl, aspelltn] +http://borel.slu.edu/ispell/index.html: [aspellga] +http://bre.klaki.net/programs/colormake/: [colormake] +http://burtonini.com/blog/computers/devilspie: [devilspie] +http://bzero.se/confuse/: [libconfuse] +http://c-ares.haxx.se/: [libcares, libcares_devel] +http://ccache.samba.org/: [ccache] +http://ccrma.stanford.edu/software/snd/: [snd] +http://cdrdao.sourceforge.net/: [cdrdao] +http://cdrecord.berlios.de/old/private/: [schilybase, schilyutils] +http://cdrecord.berlios.de/old/private/cdrecord.html: [cdrtools] +http://cdrecord.berlios.de/old/private/star.html: [star] +http://cdrecord.berlios.de/private/: [pxupgrade] +http://cgi.cse.unsw.edu.au/~neilb/source/wiggle/: [wiggle] +http://ch.tudelft.nl/~arthur/rl/: [rl] +http://chanae.walon.org/walon/ispell.html: [aspellwa] +http://cinepaint.sourceforge.net/: [cinepaint] +http://clisp.cons.org: [clisp] +http://clpbar.sourceforge.net/: [bar] +http://cmake.org/: [cmake] +http://code.google.com/apis/gdata/: [py_gdata] +http://code.google.com/p/boto/: [py_boto] +http://code.google.com/p/google-gflags/: [gflags] +http://code.google.com/p/libarchive/: [libarchive2, libarchive_devel, libarchive_utils] +http://code.google.com/p/namebench: [namebench] +http://code.google.com/p/pacparser/: [libpacparser1, libpacparser_devel, pacparser, + py_libpacparser] +http://code.google.com/p/protobuf/: [libprotobuf6, libprotobuf_lite6, libprotoc6, + protobuf, protobuf_devel, py_protobuf] +http://code.google.com/p/pymox/: [py_mox] +http://code.google.com/p/python-gflags/: [py_gflags] +http://code.google.com/p/serf/: [libserf, libserf0_0, libserf_devel] +http://code.google.com/p/shflags/: [shflags] +http://code.google.com/p/shunit2/: [shunit2] +http://code.google.com/p/slack/: [slack] +http://codespeak.net/lxml/: [py_lxml] +http://colordiff.sourceforge.net/: [colordiff] +http://compression.ca/pbzip2/: [pbzip2] +http://cr.yp.to/daemontools.html: [daemontools, daemontools_core] +http://cr.yp.to/ucspi-tcp.html: [ucspi_tcp] +http://cri.ensmp.fr/~coelho/mod_macro/: [ap2_modmacro] +http://criticalmass.sourceforge.net/: [criticalmass] +http://crosswire.org/ftpmirror/pub/sword/source/v1.5: [sword] +http://ctags.sourceforge.net/: [ectags] +http://cups.sourceforge.net/xpp/: [xpp] +http://curl.haxx.se: [curl, curl_devel, curl_rt] +http://cvs2svn.tigris.org/: [cvs2svn] +http://cybercom.net/~dcoffin/dcraw/: [dcraw] +http://cyberelk.net/tim/software/patchutils/: [patchutils] +http://da.speling.org/: [aspellda] +http://david.schweikert.ch/software/mailgraph/: [mailgraph] +http://dbus.freedesktop.org/releases/dbus-glib/: [dbus_glib, dbus_glibdev] +http://dbus.freedesktop.org/releases/dbus/: [dbus, libdbus, libdbusdev] +http://delta.affinix.com/qca/: [qca, qca_sasl, qca_tls] +http://denyhosts.sf.net/: [denyhosts] +http://dev.mysql.com/downloads/connector/odbc/3.51.html: [myodbc] +http://dev.yorhel.nl/ncdu/: [ncdu] +http://developer.apple.com/darwin/projects/streaming/: [dss] +http://developer.kde.org/~wheeler/taglib.html: [libtag1, libtag_c0, taglib, taglib_devel, + taglib_gcc] +http://developers.sun.com/sunstudio/: [libsunmath] +http://developers.sun.com/sunstudio/documentation/ss12u1/DistributionREADME.txt: [ + ss12f95rt] +http://developers.videolan.org/libdvbpsi/: [libdvbpsi3] +http://devmon.sf.net/: [devmon] +http://devnag.sarovar.org/: [tex_vdevnag, tex_vdevnag_common] +http://diracvideo.org/: [libschro, libschrodevel] +http://directory.fsf.org/project/chrpath/: [chrpath] +http://directory.fsf.org/project/gcal/: [gcal] +http://disktype.sourceforge.net/: [disktype] +http://dist.codehaus.org/jetty/jetty-6.1.7/: [jetty6, jetty6doc] +http://distcc.googlecode.com/: [distcc] +http://distfiles.macports.org/libgnugetopt/: [libgnugetopt] +http://djvu.sourceforge.net/: [djvulibre, djvulibre_devel, djvulibre_rt] +http://dns.measurement-factory.com/tools/dnstop/src/: [dnstop] +http://dovecot.org/: [dovecot, dovecot_devel] +http://download.berlios.de/hatari/: [hatari] +http://download.fedora.redhat.com/pub/fedora/linux/core/development/SRPMS/: [logrotate] +http://download.pureftpd.org/pub/pure-ftpd/releases/: [pureftpd] +http://download.qballcow.nl/programs/gtodo/: [gtodo] +http://download.wikimedia.org/mediawiki/1.14/: [mediawiki] +http://downloads.sourceforge.net/aide/: [aide] +http://downloads.sourceforge.net/apcupsd/: [apcupsd] +http://downloads.sourceforge.net/asciidoc/: [asciidoc] +http://downloads.sourceforge.net/blame/: [blame] +http://downloads.sourceforge.net/buildbot/: [buildbot] +http://downloads.sourceforge.net/bvi/: [bvi] +http://downloads.sourceforge.net/bzflag/: [bzflag] +http://downloads.sourceforge.net/clusterit/: [clusterit] +http://downloads.sourceforge.net/clusterssh/: [clusterssh] +http://downloads.sourceforge.net/cpptest/: [libcpptest0, libcpptest_devel] +http://downloads.sourceforge.net/dnswalk/: [dnswalk] +http://downloads.sourceforge.net/docbook/: [docbookdsssl, docbookxsl, docbookxsldoc] +http://downloads.sourceforge.net/docutils/: [pydocutils] +http://downloads.sourceforge.net/easytag/: [easytag] +http://downloads.sourceforge.net/enlightenment/: [imlib2, imlib2_loaders] +http://downloads.sourceforge.net/euler/: [euler] +http://downloads.sourceforge.net/expat/: [expat] +http://downloads.sourceforge.net/freeciv/: [freeciv] +http://downloads.sourceforge.net/ftgl/: [ftgl, ftgl_devel] +http://downloads.sourceforge.net/gdmap/: [gdmap] +http://downloads.sourceforge.net/glew/: [glew] +http://downloads.sourceforge.net/gtkpod/: [gtkpod, libgpod] +http://downloads.sourceforge.net/gts/: [gts] +http://downloads.sourceforge.net/heirloom/: [mailx] +http://downloads.sourceforge.net/joe-editor/: [joe] +http://downloads.sourceforge.net/lasi/: [liblasi] +http://downloads.sourceforge.net/leafnode/: [leafnode] +http://downloads.sourceforge.net/libdbi/: [libdbi1, libdbi_devel] +http://downloads.sourceforge.net/libdnet/: [libdnet] +http://downloads.sourceforge.net/libmcal/: [libmcal] +http://downloads.sourceforge.net/librsync/: [librsync] +http://downloads.sourceforge.net/libspiff/: [libxspf4, libxspf_devel] +http://downloads.sourceforge.net/mad/: [libid3tag] +http://downloads.sourceforge.net/matio/: [libmatio] +http://downloads.sourceforge.net/mpg123/: [mpg123] +http://downloads.sourceforge.net/munin/: [munin_master, munin_node] +http://downloads.sourceforge.net/musicpd/: [ncmpc] +http://downloads.sourceforge.net/mysql-python/: [pymysql] +http://downloads.sourceforge.net/nagios/: [nagios, nrpe, nrpe_plugin] +http://downloads.sourceforge.net/ngrep/: [ngrep] +http://downloads.sourceforge.net/ntop/: [ntop] +http://downloads.sourceforge.net/openjade/: [openjade] +http://downloads.sourceforge.net/parcellite/: [parcellite] +http://downloads.sourceforge.net/php-mode/: [php_mode] +http://downloads.sourceforge.net/pidgin/: [pidgin] +http://downloads.sourceforge.net/pnp4nagios/: [pnp] +http://downloads.sourceforge.net/project/fprobe/fprobe/1.1/: [fprobe] +http://downloads.sourceforge.net/pysqlite/: [pysqlite] +http://downloads.sourceforge.net/setoolkit/: [setoolkit] +http://downloads.sourceforge.net/silvercity/: [silvercity] +http://downloads.sourceforge.net/squidclamav/: [squidclamav] +http://downloads.sourceforge.net/squirrelmail/: [squirrelmail] +http://downloads.sourceforge.net/swig/: [swig] +http://downloads.sourceforge.net/synergy2/: [synergy] +http://downloads.sourceforge.net/tardy/: [tardy] +http://downloads.sourceforge.net/uriparser/: [liburiparser1, liburiparser_devel] +http://downloads.sourceforge.net/wesnoth/: [wesnoth] +http://downloads.sourceforge.net/x3270/: [x026] +http://downloads.sourceforge.net/xchm/: [xchm] +http://downloads.sourceforge.net/xmlstar/: [xmlstarlet] +http://downloads.us.xiph.org/releases/libshout/: [libshout] +http://downloads.xiph.org/releases/liboggz/: [liboggz] +http://downloads.xiph.org/releases/ogg/: [libogg] +http://dropmix.xs4all.nl/rick/Xsnow/: [xsnow] +http://drupal.org/: [drupal] +http://dvd.sourceforge.net/: [libdvdnav] +http://eagain.net/gitweb/?p=gitosis.git: [gitosis] +http://easynews.dl.sourceforge.net/sourceforge/fltk/: [flphoto] +http://elinks.cz/download/: [elinks] +http://emacs-template.sourceforge.net/: [emacs_template] +http://eterm.org/: [libast] +http://examples.oreilly.com/korn/: [kshdbx] +http://expect.nist.gov/: [expect] +http://eyed3.nicfit.net/releases/: [pyeyed3] +http://fetchmail.berlios.de/: [fetchmail, fetchmailconf] +http://ffmpeg.sourceforge.net/: [ffmpeg] +http://ficy.sourceforge.net/: [ficy] +http://flac.sourceforge.net/: [libflac, xmms_flac] +http://flex.sourceforge.net/: [flex_new] +http://fluxbox.sourceforge.net/: [fluxbox] +http://fo.speling.org/: [aspellfo] +http://fontforge.sourceforge.net/: [fontforge] +http://foremost.sourceforge.net/: [foremost] +http://formencode.org/: [py_formencode] +http://freeassociation.sourceforge.net/: [libical, libical_devel] +http://freedesktop.org/Software/LibXklavier: [libxklavier] +http://freedesktop.org/Software/icon-theme/releases/: [hicolor_icon_theme] +http://freedesktop.org/Software/shared-mime-info: [shared_mime_info] +http://freeglut.sourceforge.net/: [freeglut] +http://freeradius.org/mod_auth_radius/: [ap2_mod_auth_radius] +http://frenchmozilla.sourceforge.net/: [firefox_fr] +http://fresh.t-systems-sfr.com/unix/src/misc/: [pstree] +http://freshmeat.net/projects/aggregate/: [aggregate] +http://freshmeat.net/projects/fio: [fio] +http://freshmeat.net/projects/gplbp/: [gplbp] +http://freshmeat.net/projects/imapsync/: [imapsync] +http://ftp.acc.umu.se/mirror/gnome.org/sources/dasher: [dasher] +http://ftp.acc.umu.se/mirror/gnome.org/sources/gtkhtml: [gtkhtml31] +http://ftp.acc.umu.se/pub/GNOME/sources/nautilus-cd-burner: [nautiluscdburner] +http://ftp.arl.mil/ftp/pub/ttcp/: [ttcp] +http://ftp.debian.org/debian/pool/main/f/fakeroot/: [fakeroot] +http://ftp.gnome.org/mirror/gnome.org/sources/gnome-menus: [gnome_menus] +http://ftp.gnome.org/pub/GNOME/sources/atk/1.30/: [libatk, libatk_devel] +http://ftp.gnome.org/pub/GNOME/sources/control-center: [control_center] +http://ftp.gnome.org/pub/GNOME/sources/dia/0.97/: [dia] +http://ftp.gnome.org/pub/GNOME/sources/eel: [eel] +http://ftp.gnome.org/pub/GNOME/sources/eog: [eog] +http://ftp.gnome.org/pub/GNOME/sources/epiphany/: [epiphany] +http://ftp.gnome.org/pub/GNOME/sources/esound/0.2/: [esound] +http://ftp.gnome.org/pub/GNOME/sources/gal/: [gal, gal2] +http://ftp.gnome.org/pub/GNOME/sources/gdk-pixbuf/0.22/: [gdk_pixbuf] +http://ftp.gnome.org/pub/GNOME/sources/gdm: [gdm] +http://ftp.gnome.org/pub/GNOME/sources/ggv/2.12: [ggv] +http://ftp.gnome.org/pub/GNOME/sources/ghex: [ghex] +http://ftp.gnome.org/pub/GNOME/sources/glib/2.23/: [glib2, glib2_devel] +http://ftp.gnome.org/pub/GNOME/sources/gnome-applets: [gnome_applets] +http://ftp.gnome.org/pub/GNOME/sources/gnome-desktop: [gnomedesktop] +http://ftp.gnome.org/pub/GNOME/sources/gnome-doc-utils: [gnome_doc_utils] +http://ftp.gnome.org/pub/GNOME/sources/gnome-games: [gnome_games] +http://ftp.gnome.org/pub/GNOME/sources/gnome-icon-theme/: [gnome_icon_theme] +http://ftp.gnome.org/pub/GNOME/sources/gnome-keyring-manager: [gnomekeyringmgr] +http://ftp.gnome.org/pub/GNOME/sources/gnome-media: [gnomemedia] +http://ftp.gnome.org/pub/GNOME/sources/gnome-mime-data: [gnomemime2] +http://ftp.gnome.org/pub/GNOME/sources/gnome-panel: [gnome_panel] +http://ftp.gnome.org/pub/GNOME/sources/gnome-pilot: [gnome_pilot] +http://ftp.gnome.org/pub/GNOME/sources/gnome-session: [gnome_session] +http://ftp.gnome.org/pub/GNOME/sources/gnome-spell/: [gnome_spell] +http://ftp.gnome.org/pub/GNOME/sources/gnome-terminal: [gnome_terminal] +http://ftp.gnome.org/pub/GNOME/sources/gnome-utils: [gnome_utils] +http://ftp.gnome.org/pub/GNOME/sources/gtk-doc/1.11/: [gtk_doc] +http://ftp.gnome.org/pub/GNOME/sources/gtkhtml/: [gtkhtml] +http://ftp.gnome.org/pub/GNOME/sources/intltool/0.40/: [intltool] +http://ftp.gnome.org/pub/GNOME/sources/libart_lgpl/2.3/: [libart] +http://ftp.gnome.org/pub/GNOME/sources/libcroco/0.6/: [libcroco] +http://ftp.gnome.org/pub/GNOME/sources/libgail-gnome/: [libgail_gnome] +http://ftp.gnome.org/pub/GNOME/sources/libglade/0.17/: [libglade] +http://ftp.gnome.org/pub/GNOME/sources/libgnomeprintui: [libgnomeprintui] +http://ftp.gnome.org/pub/GNOME/sources/libgtkhtml: [libgtkhtml] +http://ftp.gnome.org/pub/GNOME/sources/libgtop: [libgtop] +http://ftp.gnome.org/pub/GNOME/sources/libsigc++/2.2/: [libsigc++, libsigc++_devel] +http://ftp.gnome.org/pub/GNOME/sources/libsoup/2.26/: [libsoup, libsoup2, libsoup_devel, + libsoup_doc] +http://ftp.gnome.org/pub/GNOME/sources/nautilus: [nautilus] +http://ftp.gnome.org/pub/GNOME/sources/nautilus-media: [nautilusview] +http://ftp.gnome.org/pub/GNOME/sources/pango: [libpango, libpango_devel, libpango_doc] +http://ftp.gnome.org/pub/GNOME/sources/pygobject/2.15/: [pygobject] +http://ftp.gnome.org/pub/GNOME/sources/pyorbit/2.0/: [pyorbit] +http://ftp.gnome.org/pub/GNOME/sources/yelp: [yelp] +http://ftp.gnome.org/pub/gnome/sources/bug-buddy: [bugbuddy] +http://ftp.gnome.org/pub/gnome/sources/evolution-data-server: [evolution_ds] +http://ftp.gnome.org/pub/gnome/sources/file-roller: [fileroller] +http://ftp.gnome.org/pub/gnome/sources/gcalctool: [gcalctool] +http://ftp.gnome.org/pub/gnome/sources/gconf-editor: [gconfeditor] +http://ftp.gnome.org/pub/gnome/sources/gnome-mag: [gnomemag] +http://ftp.gnome.org/pub/gnome/sources/gnome-netstatus: [gnome_netstatus] +http://ftp.gnome.org/pub/gnome/sources/gnome-system-monitor: [gnomesysmon] +http://ftp.gnome.org/pub/gnome/sources/gnopernicus: [gnopernicus] +http://ftp.gnome.org/pub/gnome/sources/gok: [gok] +http://ftp.gnome.org/pub/gnome/sources/gpdf: [gpdf] +http://ftp.gnome.org/pub/gnome/sources/gtksourceview: [gtksourceview] +http://ftp.gnome.org/pub/gnome/sources/gucharmap: [gucharmap] +http://ftp.gnome.org/pub/gnome/sources/imlib: [imlib] +http://ftp.gnome.org/pub/gnome/sources/zenity: [zenity] +http://ftp.gnu.org/gnu/aspell/dict/: [aspellaf, aspellam, aspellar, aspellbe, aspellbr, + aspellcs, aspellcsb, aspellet, aspellfa, aspellgrc, aspellhil, aspellhr, aspellhsb, + aspellhy, aspellia, aspellid, aspelllv, aspellmi, aspellmk, aspellms, aspellnds, + aspellqu, aspellsl, aspellsw, aspellvi, aspellyi, aspellzu] +http://ftp.gnu.org/non-gnu/cvs/source/feature/1.12.13/: [cvs, cvs_feature] +http://ftp.gnu.org/pub/gnu/a2ps/: [a2ps] +http://ftp.gnu.org/pub/gnu/auctex/: [auctex] +http://ftp.gnu.org/pub/gnu/binutils/: [binutils] +http://ftp.gnu.org/pub/gnu/chess/: [gnuchess] +http://ftp.gnu.org/pub/gnu/gawk: [gawk] +http://ftp.ibiblio.org/pub/Linux/ALPHA/freetds/stable/: [freetds, freetds_doc] +http://ftp.porcupine.org/pub/security/: [tcpwrappers] +http://ftp.us.debian.org/debian/pool/main/libp/libpaper/: [libpaper] +http://ftp.xemacs.org/packages/: [xemacs_packages] +http://ftp.xemacs.org/xemacs/stable/: [xemacs] +http://ftp.yars.free.net/pub/source/lftp/: [lftp] +http://fuse-emulator.sourceforge.net/: [libspectrum] +http://garr.dl.sourceforge.net/sourceforge/p7zip/: [p7zip] +http://gborg.postgresql.org/project/libpqxx/: [libpqxx] +http://gcc.gnu.org/: [gcc3, gcc3ada, gcc3adart, gcc3core, gcc3corert, gcc3g++, gcc3g++rt, + gcc3g77, gcc3g77rt, gcc3java, gcc3javart, gcc3objc, gcc3objcrt, gcc3rt] +http://gcc.gnu.org/gcc-2.95/: [gcc2, gcc2chill, gcc2chillrt, gcc2core, gcc2corert, + gcc2g++, gcc2g++rt, gcc2g77, gcc2g77rt, gcc2java, gcc2javart, gcc2objc, gcc2objcrt, + gcc2rt] +http://gcc.gnu.org/gcc-4.0/: [gcc4g95, gcc4g95rt] +http://gdome2.cs.unibo.it/: [gdome2] +http://geeqie.sourceforge.net/: [geeqie] +http://genshi.edgewall.org/: [genshi] +http://geolite.maxmind.com/download/geoip/api/c/: [geoip, geoip_devel] +http://geos.refractions.net/: [geos] +http://get.bitlbee.org/src/: [bitlbee] +http://giflib.sourceforge.net/: [giflib, giflib_doc, giflib_rt, libungif] +http://gimp-print.sourceforge.net: [gimpprint] +http://git-scm.org/: [git, git_completion, git_cvs, git_devel, git_doc, git_emacs, + git_gui, git_svn, gitk] +http://github.com/apenwarr/git-subtree: [git_subtree] +http://github.com/sam-github/libnet: [libnet, libnet1, libnet_devel] +http://glade.gnome.org/: [gladegui] +http://gmt.soest.hawaii.edu/: [gmt, gmt_doc, gmtcoast_full, gmtcoast_high, gmtcoast_low] +http://gqview.sourceforge.net/: [gqview] +http://gstreamer.freedesktop.org: [gstplugins, gstplugins_bad, gstplugins_good, gstplugins_ugly, + gstreamer] +http://gthumb.sourceforge.net: [gthumb] +http://gtk-gnutella.sourceforge.net/: [gtkgnutella] +http://gtklp.sourceforge.net/: [gtklp] +http://gtkspell.sourceforge.net/: [gtkspell] +http://guppy-pe.sourceforge.net/: [py_guppy] +http://havardk.xmms.org/plugins/arts_output/: [xmms_arts] +http://hcpnet.free.fr/milter-greylist: [miltergreylist] +http://helgafell.rhi.hi.is/pub/aspell-is: [aspellis] +http://hevea.inria.fr/distri/: [hevea] +http://hewgill.com/xearth/original/: [xearth] +http://hg.mozilla.org/mozilla-central/raw-file/default/security/nss/lib/ckfw/builtins/: [ + ca_certificates] +http://hobbitmon.sf.net/: [hobbit, hobbit_client] +http://home.nyc.rr.com/twopks/olvwm/: [olvwm] +http://homepages.ihug.co.nz/~trmusson/programs.html: [gxmessage] +http://hovland.org/solaris,: [pdadrv] +http://hpinkjet.sourceforge.net/: [hpijs] +http://http://kmymoney2.sourceforge.net/: [kmymoney2, kmymoney2common] +http://http://www.sodipodi.com/: [sodipodi] +http://http://www.switch.ch/misc/leinen/snmp/perl/: [pm_snmpsession] +http://httpd.apache.org/: [ap2_prefork, ap2_suexec, ap2_worker, apache2, apache2_devel, + apache2_manual, apache2c, apache2rt] +http://huizen.dds.nl/~frodol/psiconv/: [psiconv] +http://ibiblio.org/pub/Linux/apps/financial/spreadsheet: [sc] +http://ibm.com/developerworks/opensource/jikes: [jikes] +http://icculus.org/SDL_sound/downloads/: [sdlsound] +http://icculus.org/neverball/: [neverball] +http://icewm.sourceforge.net/: [icewm] +http://icu-project.org/: [libicu, libicu42, libicu46, libicu_devel] +http://id3lib.sourceforge.net/: [id3lib] +http://imapfilter.hellug.gr/source/: [imapfilter] +http://initd.org/psycopg/tarballs/: [py_psycopg2] +http://integrit.sourceforge.net/: [integrit] +http://invisible-island.net/datafiles/release/: [dialog, dialog_minimal] +http://invisible-island.net/diffstat/: [diffstat] +http://invisible-island.net/mawk/mawk.html: [mawk] +http://invisible-island.net/xterm/: [xterm] +http://ipaudit.sourceforge.net/: [ipaudit] +http://iperf.sourceforge.net/: [iperf] +http://ispell-fi.sourceforge.net/: [aspellfi] +http://ispell-gl.sourceforge.net/minimos/ispell-gl-en.html: [aspellgl] +http://ispell-uk.sourceforge.net/: [aspelluk] +http://ispell.source.gr/index_aspell.html: [aspellel] +http://j3e.de/ispell/igerman98/: [aspellde] +http://j3e.de/ispell/iroma/: [aspellla] +http://jabberd.jabberstudio.org/1.4/: [jabberd] +http://jakarta.apache.org/builds/jakarta-tomcat-connectors/jk2/: [mod_jk2] +http://jbig2dec.sourceforge.net/: [jbig2dec] +http://jdbc.postgresql.org/: [postgresqljdbc] +http://jetmore.net/john/code/swaks: [swaks] +http://jocr.sourceforge.net/: [gocr] +http://jonas.nitro.dk/tig/: [tig] +http://josefsson.org/libntlm/: [libntlm] +http://kdepim.kde.org: [kdepim_gcc] +http://labix.org/python-dateutil/: [py_dateutil] +http://lame.sourceforge.net/: [lame, lame_devel, lame_mp3x, libmp3lame0] +http://lftp.yar.ru/: [gnustep_make] +http://liba52.sourceforge.net/files/: [a52dec, liba52] +http://libcddb.sourceforge.net/: [libcddb] +http://libemf.sourceforge.net/: [libemf, libemf1, libemf_devel] +http://libexif.sourceforge.net: [libexif] +http://libiptcdata.sourceforge.net: [libiptcdata] +http://liblqr.wikidot.com/: [liblqr, liblqr_devel] +http://libmpeg2.sourceforge.net: [libmpeg2, mpeg2dec] +http://libnids.sourceforge.net/: [libnids] +http://libofx.sourceforge.net/: [libofx, libofx_devel, libofx_doc, libofx_rt] +http://liboil.freedesktop.org/: [liboil, liboil_devel] +http://libopenraw.freedesktop.org/download/: [exempi, exempi_devel] +http://libproxy.googlecode.com/files/: [libproxy, libproxy_devel, libproxy_gnome, + libproxy_kde, py_libproxy] +http://librsvg.sourceforge.net: [librsvg] +http://libspectre.freedesktop.org: [libspectre] +http://libtorrent.rakshasa.no/downloads/: [libtorrent, libtorrent_devel] +http://libwbxml.aymerick.com/: [libwbxml2] +http://libwpd.sourceforge.net/: [libwpd] +http://liferea.sourceforge.net/: [liferea] +http://lingucomponent.openoffice.org/download_dictionary.html: [ooodictafza, ooodictbgbg, + ooodictcaes, ooodictcscz, ooodictcygb, ooodictdadk, ooodictdeat, ooodictdech, ooodictdede, + ooodictelgr, ooodictenau, ooodictenca, ooodictengb, ooodictennz, ooodictenus, ooodicteses, + ooodictesmx, ooodictetee, ooodictfrbe, ooodictfrfr, ooodictgles, ooodicthrhr, ooodicthuhu, + ooodictitit, ooodictltlt, ooodictnbno, ooodictnlnl, ooodictnnno, ooodictplpl, ooodictptbr, + ooodictptpt, ooodictsksk, ooodictslsi, ooodictsvse, ooodictzuza] +http://links.sourceforge.net: [links] +http://linux.nawebu.cz/wmcliphist/: [wmcliphist] +http://linux.org.mt/projects/spellcheck: [aspellmt] +http://linux.thai.net/projects/libthai/: [libthai, libthai_devel] +http://linux.thai.net/~thep/datrie/datrie.html: [libdatrie] +http://linuxmg.org/: [aspellmg] +http://live.gnome.org/GnomeKeyring: [gnomekeyring] +http://live.gnome.org/libgnomeui: [libgnomeui, libgnomeui2_0, libgnomeui_devel, libgnomeui_doc] +http://log4cpp.sourceforge.net/: [log4cpp] +http://lout.sourceforge.net/: [lout, lout_share] +http://lpr.sourceforge.net: [npadmin] +http://lxde.sourceforge.net/gpicview/: [gpicview] +http://lynx.isc.org/release/: [lynx] +http://magyarispell.sourceforge.net: [aspellhu] +http://mama.indstate.edu/users/ice/tree/: [tree] +http://materm.sourceforge.net/: [mrxvt] +http://mcrypt.sourceforge.net/: [libmcrypt] +http://meanwhile.sourceforge.net/: [meanwhile] +http://meld.sourceforge.net/: [meld] +http://members.dslextreme.com/users/billw/gkrellm/: [gkrellm, gkrellmd] +http://merd.sourceforge.net/pixel/hexedit.html: [hexedit] +http://mesh.dl.sourceforge.net/sourceforge/nagios/: [nsca, send_nsca] +http://metauml.sourceforge.net/: [tex_metauml, tex_metaumlman] +http://mhash.sourceforge.net/: [libmhash] +http://michael.toren.net/code/tcptraceroute/: [tcptraceroute] +http://mikmod.raphnet.net/files/: [libmikmod] +http://mir2.ovh.net/ftp.apache.org/dist/jakarta/tomcat-4/v4.1.37/bin/: [tomcat4] +http://mir2.ovh.net/ftp.apache.org/dist/jakarta/tomcat-5/v5.5.27/bin/: [tomcat5] +http://mir2.ovh.net/ftp.apache.org/dist/jakarta/tomcat-6/v6.0.18/bin/: [tomcat6] +http://mirror.csclub.uwaterloo.ca/nongnu/quilt/: [quilt, quilt_completion, quilt_el] +http://mirrors.kernel.org/gnu/gcc//gcc-4.3.3/: [gcc4ada, gcc4adart, gcc4core, gcc4corert, + gcc4g++, gcc4g++rt, gcc4gfortran, gcc4gfortranrt, gcc4java, gcc4javart, gcc4objc, + gcc4objcrt] +http://mirrors.kernel.org/gnu/gettext/: [ggettext, ggettextdoc, ggettextrt] +http://mirrors.kernel.org/gnu/glpk/: [libglpk] +http://mirrors.kernel.org/gnu/gperf/: [gperf] +http://mirrors.kernel.org/gnu/grep/: [ggrep] +http://mirrors.kernel.org/gnu/gzip/: [gzip, gzip_extras] +http://mirrors.kernel.org/gnu/indent/: [indent] +http://mirrors.kernel.org/gnu/libiconv/: [libiconv] +http://mirrors.kernel.org/gnu/patch/: [gpatch] +http://mirrors.kernel.org/gnu/recode/: [recode] +http://mirrors.kernel.org/gnu/sed/: [gsed] +http://mirrors.kernel.org/gnu/wget/: [wget] +http://mirrors.usc.edu/: [xpm] +http://mlterm.sourceforge.net/: [mlterm] +http://mod-ldap.sourceforge.net/: [mod_ldap] +http://modeemi.cs.tut.fi/~tuomov/ion/: [ion] +http://modwsgi.googlecode.com/files/: [ap2_modwsgi] +http://mpg321.sourceforge.net/: [mpg321] +http://mrtg-pme.sourceforge.net/: [mrtgpme] +http://msmtp.sourceforge.net/: [msmtp] +http://mtx.opensource-sw.net/: [mtx, mtx_contrib] +http://multisync.sourceforge.net/: [multisync] +http://n.ethz.ch/student/nevillm/download/libxdg-basedir: [libxdg_basedir] +http://nail.sf.net/: [nail] +http://namazu.org/: [gnusnamazu, namazu] +http://natura.di.uminho.pt/wiki/index.cgi?Dictionary: [aspellptpt] +http://ncu.dl.sourceforge.net/project/cscope/cscope/15.7a/: [cscope] +http://netcat.sourceforge.net/: [netcat] +http://nfswatch.sourceforge.net/: [nfswatch] +http://numpy.scipy.org/: [py_numpy] +http://openbox.org/: [obconf, openbox] +http://opencsw.org: [gar_devel, gnulinks] +http://openjade.sourceforge.net/: [opensp, opensp_devel, opensp_doc, opensp_rt] +http://openobex.sourceforge.net/: [openobex] +http://oriya.sarovar.org/dictionary.html: [aspellor] +http://oriya.sarovar.org/hi-dict.html: [aspellhi] +http://oss.oetiker.ch/mrtg/: [mrtg] +http://oss.oetiker.ch/rrdtool/pub/: [rrdtool] +http://ovh.dl.sourceforge.net/sourceforge/junit/: [junit, junit_doc] +http://packages.debian.org/stable/mail/metamail: [metamail] +http://packages.debian.org/unstable/admin/tmpreaper: [tmpreaper] +http://packages.debian.org/unstable/devel/autoproject: [autoproject] +http://packages.debian.org/unstable/utils/unzoo: [unzoo] +http://pan.rebelbase.com/: [pan] +http://pari.math.u-bordeaux.fr: [gp2c, parigp] +http://pcb.sourceforge.net: [pcb] +http://pdcurses.sourceforge.net/: [pdcurses] +http://peak.telecommunity.com/DevCenter/setuptools: [pysetuptools] +http://pecl.php.net/package/apc: [php5_apc] +http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/pub/libs/: [cgilib] +http://people.gnome.org/~veillard/gamin: [gamin] +http://people.ssh.fi/mtr/genscript/: [enscript] +http://people.suug.ch/~tgr/bmon/: [bmon] +http://people.ucsc.edu/~jrudd/spamassassin/: [botnet] +http://perso.wanadoo.fr/remi.vanicat/aspell/: [aspellfr] +http://pfelecan.free.fr/software/emacs_chooser/: [emacs_chooser] +http://phpldapadmin.sourceforge.net/: [phpldapadmin] +http://phpsysinfo.sourceforge.net: [phpsysinfo] +http://pkg-config.freedesktop.org: [pkgconfig] +http://pkgutil.wikidot.com/: [pkgutil, pkgutilplus] +http://plasmasturm.org/code/gtk-chtheme/: [gtk_chtheme] +http://plib.sourceforge.net: [plib] +http://pmt.sourceforge.net/pngcrush/: [pngcrush] +http://poppler.freedesktop.org/: [libpoppler, libpoppler_devel, libpoppler_doc, poppler, + poppler_data] +http://postgrey.schweikert.ch/pub/: [postgrey] +http://prboom.sourceforge.net/: [prboom] +http://prdownloads.sourceforge.net/razor/: [razor] +http://prefetch.net/code/lastx.c.html: [lastx] +http://procps.sourceforge.net/: [watch] +http://projects.gnome.org/ORBit2/: [orbit2] +http://projects.gnome.org/gconf/: [gconf2] +http://projects.gnome.org/libIDL/: [libidl] +http://proxytunnel.sourceforge.net/: [proxytunnel] +http://psi-im.org/: [psi] +http://public.planetmirror.com/pub/irc/clients/unix/: [ircii] +http://punlinux.sourceforge.net/dictionary.html: [aspellpa] +http://pwgen.sourceforge.net: [pwgen] +http://pychecker.sourceforge.net/: [pychecker] +http://pycurl.sourceforge.net/: [py_curl] +http://pydes.sourceforge.net/: [pydes] +http://pypgsql.sourceforge.net/: [pypgsql] +http://pypi.python.org/packages/source/d/django-auth-ldap/: [py_django_auth_ldap] +http://pypi.python.org/packages/source/d/django-filter/: [py_django_filter] +http://pypi.python.org/packages/source/d/django-sorting/: [py_django_sorting] +http://pypi.python.org/packages/source/x/xlrd/: [py_xlrd] +http://pypi.python.org/pypi/Amara: [py_amara] +http://pypi.python.org/pypi/atomixlib: [py_atomixlib] +http://pypi.python.org/pypi/fpconst/: [py_fpconst] +http://pypi.python.org/pypi/progressbar: [py_progressbar] +http://pypi.python.org/pypi/pylint: [pylint] +http://pypi.python.org/pypi/python-graph: [py_graph] +http://pypi.python.org/pypi/zope.interface: [py_zope_interface] +http://pysqlite.googlecode.com/files/: [pysqlite2] +http://pysvn.tigris.org/: [pysvn] +http://python.org/download/releases/2.6.4: [python_rt, python_test] +http://python.org/download/releases/2.6.6: [idle, libpython2_5_1_0, libpython2_6_1_0, + python, python_devel, python_tk] +http://pytz.sourceforge.net/: [py_tz] +http://pywebsvcs.sourceforge.net/: [py_soappy] +http://pyxml.sourceforge.net/: [pyxml] +http://pyyaml.org/download/pyyaml/: [pyyaml] +http://pyyaml.org/wiki/LibYAML?version=20: [libyaml] +http://pyyaml.org/wiki/PyYAML: [py_yaml, py_yaml_rt] +http://qdbm.sourceforge.net/: [qdbm] +http://qosient.com/argus/: [argus] +http://radscan.com/nas.html: [nas] +http://radsite.lbl.gov/radiance/: [radiance] +http://rapidsvn.tigris.org/: [libsvncpp3, rapidsvn] +http://reductivelabs.com/projects/facter: [facter] +http://reductivelabs.com/projects/puppet: [puppet] +http://regina-rexx.sourceforge.net: [regina] +http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.0.14/source/: [firefox] +http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/2.0.0.23/source/: [ + thunderbird] +http://roscidus.com/desktop/ROX-Filer: [roxfiler] +http://rospell.sourceforge.net: [aspellro] +http://rpm5.org/files/popt/: [libpopt] +http://rsync.samba.org/: [rsync] +http://rubyforge.org/frs/download.php/56872/: [rake] +http://rubyforge.org/projects/rubygems/: [rubygems] +http://saftsack.fs.uni-bayreuth.de/~latex2ht/current/: [latex2html] +http://sarovar.org/projects/pdftricks/: [tex_pdftricks] +http://savannah.gnu.org/projects/mailutils/: [mailutils] +http://savannah.nongnu.org/projects/spamass-milt: [spamass_milter] +http://savannah.nongnu.org/projects/xforms: [xforms] +http://sccs.berlios.de/: [sccs] +http://scrollkeeper.sourceforge.net/: [scrollkeeper] +http://search.cpan.org/CPAN/authors/id/A/AD/ADAMK/: [pm_clsautouse] +http://search.cpan.org/CPAN/authors/id/B/BB/BBB/: [pm_filenfslock] +http://search.cpan.org/CPAN/authors/id/B/BR/BRADFITZ/: [pm_cachememcached] +http://search.cpan.org/CPAN/authors/id/C/CL/CLEISHMAN/: [pm_cache] +http://search.cpan.org/CPAN/authors/id/C/CL/CLKAO/: [pm_svnsimple] +http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/: [pm_iostring] +http://search.cpan.org/CPAN/authors/id/G/GM/GMPASSOS/: [pm_objmultitype, pm_xmlsmart] +http://search.cpan.org/CPAN/authors/id/G/GR/GRICHTER/: [pm_extutxsbld] +http://search.cpan.org/CPAN/authors/id/J/JP/JPIERCE/: [pm_iopager] +http://search.cpan.org/CPAN/authors/id/M/MS/MSCHWERN/: [pm_filechdir] +http://search.cpan.org/CPAN/authors/id/P/PM/PMISON/: [pm_filetype] +http://search.cpan.org/CPAN/authors/id/R/RB/RBS/: [pm_regexpshellish, pm_textdiff] +http://search.cpan.org/CPAN/authors/id/W/WA/WADG/: [pm_configinifiles] +http://search.cpan.org/~/exiftool: [exiftool] +http://search.cpan.org/~abh/Apache-DBI: [pm_apachedbi] +http://search.cpan.org/~abigail/Geography-Countries: [pm_geocountries] +http://search.cpan.org/~abigail/Regexp-Common: [pm_regexpcom, pm_regexpcommon] +http://search.cpan.org/~abw/AppConfig: [pm_appconfig] +http://search.cpan.org/~abw/Class-Singleton: [pm_classsingleton] +http://search.cpan.org/~abw/Pod-POM: [pm_podpom] +http://search.cpan.org/~abw/Template-GD-2.66/: [pm_templategd] +http://search.cpan.org/~abw/Template-Toolkit: [pm_tt2, pm_tt2common] +http://search.cpan.org/~acalpini/Lingua-Stem-It: [pm_linguastemit] +http://search.cpan.org/~adamk/Algorithm-Dependency: [pm_algorithmdep] +http://search.cpan.org/~adamk/Archive-Zip: [pm_archivezip] +http://search.cpan.org/~adamk/Class-Adapter: [pm_classadapter] +http://search.cpan.org/~adamk/Class-Inspector: [pm_classinspector] +http://search.cpan.org/~adamk/Config-Tiny: [pm_configtiny] +http://search.cpan.org/~adamk/DBD-SQLite: [pm_dbdsqlite] +http://search.cpan.org/~adamk/File-Flat: [pm_fileflat] +http://search.cpan.org/~adamk/File-HomeDir: [pm_filehomedir] +http://search.cpan.org/~adamk/File-Remove: [pm_fileremove] +http://search.cpan.org/~adamk/Params-Util: [pm_paramsutil] +http://search.cpan.org/~adamk/Pod-Tests: [pm_podtests] +http://search.cpan.org/~adamk/SMS-Send: [pm_smssend] +http://search.cpan.org/~adamk/Task-Weaken: [pm_taskweaken] +http://search.cpan.org/~adamk/Test-ClassAPI: [pm_testclassapi] +http://search.cpan.org/~adamk/Test-Inline: [pm_testinline] +http://search.cpan.org/~adamk/Test-NoWarnings: [pm_testnowarnings] +http://search.cpan.org/~adamk/Test-Script-1.02/: [pm_testscript] +http://search.cpan.org/~adamk/YAML: [pm_yaml] +http://search.cpan.org/~adamk/prefork: [pm_prefork] +http://search.cpan.org/~adie/Test-Exception: [pm_tstexcept, pm_tstexception] +http://search.cpan.org/~agrolms/GSSAPI: [pm_gssapi] +http://search.cpan.org/~akste/Data-ShowTable-3.3/: [pm_datashowtbl] +http://search.cpan.org/~alexmv/App-CLI: [pm_appcli] +http://search.cpan.org/~alexmv/Data-ICal: [pm_dataical] +http://search.cpan.org/~algdr/Lingua-Stem-Ru: [pm_linguastemru] +http://search.cpan.org/~andk/Devel-Symdump: [pm_develsymdump] +http://search.cpan.org/~andya/IPC-ShareLite: [pm_ipcshrlite] +http://search.cpan.org/~areibens/PDF-API2: [pm_pdfapi2] +http://search.cpan.org/~aristotle/XML-Atom-SimpleFeed: [pm_xmlatomsimplefeed] +http://search.cpan.org/~arjay/Compress-Bzip2: [pm_compressbzip2] +http://search.cpan.org/~asksh/Snowball-Norwegian: [pm_snowballnorwegian] +http://search.cpan.org/~asksh/Snowball-Swedish: [pm_snowballswedish] +http://search.cpan.org/~audreyt/Locale-Maketext-Fuzzy-0.10/: [pm_lclemktxtfuz] +http://search.cpan.org/~audreyt/Locale-Maketext-Lexicon-0.66/: [pm_lclemktxtlex] +http://search.cpan.org/~audreyt/PerlIO-eol: [pm_perlioeol] +http://search.cpan.org/~audreyt/Test-use-ok: [pm_testuseok] +http://search.cpan.org/~audreyt/YAML-Syck: [pm_yamlsyck] +http://search.cpan.org/~autrijus/ExtUtils-AutoInstall: [pm_extutautoinst] +http://search.cpan.org/~awrigley/html2text: [pm_html2text] +http://search.cpan.org/~bbb/IO-Multiplex: [pm_iomultiplex] +http://search.cpan.org/~bdfoy/Crypt-Rijndael: [pm_cryptrijndael] +http://search.cpan.org/~bdfoy/Test-Manifest: [pm_tstmanif] +http://search.cpan.org/~bigpresh/Pod-Readme: [pm_podreadme] +http://search.cpan.org/~bingos/Archive-Extract: [pm_archiveextract] +http://search.cpan.org/~bingos/Archive-Tar: [pm_archivetar] +http://search.cpan.org/~bingos/File-Fetch: [pm_filefetch] +http://search.cpan.org/~bingos/IPC-Cmd: [pm_ipccmd] +http://search.cpan.org/~bingos/Log-Message-Simple: [pm_logmsgsimple] +http://search.cpan.org/~bingos/Module-Load: [pm_modload] +http://search.cpan.org/~bingos/Module-Load-Conditional: [pm_modloadcond] +http://search.cpan.org/~bingos/Module-Loaded: [pm_modloaded] +http://search.cpan.org/~bingos/Object-Accessor: [pm_objaccessor] +http://search.cpan.org/~bobmath/Crypt-CAST5: [pm_cryptcast5] +http://search.cpan.org/~book/SVN-Dump: [pm_svndump] +http://search.cpan.org/~borisz/Geo-IP-PurePerl: [pm_geoippureperl] +http://search.cpan.org/~bricas/DublinCore-Record: [pm_dublincorerecord] +http://search.cpan.org/~bricas/MARC-Crosswalk-DublinCore: [pm_marccrosswalkdblc] +http://search.cpan.org/~bwarfield/GDGraph: [pm_gdgraph] +http://search.cpan.org/~bzajac/Math-Interpolate: [pm_mathinterpolate] +http://search.cpan.org/~cade/Time-Progress: [pm_timeprogress] +http://search.cpan.org/~capttofu/DBD-mysql: [pm_dbdmysql] +http://search.cpan.org/~ceeshek/CGI-Application-Plugin-LogDispatch: [pm_cgiapplogdisp] +http://search.cpan.org/~cfaerber/Graphics-ColorNames-WWW: [pm_graphicscolornw] +http://search.cpan.org/~cfaerber/IDNA-Punycode: [pm_idnapunycode] +http://search.cpan.org/~cfaerber/Net-IDN-Encode: [pm_netidnencode] +http://search.cpan.org/~cfaerber/Net-IDN-Nameprep: [pm_netidnnameprep] +http://search.cpan.org/~cfaerber/Unicode-Stringprep: [pm_unicodestringprep] +http://search.cpan.org/~chartgrp/Chart: [pm_chart] +http://search.cpan.org/~chm/PDL: [pm_pdl] +http://search.cpan.org/~chocolate/Scope-Guard: [pm_scopeguard] +http://search.cpan.org/~chorny/Hook-LexWrap: [pm_hooklexwrap] +http://search.cpan.org/~chorny/MLDBM: [pm_mldbm] +http://search.cpan.org/~chorny/Smart-Comments: [pm_smartcomments] +http://search.cpan.org/~chorny/Test-Warn: [pm_testwarn] +http://search.cpan.org/~chorny/Text-Reform: [pm_txtreform] +http://search.cpan.org/~chromatic/Test-MockObject: [pm_tstmockobject] +http://search.cpan.org/~chromatic/Text-WikiFormat: [pm_textwikifmt, pm_textwikiformat] +http://search.cpan.org/~chromatic/UNIVERSAL-can: [pm_universalcan] +http://search.cpan.org/~chromatic/UNIVERSAL-isa: [pm_universalisa] +http://search.cpan.org/~cine/Lingua-Stem-Snowball-Da: [pm_linguastemsnoda] +http://search.cpan.org/~cjm/Text-Wrapper: [pm_textwrap, pm_textwrapper] +http://search.cpan.org/~clkao/Algorithm-Annotate: [pm_algorithmannotate] +http://search.cpan.org/~clkao/Data-Hierarchy: [pm_datahier] +http://search.cpan.org/~clkao/IO-Digest: [pm_iodigest] +http://search.cpan.org/~clkao/PerlIO-via-dynamic: [pm_perlioviadyn] +http://search.cpan.org/~clkao/PerlIO-via-symlink: [pm_perlioviasym] +http://search.cpan.org/~clkao/SVK: [svk] +http://search.cpan.org/~clkao/SVN-Mirror: [pm_svnmirror] +http://search.cpan.org/~cogent/Tree-DAG_Node: [pm_treedagnode] +http://search.cpan.org/~cwest/Net-SMTP-SSL: [pm_netsmtpssl] +http://search.cpan.org/~dagolden/ExtUtils-CBuilder: [pm_extutcbuilder] +http://search.cpan.org/~dagolden/ExtUtils-ParseXS: [pm_extutparsexs] +http://search.cpan.org/~dagolden/Sub-Uplevel: [pm_subuplevel] +http://search.cpan.org/~dapatrick/XML-Stream: [pm_xmlstream] +http://search.cpan.org/~davecross/Calendar-Simple: [pm_calendarsimp, pm_calendarsimple] +http://search.cpan.org/~dconway/Class-Std: [pm_classstd] +http://search.cpan.org/~dconway/Parse-RecDescent: [pm_parserecdescent] +http://search.cpan.org/~dconway/Perl6-Export: [pm_perl6export] +http://search.cpan.org/~dconway/Perl6-Export-Attrs: [pm_perl6exportattr] +http://search.cpan.org/~dconway/Perl6-Slurp: [pm_perl6slurp] +http://search.cpan.org/~dconway/Text-Autoformat: [pm_txtautofmt] +http://search.cpan.org/~ddumont/Config-Augeas: [pm_configaugeas] +http://search.cpan.org/~djerius/Expect-Simple-0.03/: [pm_expectsimp] +http://search.cpan.org/~djkernen/Mail-IMAPClient-2.2.9/: [pm_mailimapclient] +http://search.cpan.org/~dland/Crypt-SSLeay: [pm_cryptssleay] +http://search.cpan.org/~dmuey/File-Copy-Recursive: [pm_filecpyrecurs] +http://search.cpan.org/~dougw/Convert-TNEF: [pm_converttnef] +http://search.cpan.org/~dougw/Net-CIDR-Lite: [pm_netcidrlite] +http://search.cpan.org/~dparis/Crypt-Blowfish: [pm_cryptblowfish] +http://search.cpan.org/~dparis/Crypt-DES: [pm_cryptdes] +http://search.cpan.org/~dparis/Crypt-IDEA: [pm_cryptidea] +http://search.cpan.org/~drolsky/Class-Factory-Util: [pm_classfactutil] +http://search.cpan.org/~drolsky/DateTime: [pm_datetime] +http://search.cpan.org/~drolsky/DateTime-Format-Mail: [pm_datetimefmtmail] +http://search.cpan.org/~drolsky/DateTime-Format-W3CDTF: [pm_datetimefmtw3tf] +http://search.cpan.org/~drolsky/DateTime-Locale: [pm_datetimelocale] +http://search.cpan.org/~drolsky/DateTime-TimeZone: [pm_datetimetz] +http://search.cpan.org/~drolsky/Devel-StackTrace: [pm_devstacktrace] +http://search.cpan.org/~drolsky/Exception-Class: [pm_exceptcls] +http://search.cpan.org/~drolsky/File-Slurp: [pm_fileslurp] +http://search.cpan.org/~drolsky/HTML-Mason: [pm_htmlmason] +http://search.cpan.org/~drolsky/Log-Dispatch: [pm_logdispatch] +http://search.cpan.org/~drolsky/Params-Validate: [pm_paramsvalidate, pm_prmsvldt] +http://search.cpan.org/~dschwei/Parse-Syslog: [pm_parsesyslog] +http://search.cpan.org/~dskoll/IO-stringy: [pm_iostringy] +http://search.cpan.org/~dtown/Net-SNMP: [pm_netsnmp] +http://search.cpan.org/~durist/Proc-ProcessTable: [pm_proctbl] +http://search.cpan.org/~dwheeler/Pod-Simple: [pm_podsimple] +http://search.cpan.org/~dwheeler/Test-Pod: [pm_testpod] +http://search.cpan.org/~ebohlman/XML-Records: [pm_xmlrecords] +http://search.cpan.org/~edaly/Text-GenderFromName: [pm_textgendername] +http://search.cpan.org/~edavis/Sort-Versions: [pm_sortversions] +http://search.cpan.org/~eryq/Convert-BinHex: [pm_convertbinhex] +http://search.cpan.org/~eryq/MIME-tools: [pm_mimetools] +http://search.cpan.org/~esm/Net-NIS: [pm_netnis] +http://search.cpan.org/~esummers/MARC-Charset: [pm_marccharset] +http://search.cpan.org/~fdaly/Test-Deep: [pm_testdeep] +http://search.cpan.org/~fdaly/Test-Tester: [pm_testtester] +http://search.cpan.org/~ferreira/Term-Size: [pm_termsize] +http://search.cpan.org/~fimm/File-Cat: [pm_filecat] +http://search.cpan.org/~flora/ExtUtils-Depends: [pm_extutilsdepends] +http://search.cpan.org/~flora/FCGI: [pm_fcgi] +http://search.cpan.org/~flora/Module-Signature: [pm_modulesign] +http://search.cpan.org/~flora/Net-SSLeay: [pm_netssleay] +http://search.cpan.org/~gaas/Digest-HMAC: [pm_digesthmac] +http://search.cpan.org/~gaas/Digest-SHA1: [pm_digestsha1] +http://search.cpan.org/~gaas/Font-AFM: [pm_fontafm] +http://search.cpan.org/~gaas/HTML-Parser: [pm_htmlparser] +http://search.cpan.org/~gaas/MD5-2.03/: [pm_md5] +http://search.cpan.org/~gaas/MIME-Base64: [pm_mimebase64] +http://search.cpan.org/~gaas/URI: [pm_uri] +http://search.cpan.org/~gaas/Unicode-String: [pm_unicodestring] +http://search.cpan.org/~gaas/libwww-perl: [pm_libwww] +http://search.cpan.org/~gabor/Text-Format: [pm_textformat] +http://search.cpan.org/~gbarr/Authen-SASL: [pm_authensasl] +http://search.cpan.org/~gbarr/Convert-ASN1: [pm_convertasn1] +http://search.cpan.org/~gbarr/TimeDate: [pm_timedate] +http://search.cpan.org/~gbarr/perl-ldap: [pm_ldap] +http://search.cpan.org/~geoffr/Font-FreeType: [pm_fontfreetype] +http://search.cpan.org/~gmcharlt/MARC-Record: [pm_marcrecord] +http://search.cpan.org/~gmcharlt/MARC-XML: [pm_marcxml] +http://search.cpan.org/~gnustavo/JIRA-Client: [pm_jiraclient] +http://search.cpan.org/~gozer/mod_perl: [ap2_modperl, mod_perl] +http://search.cpan.org/~grantm/XML-SAX: [pm_xmlsax] +http://search.cpan.org/~grantm/XML-Simple: [pm_xmlsimple] +http://search.cpan.org/~gsar/Tie-IxHash: [pm_tieixhash] +http://search.cpan.org/~hacker/Net-XMPP: [pm_netxmpp] +http://search.cpan.org/~hayashi/Term-ReadLine-Gnu: [pm_termreadlineg] +http://search.cpan.org/~hmbrand/Text-CSV_XS: [pm_textcsvxs] +http://search.cpan.org/~horrocks/CGI-SpeedyCGI: [pm_speedycgiperl] +http://search.cpan.org/~horrocks/CGI-SpeedyCGI-2.22/: [pm_speedycgi] +http://search.cpan.org/~ianc/sdf: [pm_sdf] +http://search.cpan.org/~iguthrie/Filesys-Df: [pm_filesysdf] +http://search.cpan.org/~ilyaz/FreezeThaw: [pm_freezethaw] +http://search.cpan.org/~ilyaz/MP3-Tag: [pm_mp3tag] +http://search.cpan.org/~ingy/Spiffy: [pm_spiffy] +http://search.cpan.org/~iroberts/Crypt-OpenSSL-Bignum: [pm_cryptosslbignum] +http://search.cpan.org/~iroberts/Crypt-OpenSSL-RSA: [pm_osslrsa] +http://search.cpan.org/~iroberts/Crypt-OpenSSL-Random: [pm_osslrandom] +http://search.cpan.org/~isaac/libapreq: [pm_apachereq] +http://search.cpan.org/~ivan/DBIx-DBSchema-0.36/: [pm_dbixdbschema] +http://search.cpan.org/~ivan/Net-SSH: [pm_netssh] +http://search.cpan.org/~jaslong/Mail-DKIM: [pm_maildkim] +http://search.cpan.org/~jbaker/Apache-Session-1.6/: [pm_apachesess] +http://search.cpan.org/~jbuhacoff/CGP-CLI: [pm_cgpcli] +http://search.cpan.org/~jenda/Mail-Sender: [pm_mailsender] +http://search.cpan.org/~jesse/Cache-Simple-TimedExpiry: [pm_cachesmptimexp] +http://search.cpan.org/~jesse/Class-ReturnValue: [pm_classretval] +http://search.cpan.org/~jesse/HTTP-Server-Simple: [pm_httpsvrsimp] +http://search.cpan.org/~jesse/HTTP-Server-Simple-Mason-0.09/: [pm_httpsvrmason] +http://search.cpan.org/~jesse/Locale-Maketext-Simple: [pm_lclemktxtsimple] +http://search.cpan.org/~jesse/Module-Refresh-0.13/: [pm_modrefresh] +http://search.cpan.org/~jesse/Module-Versions-Report: [pm_modversrpt] +http://search.cpan.org/~jhi/String-Approx: [pm_stringapprox] +http://search.cpan.org/~jjore/B-Keywords: [pm_bkeywords] +http://search.cpan.org/~jjore/B-Utils: [pm_butils] +http://search.cpan.org/~jkeiser/PatchReader: [pm_patchreader] +http://search.cpan.org/~jmcnamara/OLE-Storage_Lite: [pm_olestoragelite] +http://search.cpan.org/~jmehnle/Mail-SPF: [pm_mailspf] +http://search.cpan.org/~jmehnle/Net-DNS-Resolver-Programmable: [pm_netdnsreslvprg] +http://search.cpan.org/~jmm/Heap: [pm_heap] +http://search.cpan.org/~joesuf/libapreq2: [ap2_modapreq2, libapreq2, libapreq2_devel, + pm_apreq2] +http://search.cpan.org/~joserodr/Schedule-At: [pm_scheduleat] +http://search.cpan.org/~jpeacock/version: [pm_version] +http://search.cpan.org/~jrogers/Net-Telnet: [pm_nettelnet] +http://search.cpan.org/~jstowe/TermReadKey: [pm_termreadkey] +http://search.cpan.org/~jstowe/XML-XSLT: [pm_xmlxslt] +http://search.cpan.org/~jswartz/Cache-Cache: [pm_cachecache] +http://search.cpan.org/~jswartz/Log-Any: [pm_logany] +http://search.cpan.org/~kane/Package-Constants: [pm_pkgconst] +http://search.cpan.org/~kane/Params-Check: [pm_prmscheck] +http://search.cpan.org/~kane/Term-UI: [pm_termui] +http://search.cpan.org/~kasei/Class-Accessor: [pm_clsaccessor] +http://search.cpan.org/~kgb/ExtUtils-F77: [pm_extutilsf77] +http://search.cpan.org/~khampton/XML-SemanticDiff: [pm_xmlsemdiff] +http://search.cpan.org/~kjalb/Calendar-CSA-0.8/: [pm_calendar_csa] +http://search.cpan.org/~kmacleod/Frontier-RPC: [pm_frontierrpc] +http://search.cpan.org/~kmacleod/libxml-perl: [pm_libxmlperl] +http://search.cpan.org/~knok/File-MMagic/: [pm_filemmagic] +http://search.cpan.org/~kwilliams/Class-Container: [pm_clscontainer] +http://search.cpan.org/~kwilliams/Path-Class: [pm_pathclass] +http://search.cpan.org/~kwilliams/Probe-Perl: [pm_probeperl] +http://search.cpan.org/~kwitknr/GD-Barcode: [pm_gdbarcode] +http://search.cpan.org/~larslund/PDF-Reuse: [pm_pdfreuse] +http://search.cpan.org/~larslund/PDF-Reuse-Barcode: [pm_pdfreusebarcode] +http://search.cpan.org/~lbaxter/Sys-SigAction: [pm_syssigaction] +http://search.cpan.org/~lbrocard/Test-Expect-0.30/: [pm_testexpect] +http://search.cpan.org/~lds/Crypt-CBC: [pm_cryptcbc] +http://search.cpan.org/~lds/GD: [pm_gd] +http://search.cpan.org/~lhoward/Net-Syslog: [pm_netsyslog] +http://search.cpan.org/~luismunoz/Crypt-PasswdMD5: [pm_cryptpasswdmd5] +http://search.cpan.org/~makamaka/JSON: [pm_json] +http://search.cpan.org/~makamaka/Text-CSV: [pm_textcsv] +http://search.cpan.org/~mamawe/Algorithm-CheckDigits: [pm_algorithmchkdig] +http://search.cpan.org/~manu/Net-IP: [pm_netip] +http://search.cpan.org/~markov/MIME-Types: [pm_mimetypes] +http://search.cpan.org/~markov/Mail-Box-2.069/: [pm_mailbox] +http://search.cpan.org/~markov/MailTools: [pm_mailtools] +http://search.cpan.org/~markov/Object-Realize-Later: [pm_objrealizelater] +http://search.cpan.org/~markov/User-Identity: [pm_useridentity] +http://search.cpan.org/~markstos/CGI-Application: [pm_cgiapp] +http://search.cpan.org/~markstos/CGI-Session: [pm_cgisession] +http://search.cpan.org/~maurice/Text-DoubleMetaphone: [pm_textdblmetaphone] +http://search.cpan.org/~mcewan/Text-Scraper: [pm_textscraper] +http://search.cpan.org/~mewp/DBD-Sybase: [pm_dbd_sybase_freetds, pm_dbd_sybase_ocs] +http://search.cpan.org/~mgrabnar/File-Tail: [pm_filetail] +http://search.cpan.org/~mharnisch/Unix-Syslog: [pm_unixsyslog] +http://search.cpan.org/~mhosken/Font-TTF: [pm_fontttf] +http://search.cpan.org/~miker/NetAddr-IP: [pm_netaddrip] +http://search.cpan.org/~mikewong/XML-Dumper: [pm_xmldumper] +http://search.cpan.org/~mirk/Biblio-EndnoteStyle: [pm_biblioendnotest] +http://search.cpan.org/~mirk/Net-Z3950-ZOOM: [pm_netz3950zoom] +http://search.cpan.org/~mirod/XML-Twig: [pm_xmltwig] +http://search.cpan.org/~mivkovic/Mail-Sendmail: [pm_mailsendmail] +http://search.cpan.org/~miyagawa/Log-Dispatch-Config: [pm_logdispatchconf] +http://search.cpan.org/~miyagawa/capitalization: [pm_capitalization] +http://search.cpan.org/~mjd/Text-Template: [pm_texttemplate] +http://search.cpan.org/~mkutter/SOAP-Lite: [pm_soaplite] +http://search.cpan.org/~mlehmann/Convert-UUlib: [pm_convertuulib] +http://search.cpan.org/~mlehmann/common-sense: [pm_commonsense] +http://search.cpan.org/~mlfisher/pmtools: [pmtools] +http://search.cpan.org/~mnooning/Net-Daemon-0.43/: [pm_netdaemon] +http://search.cpan.org/~mnooning/PlRPC: [pm_plrpc] +http://search.cpan.org/~mpiotr/Text-Iconv: [pm_texticonv] +http://search.cpan.org/~mrsam/Net-CIDR: [pm_netcidr] +http://search.cpan.org/~mschilli/Log-Log4perl: [pm_log4perl] +http://search.cpan.org/~mschwartz/Unicode-Map: [pm_unicodemap] +http://search.cpan.org/~mschwern/Carp-Assert: [pm_carpassert] +http://search.cpan.org/~mschwern/Test-Simple: [pm_testsimple] +http://search.cpan.org/~mschwern/UNIVERSAL-require: [pm_univrequire] +http://search.cpan.org/~msergeant/XML-Parser: [pm_xmlparser] +http://search.cpan.org/~msergeant/XML-XPath: [pm_xmlxpath] +http://search.cpan.org/~mshelor/Digest-SHA: [pm_digestsha] +http://search.cpan.org/~msisk/HTML-TableExtract: [pm_htmltableextract] +http://search.cpan.org/~muir/Net-Netmask: [pm_netnetmask] +http://search.cpan.org/~muir/Time-modules-2006.0814/: [pm_timemods] +http://search.cpan.org/~mverb/GDTextUtil: [pm_gdtextut] +http://search.cpan.org/~myself/Shout: [pm_shout] +http://search.cpan.org/~neely/Data-Serializer: [pm_dataserializer] +http://search.cpan.org/~nikip/Authen-PAM: [pm_authenpam] +http://search.cpan.org/~nkh/Data-TreeDumper: [pm_datatreedumper] +http://search.cpan.org/~nuffin/Check-ISA: [pm_checkisa] +http://search.cpan.org/~nwclark/PerlIO-gzip: [pm_perliogzip] +http://search.cpan.org/~nwetters/IP-Country: [pm_ipcountry] +http://search.cpan.org/~oevans/RADIUS-UserFile: [pm_radiususerfile] +http://search.cpan.org/~olaf/Net-DNS: [pm_netdns] +http://search.cpan.org/~ovid/HTML-TokeParser-Simple: [pm_htmktokeparser] +http://search.cpan.org/~ovid/Sub-Override: [pm_suboverride] +http://search.cpan.org/~pajas/XML-LibXML: [pm_xmllibxml, pm_xmllibxmlcom] +http://search.cpan.org/~pajas/XML-LibXSLT: [pm_xmllibxslt] +http://search.cpan.org/~perigrin/XML-NamespaceSupport: [pm_xmlnssupp] +http://search.cpan.org/~petdance/: [ack] +http://search.cpan.org/~petdance/Carp-Assert-More: [pm_carpassertmore] +http://search.cpan.org/~petdance/File-Next: [pm_filenext] +http://search.cpan.org/~petdance/HTML-Tagset: [pm_htmltagset] +http://search.cpan.org/~petdance/Module-Starter: [pm_modulestarter] +http://search.cpan.org/~petdance/Test-Pod-Coverage: [pm_testpodcoverage] +http://search.cpan.org/~petdance/Test-WWW-Mechanize: [pm_testwwwmech] +http://search.cpan.org/~petdance/WWW-Mechanize: [pm_wwwmechanize] +http://search.cpan.org/~petek/HTML-Tree: [pm_htmltree] +http://search.cpan.org/~philipp/Net-Patricia: [pm_netpatricia] +http://search.cpan.org/~phred/Apache-Test-1.30/: [pm_apachetst] +http://search.cpan.org/~pinyan/File-chmod: [pm_filechmod] +http://search.cpan.org/~pjcj/Devel-Cover: [pm_develcover] +http://search.cpan.org/~pmqs/BerkeleyDB: [pm_berkeleydb] +http://search.cpan.org/~pmqs/Compress-Raw-Bzip2: [pm_compressrawbz2] +http://search.cpan.org/~pmqs/Compress-Raw-Zlib: [pm_compressrawzlib] +http://search.cpan.org/~pmqs/Compress-Zlib: [pm_compresszlib] +http://search.cpan.org/~pmqs/IO-Compress: [pm_iocompress] +http://search.cpan.org/~pmqs/IO-Compress-Base: [pm_iocompressbase] +http://search.cpan.org/~pmqs/IO-Compress-Zlib: [pm_iocompresszlib] +http://search.cpan.org/~podmaster/HTML-Scrubber: [pm_htmlscrubber] +http://search.cpan.org/~podmaster/XML-TokeParser: [pm_xmltokeparser] +http://search.cpan.org/~pryan/Period-1.20/: [pm_timeperiod] +http://search.cpan.org/~pvandry/gettext: [pm_localegettext] +http://search.cpan.org/~pythian/DBD-Oracle: [pm_dbdoracle, pm_dbdoraexplain] +http://search.cpan.org/~rbow/Date-ICal: [pm_dateical] +http://search.cpan.org/~rbow/Date-Leapyear: [pm_dateleapyear] +http://search.cpan.org/~rbs/IPC-Run: [pm_ipcrun] +http://search.cpan.org/~rcaputo/Lexical-Persistence: [pm_lexicalpersist] +http://search.cpan.org/~rcaputo/POE: [pm_poe] +http://search.cpan.org/~rcaputo/POE-Test-Loops: [pm_poetestloops] +http://search.cpan.org/~rclamp/Class-Accessor-Chained-0.01/: [pm_clsaccessorchnd] +http://search.cpan.org/~rclamp/Devel-Caller: [pm_develcaller] +http://search.cpan.org/~rclamp/Devel-LexAlias: [pm_devellexalias] +http://search.cpan.org/~rclamp/File-Find-Rule-0.30/: [pm_filefindrule] +http://search.cpan.org/~rclamp/Number-Compare-0.01/: [pm_nbrcompare] +http://search.cpan.org/~rclamp/Pod-Coverage: [pm_podcoverage] +http://search.cpan.org/~rclamp/Text-Glob: [pm_textglob] +http://search.cpan.org/~rclamp/Text-vFile-asData: [pm_textvfileasdata] +http://search.cpan.org/~rdf/Clone: [pm_clone] +http://search.cpan.org/~reatmon/Net-Jabber: [pm_netjabber] +http://search.cpan.org/~rgarcia/Test-LongString-0.11/: [pm_testlongstr] +http://search.cpan.org/~rgiersig/Expect-1.21/: [pm_expect] +http://search.cpan.org/~rgiersig/IO-Tty: [pm_iotty] +http://search.cpan.org/~rhandom/Net-Server: [pm_netserver] +http://search.cpan.org/~rjbs/Data-OptList: [pm_dataoptlist] +http://search.cpan.org/~rjbs/Data-UUID: [pm_datauuid] +http://search.cpan.org/~rjbs/Email-Date-Format: [pm_emaildateformat] +http://search.cpan.org/~rjbs/Email-Simple: [pm_emailsimple] +http://search.cpan.org/~rjbs/IPC-Run3: [pm_ipcrun3] +http://search.cpan.org/~rjbs/MIME-Lite: [pm_mimelite] +http://search.cpan.org/~rjbs/Sub-Exporter: [pm_subexporter] +http://search.cpan.org/~rjbs/Sub-Install: [pm_subinstall] +http://search.cpan.org/~rjray/RPC-XML: [pm_rpcxml] +http://search.cpan.org/~rkitover/Net-SSH2: [pm_netssh2] +http://search.cpan.org/~rkobes/ExtUtils-Manifest: [pm_extutilsmft] +http://search.cpan.org/~robin/PadWalker: [pm_padwalker] +http://search.cpan.org/~robin/Want: [pm_want] +http://search.cpan.org/~roode/Readonly: [pm_readonly] +http://search.cpan.org/~rrwo/Graphics-ColorNames: [pm_graphicscolornm] +http://search.cpan.org/~rurban/B-Generate: [pm_bgenerate] +http://search.cpan.org/~ruz/CSS-Squish-0.07/: [pm_csssquish] +http://search.cpan.org/~ruz/DBIx-SearchBuilder-1.51/: [pm_dbixsrchbuilder] +http://search.cpan.org/~ruz/Text-Quoted: [pm_txtquoted] +http://search.cpan.org/~samtregar/HTML-Template: [pm_htmltemplate] +http://search.cpan.org/~saper/Net-Pcap: [pm_netpcap] +http://search.cpan.org/~sbeck/Date-Manip: [pm_datemanip] +http://search.cpan.org/~sburke/HTML-Format: [pm_htmlfmt, pm_htmlformat] +http://search.cpan.org/~sburke/Sort-Naturally: [pm_sortnaturally] +http://search.cpan.org/~scott/Sys-Hostname-Long: [pm_syshostnamelong] +http://search.cpan.org/~sdp/Lingua-Stem-Fr: [pm_linguastemfr] +http://search.cpan.org/~semantico/Test-XML: [pm_testxml] +http://search.cpan.org/~shancock/Perl-Tidy: [perltidy] +http://search.cpan.org/~shlomif/Error: [pm_error] +http://search.cpan.org/~shlomif/IO-Socket-INET6: [pm_iosocketinet6] +http://search.cpan.org/~shlomif/XML-RSS: [pm_xmlrss] +http://search.cpan.org/~sifukurt/Crypt-RC5: [pm_cryptrc5] +http://search.cpan.org/~simonw/Module-Pluggable: [pm_moduleplug] +http://search.cpan.org/~sisyphus/Inline: [pm_inline] +http://search.cpan.org/~sjburges/Gimp-2.2pre1/: [pm_gimp] +http://search.cpan.org/~smccam/X11-Protocol: [pm_x11protocol] +http://search.cpan.org/~smueller/AutoXS-Header: [pm_autoxsheader] +http://search.cpan.org/~smueller/Class-XSAccessor: [pm_classxsaccessor] +http://search.cpan.org/~smueller/PAR-Dist: [pm_pardist] +http://search.cpan.org/~snowhare/Lingua-Stem: [pm_linguastem] +http://search.cpan.org/~soenke/String-CRC32: [pm_stringcrc32] +http://search.cpan.org/~spidb/Net-ext: [pm_netinet] +http://search.cpan.org/~sprout/CSS-DOM: [pm_cssdom] +http://search.cpan.org/~sprout/Sub-Delete: [pm_subdelete] +http://search.cpan.org/~sprout/Tie-Util: [pm_tieutil] +http://search.cpan.org/~sprout/constant-lexical: [pm_constantlexical] +http://search.cpan.org/~srezic/Tk: [pm_tk] +http://search.cpan.org/~stbey/Bit-Vector: [pm_bitvec] +http://search.cpan.org/~stbey/Carp-Clan: [pm_carpclan] +http://search.cpan.org/~stbey/Date-Calc: [pm_datecalc] +http://search.cpan.org/~stevan/Tree-Simple: [pm_treesimple] +http://search.cpan.org/~strzelec/Passwd-Unix: [pm_passwdunix] +http://search.cpan.org/~sukria/perlconsole: [perlconsole] +http://search.cpan.org/~sullr/IO-Socket-SSL: [pm_iosocketssl] +http://search.cpan.org/~szbalint/WWW-Curl: [pm_wwwcurl] +http://search.cpan.org/~tels/Devel-Size: [pm_develsize] +http://search.cpan.org/~timb/DBI: [pm_dbi] +http://search.cpan.org/~tjmather/XML-DOM: [pm_xmldom] +http://search.cpan.org/~tjmather/XML-RegExp: [pm_xmlregexp] +http://search.cpan.org/~tlinden/Config-General: [pm_configgeneral] +http://search.cpan.org/~tmtm/Class-Data-Inheritable-0.08/: [pm_clsdtainherit] +http://search.cpan.org/~tomhughes/IO-Zlib: [pm_iozlib] +http://search.cpan.org/~tomi/Template-TAL: [pm_templatetal] +http://search.cpan.org/~tsch/Cairo: [pm_cairo] +http://search.cpan.org/~tsch/ExtUtils-PkgConfig: [pm_extutpkgconf] +http://search.cpan.org/~tsch/Glib: [pm_glib] +http://search.cpan.org/~tsch/Gtk2: [pm_gtk2] +http://search.cpan.org/~tsch/Pango: [pm_pango] +http://search.cpan.org/~turnstep/DBD-Pg: [pm_dbdpg] +http://search.cpan.org/~tyemq/Algorithm-Diff: [pm_algorithmdiff] +http://search.cpan.org/~ulpfr/Text-German: [pm_textgerman] +http://search.cpan.org/~umemoto/Socket6: [pm_socket6] +http://search.cpan.org/~vipul/Class-Loader: [pm_classloader] +http://search.cpan.org/~vipul/Digest-Nilsimsa: [pm_digestnilsimsa] +http://search.cpan.org/~viy/HTML-Template-Pro: [pm_htmltemplatepro] +http://search.cpan.org/~vparseval/Event-Lib: [pm_eventlib] +http://search.cpan.org/~vparseval/List-MoreUtils: [pm_listmoreutils] +http://search.cpan.org/~vparseval/Unix-Statgrab: [pm_unixstatgrab] +http://search.cpan.org/~wadg/GD-Graph3d: [pm_gdgraph3d] +http://search.cpan.org/~wonko/CGI-Application-Dispatch: [pm_cgiappdisp] +http://search.cpan.org/~worrall/Net-Analysis: [pm_netanalysis] +http://search.cpan.org/~wrw/Barcode-Code128: [pm_barcodecode128] +http://search.cpan.org/~wrw/Number-Format: [pm_numberformat] +http://search.cpan.org/~xern/Lingua-PT-Stemmer: [pm_linguaptstemmer] +http://search.cpan.org/~xmath/Sub-Name: [pm_subname] +http://search.cpan.org/~xsawyerx/Module-Version: [pm_module_version] +http://search.cpan.org/~yanick/NetPacket: [pm_netpacket] +http://search.cpan.org/~zenspider/Struct-Compare: [pm_structcompare] +http://selenic.com/mercurial/release/: [mercurial] +http://sf.net/projects/lsdvd: [lsdvd] +http://silcnet.org: [silctoolkit] +http://sites.google.com/a/forestent.com/projects/log4sh: [log4sh] +http://smarteiffel.loria.fr/: [smarteiffel] +http://smartmontools.sourceforge.net/: [smartmontools] +http://softastur.org/Aspell: [aspellast] +http://software.schmorp.de/pkg/libev.html: [libev] +http://software.schmorp.de/pkg/rxvt-unicode.html: [urxvt] +http://somethingaboutorange.com/mrl/projects/nose/: [py_nose] +http://sourceforge.net/projects/aspell-gu/: [aspellgu] +http://sourceforge.net/projects/blackboxwm: [bbkeys, bbpager, blackbox] +http://sourceforge.net/projects/blt/: [blt] +http://sourceforge.net/projects/libunicode: [libunicode] +http://sourceforge.net/projects/libxmlplusplus: [libxml++] +http://sourceforge.net/projects/mod-gzip/: [mod_gzip] +http://sourceforge.net/projects/modgssapache: [libfbopenssl] +http://sourceforge.net/projects/myspellkurdish/: [aspellku] +http://sourceforge.net/projects/parchive/: [par2cmdline] +http://sourceforge.net/projects/pdftohtml: [pdftohtml] +http://sourceforge.net/projects/rxvt/: [rxvt] +http://sourceforge.net/projects/tnef: [tnef] +http://sourceforge.net/projects/turkce: [aspelltr] +http://sourceware.org/libffi/: [libffi] +http://sox.sourceforge.net/: [libsox1, libsox_devel, sox] +http://spamassassin.apache.org/: [spamassassin] +http://spruce.sourceforge.net/gmime/: [gmime] +http://sqlite.org/: [sqlite3, sqlite3_devel, sqlite3_rt] +http://squidguard.org/: [squidguard] +http://srm.sourceforge.net/: [srm] +http://srpski.org/aspell/: [aspellsr] +http://subtitleripper.sourceforge.net: [subtitleripper] +http://subversion.apache.org/: [ap2_subversion, javasvn, pm_subversion, pythonsvn, + rbsvn, subversion, subversion_contrib, subversion_devel, subversion_tools] +http://sudosh2.sf.net: [sudosh2] +http://supybot.com/: [supybot] +http://surfnet.dl.sourceforge.net/sourceforge/nagiosplug/: [nagios_plugins] +http://sv.speling.org/: [aspellsv] +http://svn.blastwave.org/browser/csw/trunk/utils/pkg_update_watch/files: [pkg_update_watch] +http://swissnet.ai.mit.edu/ftpdir/scm/: [slib] +http://synce.sourceforge.net/: [synce] +http://sysoev.ru/nginx/: [nginx] +http://tango.freedesktop.org/releases/: [icon_naming_utils] +http://telugu.sarovar.org/wiki/index.php/Wordlist%20and%20Dictionaries: [aspellte] +http://tidy.sourceforge.net/src/: [htmltidy] +http://timidity.sourceforge.net/: [timidity] +http://tinf2.vub.ac.be/~dvermeir/software/dv/nl-aspell/index.html: [aspellnl] +http://tinyca.sm-zone.net/: [tinyca2] +http://tiswww.case.edu/php/chet/bash/bashtop.html: [bash] +http://tiswww.case.edu/php/chet/readline/rltop.html: [readline] +http://tkdiff.sourceforge.net/: [tkdiff] +http://tmrc.mit.edu/mirror/twisted/Twisted/10.1/: [py_twisted, twisted] +http://tmux.sourceforge.net: [tmux] +http://tn5250.sourceforge.net: [tn5250] +http://tofrodos.sourceforge.net/download/: [tofrodos] +http://toxygen.net/libgadu/: [gadu] +http://trac.edgewall.org/wiki/TracDownload: [trac] +http://tug.ctan.org/tex-archive/macros/generic/dirtree/: [tex_dirtree] +http://tug.ctan.org/tex-archive/macros/latex/contrib/rcsinfo/: [tex_rcsinfo] +http://tug.ctan.org/tex-archive/macros/latex/contrib/svninfo/: [tex_svninfo] +http://tukaani.org/xz/: [lzma, xz] +http://tuxkart.sourceforge.net: [tuxkart] +http://tweedle-dee.org/svn/emacs.d/site-lisp/: [yaml_mode] +http://umn.dl.sourceforge.net/sourceforge/netpbm/: [netpbm] +http://utopia.knoware.nl/~hlub/uck/rlwrap/: [rlwrap] +http://w3m.sourceforge.net/: [w3m] +http://weather.ou.edu/~apw/projects/stress/: [stress] +http://web.mit.edu/kerberos/www/: [krb5_admin_server, krb5_doc, krb5_kdc, krb5_lib, + krb5_lib_dev, krb5_user] +http://web.taranis.org/shmux/: [shmux] +http://wgetpaste.zlin.dk/: [wgetpaste] +http://wiki.gnuarch.org/moin.cgi/tla_2dtools: [tla_tools] +http://wordlist.sourceforge.net/: [aspellen] +http://wput.sourceforge.net: [wput] +http://wvware.sourceforge.net: [libwmf, libwmf_devel, libwmf_doc, libwmf_gtk, wmf, + wmf_fonts] +http://wvware.sourceforge.net/: [wv2] +http://www.4schmidts.com/memconf.html: [memconf] +http://www.68k.org/~michael/audiofile/: [audiofile] +http://www.abisource.com/projects/enchant/: [enchant] +http://www.achievo.org/: [achievo] +http://www.acme.com/software/thttpd/: [thttpd] +http://www.acpica.org/: [iasl] +http://www.adel.nursat.kz/apg/: [apg] +http://www.amanda.org/: [amanda] +http://www.analog.cx/: [analog] +http://www.antlr.org/download/Python/: [py_antlr] +http://www.apache.org/dist/httpcomponents/commons-httpclient/binary/: [commons_httpcl_doc, + commons_httpclient] +http://www.apache.org/dist/tomcat/tomcat-connectors/jk/source/jk-1.2.25/: [ap2_mod_jk] +http://www.apsis.ch/pound/: [pound, pound2] +http://www.arjsoft.com/files.htm: [unarj] +http://www.armagetronad.net: [armagetron] +http://www.arts-project.org/: [arts] +http://www.audiocoding.com/: [faad2, libfaac] +http://www.bacula.org/: [bacula, bacula_client, bacula_docs, bacula_gnome] +http://www.balabit.com/downloads/files/eventlog/0.2/: [eventlog] +http://www.balabit.com/network-security/syslog-ng/opensource-logging-system/: [syslog_ng] +http://www.bengalinux.org/downloads: [aspellbn] +http://www.bestpractical.com/rt/: [rt] +http://www.bitrot.de/plan.html: [plan] +http://www.bittorrent.com/: [bittorrent] +http://www.bitwizard.nl/mtr/: [mtr, mtr_x11] +http://www.bolthole.com/filter/: [filter] +http://www.bolthole.com/kdrill/: [kdrill] +http://www.bolthole.com/solaris/drivers/: [jsdrv] +http://www.bolthole.com/solaris/pkg-get.html: [pkg_get] +http://www.bolthole.com/solaris/thirdparty/pkgzip.html: [pkgzip] +http://www.boost.org/: [boost_devel, boost_jam, boost_rt] +http://www.boutell.com/fax2png/: [fax2png] +http://www.boutell.com/rinetd/: [rinetd] +http://www.broffice.org/verortografico: [aspellptbr] +http://www.bzip.org/: [bzip2] +http://www.cabextract.org.uk: [cabextract] +http://www.cairographics.org: [pycairo] +http://www.cairographics.org/releases/: [cairomm, libcairo, libcairo_devel, libcairo_doc, + pixman] +http://www.caliban.org/files/bash/: [bash_completion] +http://www.catb.org/~esr/gif2png/: [gif2png] +http://www.catb.org/~esr/hexdump/: [hexdump] +http://www.cdecl.org/: [cdecl] +http://www.cfengine.org/tarballs/: [cfengine, cfengine_doc] +http://www.cheetahtemplate.org/: [py_cheetah] +http://www.chipx86.com/blog/tag/libsexy/: [libsexy, libsexy_devel] +http://www.circlemud.org/pub/jelson/tcpflow/: [tcpflow] +http://www.cl.cam.ac.uk/~mgk25/jbigkit/: [jbigkit] +http://www.clamav.net: [clamav, libclam6, libclam6_devel] +http://www.claws-mail.org/: [claws_mail, claws_mail_devel, claws_themes, sylpheed, + sylpheed_iconset] +http://www.claws-mail.org/plugins.php?section=downloads/: [claws_htmlviewer, claws_pdfviewer] +http://www.clearsilver.net/downloads/: [pyclearsilver] +http://www.clearskyinstitute.com/xephem/: [xephem] +http://www.clex.sk/: [clex] +http://www.cobite.com/cvsps/: [cvsps] +http://www.columbia.edu/kermit/gkermit.html: [gkermit] +http://www.conserver.com/: [conserver] +http://www.corpit.ru/mjt/rbldnsd/: [rbldnsd] +http://www.courier-mta.org/authlib/: [courier_auth] +http://www.courier-mta.org/imap/: [courier_imap] +http://www.courier-mta.org/maildrop/: [maildrop] +http://www.courier-mta.org/sqwebmail/: [sqwebmail] +http://www.courier-mta.org/sysconftool/: [sysconftool] +http://www.cpan.org/src: [perl, perldoc] +http://www.cronolog.org/: [cronolog] +http://www.crummy.com/software/BeautifulSoup/download/: [beautifulsoup] +http://www.cryptopp.com/: [cryptopp] +http://www.cs.arizona.edu/icon: [icon] +http://www.cs.indiana.edu/~kinzler/xtitle/: [xtitle] +http://www.cs.indiana.edu/~kinzler/z/: [z] +http://www.cs.purdue.edu/homes/trinkle/RCS/: [rcs] +http://www.cs.uit.no/~daniels/PingTunnel/: [ptunnel] +http://www.cs.wisc.edu/~ghost/doc/pstotext.htm: [pstotext] +http://www.cs.wisc.edu/~ghost/gsview/: [gsview] +http://www.cs.wisc.edu/~ghost/gsview/epstool.htm: [epstool] +http://www.cse.ohio-state.edu/~gurari/TeX4ht/: [tex4ht, tex4ht_common] +http://www.cups.org/: [cups, cups_devel, cupsclient, cupsd, cupsdev, cupsdoc, libcups, + libcups2, libcupscgi1, libcupsdriver1, libcupsimage2, libcupsmime1, libcupsppdc1] +http://www.cypherpunks.ca/otr/: [otr, otrdevel, pidginotr] +http://www.daa.com.au/~james/software/pygtk/: [gnome_python] +http://www.danga.com/memcached/: [memcached] +http://www.darwinsys.com/file/: [gfile, libmagic, libmagic1, libmagic_data, libmagic_dev, + py_libmagic] +http://www.datsi.fi.upm.es/~coes/: [aspelles] +http://www.dest-unreach.org/socat/: [socat] +http://www.developer.thamizha.com/spellchecker/: [aspellta] +http://www.dict.org/: [dict] +http://www.dillo.org/: [dillo] +http://www.dirvish.org/: [dirvish] +http://www.ditzionariu.org/: [aspellsc] +http://www.djangoproject.com/: [py_django] +http://www.dotproject.net/: [dotproject] +http://www.dtek.chalmers.se/groups/dvd/: [ogle] +http://www.dtek.chalmers.se/groups/dvd/dist/: [oglegui] +http://www.dwheeler.com/sloccount/: [sloccount] +http://www.ece.uvic.ca/~mdadams/jasper/: [jasper, jasperdocs] +http://www.eclipse.org/: [eclipse, eclipsecmn, swtlibs] +http://www.egenix.com/products/python/mxBase/: [pymxbase] +http://www.enlightenment.org/: [enlightenment, fnlib] +http://www.erlang.org/: [erlang, erlang_devel, erlang_doc] +http://www.esperanto.mv.ru/Download/ispell/eo-spell.tgz: [aspelleo] +http://www.etpan.org/: [libetpan] +http://www.eudora.com/qpopper: [qpopper] +http://www.ex-parrot.com/~chris/driftnet/: [driftnet] +http://www.ex-parrot.com/~pdw/iftop/download/: [iftop] +http://www.exmh.org/: [exmh] +http://www.fastcgi.com/dist/: [ap2_modfastcgi] +http://www.fastcoder.net/~thumper/software/sysadmin/chkconfig/: [chkconfig] +http://www.fftw.org/: [fftw] +http://www.fifthplanet.net/goggles.html: [goggles] +http://www.figlet.org: [figlet] +http://www.flaterco.com/xtide/: [xtide, xtideh, xtidew] +http://www.flightgear.org: [flightgear, flightgear_base] +http://www.fltk.org/: [fltk] +http://www.fodder.org/cksfv/: [cksfv] +http://www.fontconfig.org/release/: [fontconfig] +http://www.fox-toolkit.org/ftp/: [fox, foxrt] +http://www.fping.com/: [fping] +http://www.freedesktop.org/wiki/Software/DBusBindings: [dbus_python] +http://www.freedesktop.org/wiki/Software/startup-notification: [startup_notif] +http://www.freedesktop.org/wiki/Software_2fdesktop_2dfile_2dutils: [desktop_file_utils] +http://www.freeradius.org/: [freeradius] +http://www.freetype.org/: [freetype, freetype2] +http://www.fribidi.org/: [fribidi] +http://www.frodol.dds.nl/getopt.html: [ggetopt] +http://www.funtoo.org/archive/keychain/: [keychain] +http://www.fwbuilder.org/: [fwbuilder, libfwbuilder] +http://www.gegl.org/: [libgegl] +http://www.gentoo.com/di/: [di] +http://www.geocities.jp/kosako3/oniguruma/: [oniguruma] +http://www.gftp.org/: [gftp] +http://www.ghostscript.com/: [ghostscript, gsfonts] +http://www.gimp.org: [gimp_template] +http://www.gimp.org/: [gimp, gimp_extras, gimp_help, gimp_i18n, gimp_minimal, gimplibs, + gimplibs_doc] +http://www.gnetlibrary.org/: [libgnet, libgnet2, libgnet2_doc, libgnet2_rt] +http://www.gnome.org: [atspi, gnome, gnome2userdocs, gnome_dtlogin, gnome_minimal, + gnomebackgrounds, gnomespeech, gnomevfs2, gnomevfs2mon, libgnomecups, libgnomeprint, + libwnck, metacity, vte] +http://www.gnome.org/: [gedit, glib, gnome_theme_extras, gnome_themes, gtk_engines, + libbonobo2, libbonoboui, libglade2, libgnome, libgnomecanvas, libgsf] +http://www.gnome.org/projects/evince/: [evince] +http://www.gnome.org/projects/evolution: [evolution, evolution_webcal] +http://www.gnome.org/projects/gnumeric/: [gnumeric] +http://www.gnome.org/projects/totem: [totem] +http://www.gnomepro.com/tsclient/: [tsclient] +http://www.gnu.org: [dejagnu] +http://www.gnu.org/software/autoconf/: [autoconf] +http://www.gnu.org/software/autogen/: [autogen, autogen_doc, autogen_rt] +http://www.gnu.org/software/automake/: [automake] +http://www.gnu.org/software/bc: [gbc] +http://www.gnu.org/software/bison/: [bison] +http://www.gnu.org/software/coreutils: [coreutils] +http://www.gnu.org/software/cpio/: [gcpio] +http://www.gnu.org/software/ddd: [ddd] +http://www.gnu.org/software/ddrescue: [ddrescue] +http://www.gnu.org/software/diffutils/: [diffutils] +http://www.gnu.org/software/emacs/: [emacs, emacs_bin_common, emacs_common, emacs_el, + emacs_gtk, emacs_nox] +http://www.gnu.org/software/findutils/: [findutils] +http://www.gnu.org/software/gdb/: [gdb] +http://www.gnu.org/software/gdbm: [gdbm, libgdbm3, libgdbm_dev] +http://www.gnu.org/software/gengetopt/: [gengetopt] +http://www.gnu.org/software/gnu-arch/: [tla] +http://www.gnu.org/software/gnutls/: [gnutls, gnutls_devel, libtasn1, libtasn1_3, + libtasn1_devel] +http://www.gnu.org/software/groff/groff.html: [groff] +http://www.gnu.org/software/gsasl: [gsasl, libgsasl, libgsasl7, libgsasl_devel] +http://www.gnu.org/software/gsl/: [gsl, gsl_doc, gsl_rt] +http://www.gnu.org/software/guile: [guile, guilelib12] +http://www.gnu.org/software/gv/: [gv] +http://www.gnu.org/software/help2man: [help2man] +http://www.gnu.org/software/libidn/: [libidn] +http://www.gnu.org/software/libsigsegv/: [libsigsegv, libsigsegv0, libsigsegv2, libsigsegv_devel] +http://www.gnu.org/software/libtool/: [libltdl3, libltdl7, libtool, libtool_rt] +http://www.gnu.org/software/m4/: [gm4] +http://www.gnu.org/software/make/: [gmake] +http://www.gnu.org/software/mtools: [mtools] +http://www.gnu.org/software/ncurses/ncurses.html: [ncurses, terminfo] +http://www.gnu.org/software/ocrad/: [ocrad] +http://www.gnu.org/software/osip/osip.html: [libosip2] +http://www.gnu.org/software/parallel/: [parallel] +http://www.gnu.org/software/plotutils/: [plotutil, plotutil_devel, plotutil_doc, plotutil_rt] +http://www.gnu.org/software/pth/: [pth] +http://www.gnu.org/software/screen/: [screen] +http://www.gnu.org/software/sharutils/: [sharutils] +http://www.gnu.org/software/tar/: [gtar] +http://www.gnu.org/software/tetum/dictionaries/spellcheckers.html: [aspelltet] +http://www.gnu.org/software/texinfo/: [texinfo] +http://www.gnu.org/software/wdiff/: [wdiff] +http://www.gnu.org/software/xorriso: [xorriso] +http://www.gnucash.org/pub/g-wrap/source/: [gwrap] +http://www.gnucash.org/pub/gnucash/sources/stable/: [gnucash, gnucashcommon, gnucashdoc] +http://www.gnupg.org/: [gnupg, gnupg2, gnupg_agent, pinentry] +http://www.gnupg.org/download/: [libassuan, libgpg_error] +http://www.gnupg.org/related_software/gpgme/: [gpgme] +http://www.gnupg.org/related_software/libksba/: [libksba] +http://www.gnupg.org/related_software/libraries.en.html: [libgcrypt] +http://www.gnuplot.info/: [gnuplot] +http://www.gnus.org/dist/: [oortgnus] +http://www.gphoto.org/: [gphoto2, libgphoto2] +http://www.graphicsmagick.org/: [graphicsmagick] +http://www.graphviz.org/pub/graphviz/stable/SOURCES/: [graphviz, graphviz2, graphvizdevel, + graphvizdoc, graphvizgd, graphvizgraphs, graphvizguile, graphvizperl, graphvizpython, + graphvizsharp, graphviztcl] +http://www.grassouille.org/code/w9wm.en.html: [w9wm, w9wm_dtlogin] +http://www.greenwoodsoftware.com/less/: [less] +http://www.gtk.org: [gtk] +http://www.gtk.org/: [gtk2, gtk2_devel, gtk2_doc] +http://www.gtk.org/~otaylor/kanjipad/: [kanjipad] +http://www.haible.de/bruno/gnu: [ffcall] +http://www.harding.motd.ca/autossh/: [autossh] +http://www.haskell.org/hugs/: [hugs] +http://www.hdfgroup.org/HDF5/: [hdf5, hdf5_rt] +http://www.hebffinia.com/geiriadur/: [aspellcy] +http://www.heptargon.de/: [gl117] +http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/: [libgc] +http://www.htdig.org/: [htdig] +http://www.htmldoc.org: [htmldoc, htmldoc_common] +http://www.hypermail.org/: [hypermail] +http://www.i-scream.org/libstatgrab/: [libstatgrab] +http://www.ibiblio.org/mc/: [mc] +http://www.ibiblio.org/pub/mirrors/apache/httpd/modpython/: [ap2_modpython] +http://www.ibiblio.org/pub/mirrors/gnu/ftp/non-gnu/flex/: [flex] +http://www.ibr.cs.tu-bs.de/projects/libsmi/: [libsmi, libsmi_mibs] +http://www.ibr.cs.tu-bs.de/projects/scotty/: [scotty] +http://www.icculus.org/quake2/: [quake2] +http://www.icecast.org/: [icecast] +http://www.ignavus.net/software.html: [xosd] +http://www.ijg.org/: [jpeg] +http://www.ijs.si/software/amavisd/: [amavisd_new] +http://www.imagemagick.org: [imagemagick] +http://www.imapproxy.org/downloads/: [imapproxy] +http://www.imendio.com/projects/planner: [planner, plannerdoc] +http://www.indexdata.com/zebra: [idzebra] +http://www.inet.no/dante/: [dante, libsocks] +http://www.inetmsg.com/pub/: [clamavsigs] +http://www.info-zip.org/UnZip.html: [unzip] +http://www.info-zip.org/pub/infozip/Zip.html: [zip] +http://www.inlab.de/balance.html: [balance] +http://www.insecure.org/nmap/: [nmap] +http://www.iozone.org: [iozone] +http://www.irssi.org/: [irssi] +http://www.isc.org/software/bind: [bind, bind_chroot, bind_devel, bind_utils, libbind] +http://www.isc.org/sw/IRRToolSet/: [irrtoolset] +http://www.ivarch.com/programs/pv.shtml: [pv] +http://www.ivrix.org.il/projects/spell-checker/: [aspellhe] +http://www.ivtools.org/: [ivtools, ivtools_doc] +http://www.j3e.de/linux/convmv/: [convmv] +http://www.janabhaaratii.org.in: [aspellmr] +http://www.jasspa.com: [jasspame] +http://www.jboss.org: [jboss3, jboss4] +http://www.jedrea.com/chmlib/: [chmlib] +http://www.jedsoft.org/: [jed] +http://www.jfc.org.uk/software/lwm.html: [lwm] +http://www.jmknoble.net/WindowMaker/wmclock/: [wmclock] +http://www.jmknoble.net/software/x11-ssh-askpass/: [x11_ssh_askpass] +http://www.jpilot.org/: [jpilot] +http://www.jwz.org/xscreensaver/download.html: [xscreensaver] +http://www.jython.org/: [jython] +http://www.kde.org: [arts_gcc, kde_gcc, kde_gcc_dtlogin, kdeaccess_gcc, kdeaddons_gcc, + kdeadmin_gcc, kdeartwork_gcc, kdebase_gcc, kdeedu_gcc, kdegames_gcc, kdegraphics_gcc, + kdelibs_gcc, kdemultimedia_gcc, kdenetwork_gcc, kdetoys_gcc, kdeutils_gcc, quanta] +http://www.kde.org/: [kdesdk, kdesdkcommon, kdevelop, kdevelopcommon] +http://www.kernel.org/pub/linux/utils/util-linux/: [column] +http://www.kill-9.org/: [mbrowse] +http://www.koffice.org: [koffice_gcc, koffice_i18n] +http://www.koffice.org/addons: [koffice_addons] +http://www.kokkonen.net/tjko/projects.html: [jpeginfo, jpegoptim] +http://www.krasu.ru/soft/chuchelo/: [d4x] +http://www.kurnik.org/dictionary/: [aspellpl] +http://www.lcdf.org/gifsicle/: [gifsicle] +http://www.lcdf.org/xmahjongg/: [xmahjongg] +http://www.lesswatts.org/patches/linux_acpi/: [acpidump] +http://www.libgd.org/releases/: [gd] +http://www.libming.org/: [libming, libming_devel, libming_rt] +http://www.libmng.com/: [libmng] +http://www.libpng.org/pub/png/libpng.html: [png] +http://www.libra-aries-books.co.uk/software/rc: [rc] +http://www.libsdl.org/: [libsdl, libsdl_devel] +http://www.libsdl.org/projects/SDL_image/release/: [sdlimage] +http://www.libsdl.org/projects/SDL_mixer/release/: [sdlmixer] +http://www.libsdl.org/projects/SDL_net/release/: [sdlnet] +http://www.libsdl.org/projects/SDL_ttf/release/: [sdlttf] +http://www.libspf2.org: [libspf2] +http://www.libssh2.org: [libssh2, libssh2_devel] +http://www.lichteblau.com/ldapvi/: [ldapvi] +http://www.lighttpd.net/: [lighttpd] +http://www.lilotux.net/~mikael/mcabber/: [mcabber] +http://www.linux.it/~md/software/: [gwhois] +http://www.linux.org/apps/AppId_5192.html: [wmmail] +http://www.linuxprinting.org/foomatic.html: [foomatic_filters] +http://www.lis.inpg.fr/realise_au_lis/kicad: [kicad, kicadcommon] +http://www.littlecms.com: [lcms, lcms_devel, lcms_rt, py_lcms] +http://www.logilab.org/project/logilab-astng: [py_logilab_astng] +http://www.logilab.org/project/logilab-common: [py_logilab_common] +http://www.loudmouth-project.org: [loudmouth] +http://www.lri.fr/~filliatr/bibtex2html/: [bibtex2html] +http://www.lua.org/ftp/: [lua] +http://www.lunabase.org/~faber/Vault/software/grap/: [grap] +http://www.lzop.org: [lzop] +http://www.m17n.org/: [libm17n, libm17n_devel, libotf, libotf_devel, m17ndb] +http://www.magnicomp.com/rdist/: [rdist] +http://www.maier-komor.de/mbuffer.html: [mbuffer] +http://www.maier-komor.de/mtwrite/: [mtwrite] +http://www.maier-komor.de/sysstat.html: [sysstat] +http://www.maier-komor.de/xjobs.html: [xjobs] +http://www.mailscanner.info: [mailscanner] +http://www.mantisbt.org/: [mantis] +http://www.manyfish.co.uk/pakchois/: [pakchois] +http://www.math.utah.edu/~beebe/software/ndiff/: [ndiff] +http://www.matroska.org/: [libebml, libmatroska] +http://www.mavetju.org/download/: [dhcping] +http://www.mavetju.org/unix/general.php: [dnstracer] +http://www.maxmind.com/app/geolitecountry: [geolitedb] +http://www.maxmind.com/app/mod_geoip/: [ap2_modgeoip] +http://www.mega-nerd.com/SRC/: [libsamplerate0, libsamplerate_dev, libsamplerate_utils] +http://www.mega-nerd.com/libsndfile/: [libsndfile] +http://www.mesa.nl/pub/mpage: [mpage] +http://www.mesa3d.org: [mesademos] +http://www.mesa3d.org/: [mesalibs] +http://www.micq.org/: [micq] +http://www.mimedefang.org/index.php/: [mimedefang] +http://www.mindspring.com/~jamoyers/software/: [colorgcc] +http://www.mktemp.org/: [mktemp] +http://www.mldonkey.org/: [mldonkey] +http://www.mml.org.ua/: [minimalist] +http://www.mmonit.com/monit/: [monit] +http://www.modruby.net/en/index.rbx/eruby/download.html: [eruby] +http://www.monkey.org/~dugsong/dsniff/beta/: [dsniff] +http://www.monkey.org/~provos/libevent/: [libevent, libevent1_4_2, libevent2_0_5, + libevent_devel] +http://www.mono-project.com/: [mono, xsp] +http://www.moshpit.org/pilotmgr/: [pilotmgr] +http://www.mozilla.org/: [mozilla, seamonkey, sunbird] +http://www.mozilla.org/projects/security/pki/nss/: [libnss3, libnss3_devel, libnss3_tools] +http://www.mpeg.org/MSSG: [mpeg2codec] +http://www.mpfr.org/: [libmpfr] +http://www.mplayerhq.hu/MPlayer/releases/: [mplayer] +http://www.mplayerhq.hu/MPlayer/releases/dvdnav/: [libdvdread, libdvdread_devel] +http://www.mrunix.net/webalizer/: [webalizer] +http://www.musicbrainz.org: [libmusicbrainz_gcc] +http://www.mutt.org: [mutt, mutt_base, mutt_ncurses, mutt_slang] +http://www.mysql.com/: [mysql4bench, mysql4client, mysql4devel, mysql4rt, mysql4test, + mysql5, mysql5client, mysql5devel, mysql5rt] +http://www.mysql.com/products/mysql/: [mysql4] +http://www.nano-editor.org/: [nano] +http://www.nasm.us/: [nasm] +http://www.ncftp.com/: [ncftp] +http://www.nedit.org/: [nedit] +http://www.nessus.org: [libnasl, nessus, nessuslib, nessusplugins] +http://www.net-snmp.org/: [netsnmp, netsnmp_py] +http://www.nethack.org/: [nethack] +http://www.netperf.org/netperf/NetperfPage.html: [netperf] +http://www.nicemice.net/par/: [par] +http://www.nlnetlabs.nl/downloads/nsd/: [nsd] +http://www.nlnetlabs.nl/projects/ldns/: [ldnsdrill, libldns1, libldns_devel] +http://www.noah.org/wiki/Pexpect: [py_pexpect] +http://www.nongnu.org/enigma/: [enigma] +http://www.nongnu.org/lzip/lzip.html: [lzip] +http://www.nongnu.org/lzip/lzlib.html: [lzlib, plzip] +http://www.nongnu.org/nmh/: [nmh] +http://www.nongnu.org/zutils/zutils.html: [zutils] +http://www.nostatic.org/grip/: [grip] +http://www.novell.com/products/connector/: [ximian_connector] +http://www.ntp.org/: [ntp] +http://www.oac.uci.edu/indiv/ehood/tar/: [mhonarc] +http://www.oasis-open.org/docbook/sgml/3.0/: [docbookdtds] +http://www.oberhumer.com/opensource/lzo/: [lzo] +http://www.ocaml.org: [ocaml] +http://www.octave.org: [octave] +http://www.odsd.org/x2x/: [x2x] +http://www.ohse.de/uwe/software/lrzsz.html: [lrzsz] +http://www.openal.org: [openal] +http://www.opencsw.org: [alternatives, cas_cpsampleconf, cas_cptemplates, cas_crontab, + cas_etcservices, cas_inetd, cas_initsmf, cas_migrateconf, cas_postmsg, cas_preserveconf, + cas_pycompile, cas_texinfo, cas_usergroup, cswclassutils, emacs_sitestart] +http://www.opencsw.org/: [common, cswpkgloghooks, cswutils, fam, fluxbox_dtlogin, + isaexec, sunx11_devel, windowmaker_dtlogin] +http://www.opencsw.org/jgoerzen/: [enlightenment_dt] +http://www.opencsw.org/packages/dosexec: [dosexec] +http://www.openexr.com: [ilmbase, ilmbase_devel, openexr, openexr_devel, openexr_doc, + openexr_rt] +http://www.openldap.org: [openldap, openldap_client, openldap_devel, openldap_rt] +http://www.openmn.org: [aspellmn] +http://www.openoffice.org/: [ooocommon, ooocore, ooouiaf, ooouibg, ooouica, ooouics, + ooouicy, ooouida, ooouide, ooouiel, ooouiengb, ooouienus, ooouies, ooouiet, ooouifr, + ooouigl, ooouihr, ooouihu, ooouiit, ooouilt, ooouinb, ooouinl, ooouinn, ooouipl, + ooouipt, ooouiptbr, ooouisk, ooouisl, ooouisv, ooouitr, ooouizu, openofficeafza, + openofficebgbg, openofficecaes, openofficecscz, openofficecygb, openofficedadk, + openofficedeat, openofficedech, openofficedede, openofficeelgr, openofficeenau, + openofficeenca, openofficeengb, openofficeennz, openofficeenus, openofficeeses, + openofficeesmx, openofficeetee, openofficefrbe, openofficefrfr, openofficegles, + openofficehrhr, openofficehuhu, openofficeitit, openofficeltlt, openofficenbno, + openofficenlnl, openofficennno, openofficeplpl, openofficeptbr, openofficeptpt, + openofficesksk, openofficeslsi, openofficesvse, openofficezuza] +http://www.openprinting.org/download/ijs/: [ijs] +http://www.opensolaris.org/os/project/tesla/work/powertop: [powertop] +http://www.opensound.com: [osndsys] +http://www.openssl.org/source/: [openssl, openssl_devel, openssl_rt, openssl_utils] +http://www.oracle.com/technology/products/berkeley-db/index.html: [berkeleydb43, berkeleydb43_devel, + berkeleydb43_doc] +http://www.oracle.com/technology/software/products/berkeley-db/db/index.html: [berkeleydb3, + berkeleydb3_devel, berkeleydb3_doc, berkeleydb42, berkeleydb42_devel, berkeleydb42_doc, + berkeleydb44, berkeleydb44_devel, berkeleydb44_doc, berkeleydb47, berkeleydb47_devel, + berkeleydb47_doc, berkeleydb48, berkeleydb48_devel, berkeleydb48_doc] +http://www.oracle.com/technology/software/products/berkeley-db/db/index.html/: [berkeleydb4_doc] +http://www.orcaware.com/orca: [orca, orca_web] +http://www.ossp.org/pkg/lib/mm/: [libmm] +http://www.par.univie.ac.at/solaris/pca/: [pca] +http://www.pcre.org: [libpcre0, libpcrecpp0, libpcreposix0, pcre, pcre_devel, pcre_rt] +http://www.pdflib.com/products/: [libpdf6, libpdf_java0, pdflib_devel, pdflib_utils] +http://www.pdflib.com/products/more/jpeg2ps.html: [jpeg2ps] +http://www.phildev.net/pius/: [pius] +http://www.php.net/downloads.php: [ap2_modphp4, ap2_modphp5, mod_php, mod_php4_core, + mod_php5, php4_bcmath, php4_bz2, php4_calendar, php4_cgi, php4_curl, php4_dba, php4_dbase, + php4_domxml, php4_gd, php4_gettext, php4_gmp, php4_iconv, php4_imap, php4_ldap, + php4_mbstring, php4_mcal, php4_mssql, php4_mysql, php4_ncurses, php4_odbc, php4_openssl, + php4_pgsql, php4_zlib, php5, php5_bcmath, php5_bz2, php5_calendar, php5_ctype, php5_curl, + php5_dba, php5_dbase, php5_devel, php5_dom, php5_exif, php5_filter, php5_ftp, php5_gd, + php5_gettext, php5_gmp, php5_hash, php5_iconv, php5_imap, php5_json, php5_ldap, + php5_mbstring, php5_mcrypt, php5_mhash, php5_mime_magic, php5_mssql, php5_mysql, + php5_mysqli, php5_ncurses, php5_odbc, php5_openssl, php5_pcntl, php5_pdo, php5_pdomysql, + php5_pdoodbc, php5_pdopgsql, php5_pdosqlite, php5_pgsql, php5_posix, php5_pspell, + php5_readline, php5_session, php5_shmop, php5_snmp, php5_soap, php5_sockets, php5_sqlite, + php5_sysvmsg, php5_sysvsem, php5_sysvshm, php5_tidy, php5_tokenizer, php5_wddx, + php5_xmlreader, php5_xmlrpc, php5_xmlwriter, php5_xsl, php5_zip] +http://www.phpmyadmin.net: [phpmyadmin] +http://www.pilot-link.org/: [pilotlink] +http://www.pizzashack.org/rssh/: [rssh] +http://www.plkr.org/: [plucker] +http://www.policyd-weight.org/releases/: [policydweight] +http://www.postfix.org: [postfix] +http://www.postgresql.org/: [libpq, postgresql, postgresqlcontrib] +http://www.povray.org/: [povray] +http://www.powertech.no/apache/dist/maven/binaries/: [maven2] +http://www.privoxy.org/: [privoxy] +http://www.procmail.org/: [procmail] +http://www.pstoedit.net/: [pstoedit, pstoedit_devel, pstoedit_rt] +http://www.pygtk.org: [pygtk] +http://www.python-ldap.org/: [py_ldap] +http://www.pythonware.com/products/pil/: [pil] +http://www.pyzor.org/: [pyzor] +http://www.qemu.com/: [qemu] +http://www.qhull.org/: [qhull, qhull_rt] +http://www.rarlab.com/rar_add.htm: [unrar] +http://www.rdesktop.org/: [rdesktop] +http://www.reallyslick.com: [rsxs] +http://www.remotesensing.org/libtiff/: [tiff] +http://www.remotesensing.org/proj: [proj] +http://www.reportlab.org/: [reportlab] +http://www.reportlab.org/downloads.html#renderPM: [renderpm] +http://www.reportmagic.org/: [reportmagic] +http://www.research.att.com/sw/download/: [ksh] +http://www.rhyolite.com/dcc/: [dcc] +http://www.rhythmbox.org: [rhythmbox] +http://www.ribbonsoft.com/qcad.html: [qcad] +http://www.ribbonsoft.com/qcad_library.html: [qcad_library] +http://www.riverbankcomputing.co.uk/sip/: [sip] +http://www.rpcurnow.force9.co.uk/mairix/: [mairix] +http://www.rwhois.net/: [rwhois] +http://www.s-lang.org/: [slang] +http://www.saddi.com/software/flup/: [py_flup] +http://www.samba.org/: [samba, samba_client, samba_common, samba_doc, samba_lib, samba_libdev, + samba_swat, samba_wb] +http://www.sane-project.org/: [saneback, sanefront] +http://www.scala-lang.org/: [scala] +http://www.schweikhardt.net: [samefile] +http://www.scons.org/: [scons] +http://www.scribus.co.uk: [scribus_templates] +http://www.scribus.org.uk: [scribus] +http://www.scummvm.org: [scummvm] +http://www.seasip.demon.co.uk/Unix/LibDsk/: [lib765, libdsk] +http://www.sendmail.org/: [libmilter, sendmail] +http://www.sensus.org/tcl/tls.htm: [tcltls] +http://www.sentex.net/~mwandel/jhead/: [jhead] +http://www.simgear.org: [simgear] +http://www.sk-spell.sk.cx/aspell-sk: [aspellsk] +http://www.skencil.org/: [skencil] +http://www.slrn.org/: [slrn] +http://www.snobol4.org/: [csnobol4] +http://www.snort.org/: [snort] +http://www.softcatala.org/wiki/Projectes/Corrector_ortografic: [aspellca] +http://www.southern-storm.com.au/treecc.html: [treecc] +http://www.speex.org/: [libspeex] +http://www.splintered.net/sw/flow-tools: [flowtools] +http://www.sqlalchemy.org/: [py_sqlalchemy] +http://www.sqlite.org/: [sqlite] +http://www.sqlobject.org/: [py_sqlobject] +http://www.squid-cache.org/Versions/v2/2.7/: [squid] +http://www.sra.co.jp/people/m-kasahr/cvsproxy/: [cvsproxy] +http://www.stack.nl/~dimitri/doxygen/: [doxygen, doxygen_doc] +http://www.stellarium.org/: [stellarium] +http://www.stunnel.org: [stunnel] +http://www.sun.com/software/products/studio/: [stlport] +http://www.swox.com/gmp/: [libgmp] +http://www.t2-project.org/packages/liblockfile.html: [liblockfile] +http://www.taiyo.co.jp/~gotoh/ssh/connect.html: [sshproxy] +http://www.tcl.tk/: [tcl, tk] +http://www.tcpdump.org/: [tcpdump] +http://www.tcpdump.org/release/: [libpcap, libpcap_devel] +http://www.tcsh.org/: [tcsh] +http://www.techrescue.org/xboing/: [xboing] +http://www.thangorodrim.net/: [angband] +http://www.theora.org: [libtheora] +http://www.tightvnc.org/: [vncserver, vncviewer] +http://www.tim-mann.org/xboard.html: [xboard] +http://www.tin.org/: [tin] +http://www.tm.uka.de/~bless/ps2eps: [ps2eps] +http://www.torproject.org: [tor] +http://www.tortall.net/projects/yasm/releases/: [yasm] +http://www.trickytools.com/php/sar2rrd.php: [sar2rrd] +http://www.trilon.com/xv/xv.html: [xv] +http://www.trolltech.com: [qt_docs] +http://www.trolltech.com/products/qt/index.html: [qt] +http://www.tug.org/teTeX/: [tetex] +http://www.tux.org/~bagleyd/xlockmore.html: [xlockmore] +http://www.twobarleycorns.net/: [tkcvs] +http://www.ucarp.org/project/ucarp: [ucarp] +http://www.uio.no/~runekl/dictionary.html: [aspellnb, aspellnn] +http://www.unbound.net/: [libunbound2, unbound, unbound_devel, unbound_host] +http://www.underbit.com/products/mad/: [libmad] +http://www.uni-bremen.de/~kmashrab/uzbek-word-list/: [aspelluz] +http://www.unicom.com/sw/xtail/: [xtail] +http://www.unidata.ucar.edu/software/netcdf/: [libnetcdf6, libnetcdf_c++5, libnetcdff5, + netcdf, netcdf_devel] +http://www.unixodbc.org/: [unixodbc] +http://www.unixtop.org/: [top] +http://www.us.xfce.org/archive/xfce-4.2.3.2/src/: [dbh] +http://www.vanheusden.com/httping/: [httping] +http://www.vanheusden.com/multitail/: [multitail] +http://www.venge.net/monotone/: [monotone] +http://www.vergenet.net/~conrad/software/xsel/download/: [xsel] +http://www.videolan.org/vlc/: [vlc] +http://www.vim.org/download.php: [gvim, vim, vimrt] +http://www.visi.com/~hawkeyd/xaw3d.html: [xaw3d] +http://www.vorbis.com: [vorbistools] +http://www.vorbis.com/: [libvorbis] +http://www.washington.edu/alpine/: [alpine] +http://www.washington.edu/imap/: [imap, imap_devel, imaprt] +http://www.washington.edu/pine/: [pine] +http://www.wavpack.com/: [wavpack] +http://www.webdav.org/cadaver/: [cadaver] +http://www.webdav.org/mod_dav/: [mod_dav] +http://www.webdav.org/neon/: [neon, neon_devel, neon_full] +http://www.while.org.uk/: [vispan] +http://www.whiteboard.ne.jp/admin2/tuntap/: [openvpn] +http://www.whiteboard.ne.jp/~admin2/tuntap/source/tuntap/: [tap, tun] +http://www.windowmaker.org/: [windowmaker] +http://www.winfield.demon.nl/: [antiword] +http://www.wireshark.org/: [wireshark] +http://www.worldforge.org/: [libatlas_c++] +http://www.wxwidgets.org/: [wxwidgets_common, wxwidgets_devel, wxwidgets_gtk2] +http://www.x.org/contrib/applications/: [mgdiff] +http://www.x.org/pub/R6.6/tars/: [xvfb] +http://www.xbill.org: [xbill] +http://www.xcdroast.org: [xcdroast] +http://www.xdebug.org/files/: [php5_xdebug] +http://www.xfce.org: [xfce, xfce_appfinder, xfce_calendar, xfce_desktop, xfce_dtlogin, + xfce_engine, xfce_iconbox, xfce_iconthemes, xfce_launcher, xfce_libs, xfce_manager, + xfce_mixer, xfce_panel, xfce_plugins, xfce_print, xfce_session, xfce_systray, xfce_toys, + xfce_utils, xfce_xffm, xfce_xfwm, xfce_xfwmthemes] +http://www.xfig.org: [xfig] +http://www.xfig.org/: [transfig] +http://www.xinehq.de/: [gxine, libxine, xineui] +http://www.xiph.org/ao/: [libao] +http://www.xiph.org/fishsound/: [libfishsound] +http://www.xmms.org/: [xmms] +http://www.xpilot.org/: [xpilot] +http://www.xs4all.nl/~nijtmans/img.html: [tm_img] +http://www.xsane.org/: [xsane] +http://www.xvid.org/: [libxvidcore, libxvidcore_devel] +http://www.zdziarski.com/projects/mod_evasive/: [ap2_modevasive] +http://www.zlib.net: [zlib] +http://www.zlib.net/pigz/: [pigz] +http://www.zope.org: [zope] +http://www.zsh.org: [zsh] +http://www2.warwick.ac.uk/fac/sci/statistics/staff/academic/firth/software/pdfjam: [ + pdfjam] +http://www2m.biglobe.ne.jp/~dolphin/lha/lha-unix.htm: [lha] +http://wwwfun.kurims.kyoto-u.ac.jp/soft/olabl/lablgtk.html: [lablgtk] +http://wwwsearch.sourceforge.net/mechanize/: [py_mechanize] +http://x.mame.net/: [xmame] +http://x3270.sourceforge.net/: [x3270] +http://xcb.freedesktop.org/dist/: [libpthreadstubs, libxcb, libxcb_devel, libxcb_doc, + py_xcbproto, xcbproto, xcbutil] +http://xchat.org/files/source/2.8/: [xchat, xchat_pl, xchat_py, xchat_tcl] +http://xdiskusage.sourceforge.net/: [xdiskusage] +http://xerces.apache.org/xerces-j/: [xercesj] +http://xfce-goodies.berlios.de/: [xfce_load] +http://xml.apache.org/batik/: [batik] +http://xml.apache.org/commons/: [xmlcommonsext] +http://xml.apache.org/xalan-j/: [xalanj] +http://xml.apache.org/xerces-c: [xerces_c] +http://xmlobject.base-art.net/: [py_xmlobject] +http://xmlrpc-c.sourceforge.net: [xmlrpc_c] +http://xmlsoft.org/: [libxml] +http://xmlsoft.org/XSLT/: [libxslt, libxslt_devel, py_libxslt] +http://xorg.freedesktop.org/releases/X11R7.5/src/lib/: [cx_libxrender, libdmx, libdmx_devel, + libfontenc, libfontenc_devel, libfs, libfs_devel, libice, libice_devel, libsm, libsm_devel, + libx11, libx11_devel, libxau, libxau_devel, libxaw, libxaw_devel, libxcomposite, + libxcomposite_devel, libxcursor, libxcursor_devel, libxdamage, libxdamage_devel, + libxdmcp, libxdmcp_devel, libxext, libxext_devel, libxfixes, libxfixes_devel, libxfont, @@ Diff output truncated at 100000 characters. @@ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Tue Feb 22 10:43:11 2011 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Tue, 22 Feb 2011 09:43:11 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[320] utilities/mk_core_list.sh Message-ID: Revision: 320 http://opencsw.svn.sourceforge.net/opencsw/?rev=320&view=rev Author: bonivart Date: 2011-02-22 09:43:11 +0000 (Tue, 22 Feb 2011) Log Message: ----------- mk_core_list.sh: added bind Modified Paths: -------------- utilities/mk_core_list.sh Modified: utilities/mk_core_list.sh =================================================================== --- utilities/mk_core_list.sh 2011-02-22 09:09:41 UTC (rev 319) +++ utilities/mk_core_list.sh 2011-02-22 09:43:11 UTC (rev 320) @@ -13,16 +13,17 @@ core_start_pkgs=( # Servers apache2 + bind + exim mysql5 postfix - exim # Interpreters perl python ruby # Editors + emacs vim - emacs # Userland coreutils elinks This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Tue Feb 22 11:17:11 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Tue, 22 Feb 2011 10:17:11 +0000 Subject: [csw-devel] SF.net SVN: gar:[13440] csw/mgar/pkg/postgresql/branches/postgresql-9.0 Message-ID: Revision: 13440 http://gar.svn.sourceforge.net/gar/?rev=13440&view=rev Author: wahwah Date: 2011-02-22 10:17:11 +0000 (Tue, 22 Feb 2011) Log Message: ----------- postgresql-9.0: Using OBSOLETES_CSWfoo for CSWlibpq Modified Paths: -------------- csw/mgar/pkg/postgresql/branches/postgresql-9.0/Makefile csw/mgar/pkg/postgresql/branches/postgresql-9.0/files/merge_legacy_libs.sh Modified: csw/mgar/pkg/postgresql/branches/postgresql-9.0/Makefile =================================================================== --- csw/mgar/pkg/postgresql/branches/postgresql-9.0/Makefile 2011-02-22 08:32:38 UTC (rev 13439) +++ csw/mgar/pkg/postgresql/branches/postgresql-9.0/Makefile 2011-02-22 10:17:11 UTC (rev 13440) @@ -37,11 +37,11 @@ bindir = $(prefix)$(version_dependent)/bin sbindir_install = $(prefix)$(version_dependent)/sbin sbindir = $(prefix)$(version_dependent)/sbin -libdir_install = $(prefix)$(version_dependent)/lib # libdir = $(prefix)$(version_dependent)/lib # Otherwise initdb can't find the right libraries, see: # http://archives.postgresql.org/pgsql-general/2010-01/msg00422.php -libdir = $(abspath $(prefix)$(version_dependent)/lib/$(MM_LIBDIR)) +# libdir = $(abspath $(prefix)$(version_dependent)/lib/$(MM_LIBDIR)) +# libdir_install = $(prefix)$(version_dependent)/lib localstatedir = /var$(prefix)/$(NAME)/$(BASE_VERSION) sysconfdir = /etc$(prefix)/postgresql-common datadir = $(prefix)/share/$(NAME)/$(BASE_VERSION) @@ -204,6 +204,7 @@ SPKG_DESC_CSWlibpq5 += PostgreSQL C client library (built from $(BASE_VERSION).x sources), libpq.so.5 RUNTIME_DEP_PKGS_CSWlibpq5 += CSWosslrt RUNTIME_DEP_PKGS_CSWlibpq5 += CSWkrb5lib +OBSOLETES_CSWlibpq5 += CSWlibpq PACKAGES += CSWlibecpg6 CATALOGNAME_CSWlibecpg6 = libecpg6 @@ -211,6 +212,7 @@ SPKG_DESC_CSWlibecpg6 += Embedded PostgreSQL for C library (built from $(BASE_VERSION).x sources), libecpg.so.6 RUNTIME_DEP_PKGS_CSWlibecpg6 += CSWlibpgtypes3 RUNTIME_DEP_PKGS_CSWlibecpg6 += CSWlibpq5 +OBSOLETES_CSWlibecpg6 += CSWlibpq PACKAGES += CSWlibecpg-compat3 CATALOGNAME_CSWlibecpg-compat3 = libecpg_compat3 @@ -219,12 +221,14 @@ RUNTIME_DEP_PKGS_CSWlibecpg-compat3 += CSWlibecpg6 RUNTIME_DEP_PKGS_CSWlibecpg-compat3 += CSWlibpgtypes3 RUNTIME_DEP_PKGS_CSWlibecpg-compat3 += CSWlibpq5 +OBSOLETES_CSWlibecpg-compat3 = CSWlibpq PACKAGES += CSWlibpgtypes3 CATALOGNAME_CSWlibpgtypes3 = libpgtypes3 PKGFILES_CSWlibpgtypes3 += $(call baseisadirs,$(prefix)/lib,libpgtypes\.so\.3\.0) PKGFILES_CSWlibpgtypes3 += $(call baseisadirs,$(prefix)/lib,libpgtypes\.so\.3(\.\d+)*) SPKG_DESC_CSWlibpgtypes3 += Used by programs built with ecpg (Embedded PostgreSQL for C, from $(BASE_VERSION).x sources), libpgtypes.so.3 +OBSOLETES_CSWlibpgtypes3 = CSWlibpq PACKAGES += CSWlibpq-dev CATALOGNAME_CSWlibpq-dev = libpq_dev @@ -259,6 +263,7 @@ PKGFILES_CSWlibpq3 += $(call baseisadirs,$(prefix)/lib,libpq\.so\.3(\.\d+)*) SPKG_DESC_CSWlibpq3 += PostgreSQL C client library, libpq.so.3 RUNTIME_DEP_PKGS_CSWlibpq3 += CSWosslrt +OBSOLETES_CSWlibpq3 = CSWlibpq PACKAGES += CSWlibpq4 CATALOGNAME_CSWlibpq4 = libpq4 @@ -270,11 +275,13 @@ CATALOGNAME_CSWlibpgtypes1 = libpgtypes1 PKGFILES_CSWlibpgtypes1 += $(call baseisadirs,$(prefix)/lib,libpgtypes\.so\.1(\.\d+)*) SPKG_DESC_CSWlibpgtypes1 += Used by programs built with ecpg (Embedded PostgreSQL for C), libpgtypes.so.1 +OBSOLETES_CSWlibpgtypes1 = CSWlibpq PACKAGES += CSWlibpgtypes2 CATALOGNAME_CSWlibpgtypes2 = libpgtypes2 PKGFILES_CSWlibpgtypes2 += $(call baseisadirs,$(prefix)/lib,libpgtypes\.so\.2(\.\d+)*) SPKG_DESC_CSWlibpgtypes2 += Used by programs built with ecpg (Embedded PostgreSQL for C), libpgtypes.so.2 +OBSOLETES_CSWlibpgtypes2 = CSWlibpq PACKAGES += CSWlibecpg4 CATALOGNAME_CSWlibecpg4 = libecpg4 @@ -283,6 +290,7 @@ RUNTIME_DEP_PKGS_CSWlibecpg4 += CSWlibpgtypes1 RUNTIME_DEP_PKGS_CSWlibecpg4 += CSWosslrt RUNTIME_DEP_PKGS_CSWlibecpg4 += CSWlibpq3 +OBSOLETES_CSWlibecpg4 += CSWlibpq PACKAGES += CSWlibecpg5 CATALOGNAME_CSWlibecpg5 = libecpg5 @@ -290,6 +298,7 @@ SPKG_DESC_CSWlibecpg5 += Embedded PostgreSQL for C library, libecpg.so.5 RUNTIME_DEP_PKGS_CSWlibecpg5 += CSWlibpgtypes2 RUNTIME_DEP_PKGS_CSWlibecpg5 += CSWlibpq5 +OBSOLETES_CSWlibecpg5 += CSWlibpq PACKAGES += CSWlibecpg-compat2 CATALOGNAME_CSWlibecpg-compat2 = libecpg_compat2 @@ -298,23 +307,8 @@ RUNTIME_DEP_PKGS_CSWlibecpg-compat2 += CSWlibpgtypes2 RUNTIME_DEP_PKGS_CSWlibecpg-compat2 += CSWlibecpg5 RUNTIME_DEP_PKGS_CSWlibecpg-compat2 += CSWlibpq5 +OBSOLETES_CSWlibecpg-compat2 = CSWlibpq -# The horrible transitional package -PACKAGES += CSWlibpq -PKGFILES_CSWlibpq += $(prefix)/postgresql.* -SPKG_DESC_CSWlibpq = Transitional package for PostgreSQL shared libraries -RUNTIME_DEP_PKGS_CSWlibpq += CSWlibecpg-compat2 -RUNTIME_DEP_PKGS_CSWlibpq += CSWlibecpg-compat3 -RUNTIME_DEP_PKGS_CSWlibpq += CSWlibecpg4 -RUNTIME_DEP_PKGS_CSWlibpq += CSWlibecpg5 -RUNTIME_DEP_PKGS_CSWlibpq += CSWlibecpg6 -RUNTIME_DEP_PKGS_CSWlibpq += CSWlibpgtypes1 -RUNTIME_DEP_PKGS_CSWlibpq += CSWlibpgtypes2 -RUNTIME_DEP_PKGS_CSWlibpq += CSWlibpgtypes3 -RUNTIME_DEP_PKGS_CSWlibpq += CSWlibpq3 -RUNTIME_DEP_PKGS_CSWlibpq += CSWlibpq4 -RUNTIME_DEP_PKGS_CSWlibpq += CSWlibpq5 - include gar/category.mk CFLAGS := $(filter-out -I%,$(CFLAGS)) @@ -350,38 +344,8 @@ post-merge: ginstall -m 755 -d $(PKGROOT)$(prefix)/bin - # for b in $(BIN_NAMES); do \ - # gln -s ..$(version_dependent)/bin/$${b} $(PKGROOT)$(prefix)/bin/$${b}; \ - # done ginstall -d $(PKGROOT)$(PGDATA) - gln -s $(ISA_DEFAULT64) $(PKGROOT)$(libdir)/64 - mkdir -p $(PKGROOT)$(prefix)/lib - mkdir -p $(PKGROOT)$(prefix)/lib/$(ISA_DEFAULT64) - for libname in libpq libecpg libecpg_compat libpgtypes; do \ - mv $(PKGROOT)$(libdir)/$${libname}.so $(PKGROOT)$(prefix)/lib; \ - mv $(PKGROOT)$(libdir)/$(ISA_DEFAULT64)/$${libname}.so $(PKGROOT)$(prefix)/lib/$(ISA_DEFAULT64); \ - mv $(PKGROOT)$(libdir)/$${libname}.so.* $(PKGROOT)$(prefix)/lib; \ - mv $(PKGROOT)$(libdir)/$(ISA_DEFAULT64)/$${libname}.so.* $(PKGROOT)$(prefix)/lib/$(ISA_DEFAULT64); \ - done $(FILEDIR)/merge_legacy_libs.sh $(GARCH) $(FILEDIR) $(PKGROOT)/$(prefix)/lib - - # Backward compatibility provided by CSWlibpq - mkdir -p $(PKGROOT)$(prefix)/postgresql/lib - mkdir -p $(PKGROOT)$(prefix)/postgresql/lib/$(ISA_DEFAULT64) - gln -s . $(PKGROOT)$(prefix)/postgresql/lib/$(ISA_DEFAULT) - gln -s $(ISA_DEFAULT64) $(PKGROOT)$(prefix)/postgresql/lib/64 - gln -s $(ISA_DEFAULT) $(PKGROOT)$(prefix)/postgresql/lib/32 - for f in $(PKGROOT)$(prefix)/lib/*.so.*; do \ - ln -s \ - ../../lib/`basename $${f}` \ - $(PKGROOT)$(prefix)/postgresql/lib; \ - done - for f in $(PKGROOT)$(prefix)/lib/$(ISA_DEFAULT64)/lib*.so.*; do \ - ln -s \ - ../../lib/$(ISA_DEFAULT64)/`basename $${f}` \ - $(PKGROOT)$(prefix)/postgresql/lib/$(ISA_DEFAULT64); \ - done - # Checks whether the pkgroot contents is OK. $(FILEDIR)/check_pkgroot.sh "$(PKGROOT)" @$(MAKECOOKIE) Modified: csw/mgar/pkg/postgresql/branches/postgresql-9.0/files/merge_legacy_libs.sh =================================================================== --- csw/mgar/pkg/postgresql/branches/postgresql-9.0/files/merge_legacy_libs.sh 2011-02-22 08:32:38 UTC (rev 13439) +++ csw/mgar/pkg/postgresql/branches/postgresql-9.0/files/merge_legacy_libs.sh 2011-02-22 10:17:11 UTC (rev 13440) @@ -1,5 +1,9 @@ #!/opt/csw/bin/bash # $Id$ +# +# Designed to take care of deploying binary blobs from the files directory +# onto the filesystem. Each file has the file name, architecture and soname +# encoded into the filename. set -u set -e This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Tue Feb 22 14:33:46 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Tue, 22 Feb 2011 13:33:46 +0000 Subject: [csw-devel] SF.net SVN: gar:[13441] csw/mgar/gar/v2 Message-ID: Revision: 13441 http://gar.svn.sourceforge.net/gar/?rev=13441&view=rev Author: dmichelsen Date: 2011-02-22 13:33:46 +0000 (Tue, 22 Feb 2011) Log Message: ----------- mGAR v2: Limit length of obsolete package descriptions to 100 chars and rename from obsoleted-by to obsolete Modified Paths: -------------- csw/mgar/gar/v2/gar.mk csw/mgar/gar/v2/gar.pkg.mk Modified: csw/mgar/gar/v2/gar.mk =================================================================== --- csw/mgar/gar/v2/gar.mk 2011-02-22 10:17:11 UTC (rev 13440) +++ csw/mgar/gar/v2/gar.mk 2011-02-22 13:33:46 UTC (rev 13441) @@ -803,7 +803,7 @@ # The basic merge merges the compiles for all ISAs on the current architecture -merge: checksum pre-merge merge-do merge-license merge-classutils merge-checkpkgoverrides merge-alternatives $(if $(COMPILE_ELISP),compile-elisp) $(if $(NOSOURCEPACKAGE),,merge-src) merge-README.CSW merge-obsoleted-by $(if $(AP2_MODS),post-merge-ap2mod) post-merge +merge: checksum pre-merge merge-do merge-license merge-classutils merge-checkpkgoverrides merge-alternatives $(if $(COMPILE_ELISP),compile-elisp) $(if $(NOSOURCEPACKAGE),,merge-src) merge-README.CSW merge-obsolete $(if $(AP2_MODS),post-merge-ap2mod) post-merge banner merge @$(MAKECOOKIE) @@ -887,7 +887,7 @@ .PHONY: remerge reset-merge reset-merge-modulated remerge: reset-merge merge -reset-merge: reset-package $(addprefix reset-merge-,$(MODULATIONS)) reset-merge-license reset-merge-classutils reset-merge-checkpkgoverrides reset-merge-alternatives reset-merge-README.CSW reset-merge-obsoleted-by reset-merge-ap2mod reset-merge-src +reset-merge: reset-package $(addprefix reset-merge-,$(MODULATIONS)) reset-merge-license reset-merge-classutils reset-merge-checkpkgoverrides reset-merge-alternatives reset-merge-README.CSW reset-merge-obsolete reset-merge-ap2mod reset-merge-src @rm -f $(COOKIEDIR)/pre-merge $(foreach M,$(MODULATIONS),$(COOKIEDIR)/merge-$M) $(COOKIEDIR)/merge $(COOKIEDIR)/post-merge @rm -rf $(PKGROOT) Modified: csw/mgar/gar/v2/gar.pkg.mk =================================================================== --- csw/mgar/gar/v2/gar.pkg.mk 2011-02-22 10:17:11 UTC (rev 13440) +++ csw/mgar/gar/v2/gar.pkg.mk 2011-02-22 13:33:46 UTC (rev 13441) @@ -57,7 +57,8 @@ define obsoleted_pkg CATALOGNAME_$(1) = $(call catalogname,$(1)) -SPKG_DESC_$(1) = Transitional package as contents moved to $(foreach P,$(PACKAGES),$(if $(filter $(1),$(OBSOLETES_$P)),$P)) +# The length of the description has been limited to 100 characters, the string is cut only on word boundaries +SPKG_DESC_$(1) ?= $(shell echo Transitional package as contents moved to $(foreach P,$(PACKAGES),$(if $(filter $(1),$(OBSOLETES_$P)),$P)) | perl -npe 's/^(.{0,96})\s.+/$$1 .../') RUNTIME_DEP_PKGS_$(1) = $(foreach P,$(PACKAGES),$(if $(filter $(1),$(OBSOLETES_$P)),$P)) PKGFILES_$(1) = NOFILES ARCHALL_$(1) = 1 @@ -411,7 +412,7 @@ endef define obsoleted_filter - | ( cat; if test -f "$(WORKDIR_GLOBAL)/$(1).obsoleted-by";then echo "i obsoleted-by=$(1).obsoleted-by"; fi) + | ( cat; if test -f "$(WORKDIR_GLOBAL)/$(1).obsolete";then echo "i obsolete=$(1).obsolete"; fi) endef # This file contains all installed pathes. This can be used as a starting point @@ -685,18 +686,18 @@ reset-merge-README.CSW: $(_DBG)rm -f $(COOKIEDIR)/merge-README.CSW $(foreach SPEC,$(_PKG_SPECS),$(PKGROOT)$(docdir)/$(call catalogname,$(SPEC))/README.CSW) -merge-obsoleted-by: $(WORKDIR_GLOBAL) +merge-obsolete: $(WORKDIR_GLOBAL) $(_DBG)$(foreach P,$(OBSOLETED_PKGS),$(foreach Q,$(PACKAGES),$(if $(filter $P,$(OBSOLETES_$Q)), \ $(if $(SPKG_DESC_$Q), \ - echo "$Q $(call catalogname,$Q) - $(SPKG_DESC_$Q)" >> $(WORKDIR_GLOBAL)/$P.obsoleted-by;, \ - echo "$(shell (/usr/bin/pkginfo $Q || echo "$Q - ") | $(GAWK) '{ $$1 = "P"; print } ')" $(WORKDIR_GLOBAL)/$P.obsoleted-by; \ + echo "$Q $(call catalogname,$Q) - $(SPKG_DESC_$Q)" >> $(WORKDIR_GLOBAL)/$P.obsolete;, \ + echo "$(shell (/usr/bin/pkginfo $Q || echo "$Q - ") | $(GAWK) '{ $$1 = "P"; print } ')" $(WORKDIR_GLOBAL)/$P.obsolete; \ ) \ ))) @$(MAKECOOKIE) -.PHONY: reset-merge-obsoleted-by -reset-merge-obsoleted-by: - $(_DBG)rm -f $(COOKIEDIR)/merge-obsoleted-by $(WORKDIR_GLOBAL)/obsoleted-by.* +.PHONY: reset-merge-obsolete +reset-merge-obsolete: + $(_DBG)rm -f $(COOKIEDIR)/merge-obsolete $(WORKDIR_GLOBAL)/.*.obsolete merge-classutils: merge-migrateconf merge-usergroup merge-inetdconf merge-etcservices This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Tue Feb 22 18:42:44 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Tue, 22 Feb 2011 17:42:44 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[321] gar-wrapper/mgar Message-ID: Revision: 321 http://opencsw.svn.sourceforge.net/opencsw/?rev=321&view=rev Author: skayser Date: 2011-02-22 17:42:44 +0000 (Tue, 22 Feb 2011) Log Message: ----------- mgar: add (advanced and undocumented) up --self option Modified Paths: -------------- gar-wrapper/mgar Modified: gar-wrapper/mgar =================================================================== --- gar-wrapper/mgar 2011-02-22 09:43:11 UTC (rev 320) +++ gar-wrapper/mgar 2011-02-22 17:42:44 UTC (rev 321) @@ -15,8 +15,10 @@ # ---------------------------------------------------------------------------- # # Todos: +# * When packaging mgar, shield mgar up --self so that it won't override +# the package binary, but place it somewhere else. +# * In commit mode, if (msg -eq ""): Fire up $EDITOR (with prepoulated msg) # * In commit mode, if (pwd.endswith('trunk') and svn.rev -eq 0) commit .. -# * Add command to update mgar itself # * Recipes: Move from svn:externals to GARTYPE # * Integrate the creation of a new package (with sanity check whether # package already exists). Use per-directory Makefile.template files. @@ -44,6 +46,8 @@ EDITOR=${EDITOR:-vi} PATH=$PATH:/opt/csw/bin DEF_BUILDTREE=~/opencsw + +SVN_SELF=https://opencsw.svn.sourceforge.net/svnroot/opencsw/gar-wrapper/mgar GAR_REPO=https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/ PKG_REPO=https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/pkg/ @@ -65,6 +69,37 @@ done } +function update_self { + __rev=${1:-HEAD} + + [ -f $0.tmp ] && rm $0.tmp + svn export -r $__rev $SVN_SELF $0.tmp >/dev/null + + if [ $? -ne 0 ]; then + echo "Error: Retrieval from SVN failed. Script untouched." >&2 + exit 1; + fi + + oldv=`grep '# $Id' $0 | head -1` + newv=`grep '# $Id' $0.tmp | head -1` + + if [ "$oldv" == "$newv" ]; then + echo "Script is already at the desired version. No replacement needed." + echo "Current version: $oldv" + rm $0.tmp + exit; + fi + + mv $0.tmp $0 + + cat < Revision: 13442 http://gar.svn.sourceforge.net/gar/?rev=13442&view=rev Author: bdwalton Date: 2011-02-22 22:04:28 +0000 (Tue, 22 Feb 2011) Log Message: ----------- ruby18/trunk: start cleaning up usr/local references in the ruby packages, document in releasenotes as progress is made Modified Paths: -------------- csw/mgar/pkg/ruby18/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/ruby18/trunk/files/CSWruby.cswreleasenotes Modified: csw/mgar/pkg/ruby18/trunk/Makefile =================================================================== --- csw/mgar/pkg/ruby18/trunk/Makefile 2011-02-22 13:33:46 UTC (rev 13441) +++ csw/mgar/pkg/ruby18/trunk/Makefile 2011-02-22 22:04:28 UTC (rev 13442) @@ -81,6 +81,7 @@ UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*)-p(\d+).tar.bz2 DISTFILES = $(NAME)-$(DISTVERSION)-$(PATCHLEVEL).tar.bz2 +DISTFILES += CSWruby.cswreleasenotes # See: http://rubyforge.org/tracker/index.php?func=detail&aid=17607&group_id=426&atid=1698 PATCHFILES = rdoc_parse_order_fix.patch @@ -124,6 +125,9 @@ CHECKPKG_OVERRIDES_CSWrubydoc += missing-dependency|CSWperl CHECKPKG_OVERRIDES_CSWrubydoc += missing-dependency|CSWpython +# usr/local overrides +CHECKPKG_OVERRIDES_CSWruby += file-with-bad-content|/usr/local|root/opt/csw/lib/ruby/1.8/fileutils.rb + include gar/category.mk SPKG_VERSION := $(SPKG_VERSION)$(PATCHLEVEL) Added: csw/mgar/pkg/ruby18/trunk/files/CSWruby.cswreleasenotes =================================================================== --- csw/mgar/pkg/ruby18/trunk/files/CSWruby.cswreleasenotes (rev 0) +++ csw/mgar/pkg/ruby18/trunk/files/CSWruby.cswreleasenotes 2011-02-22 22:04:28 UTC (rev 13442) @@ -0,0 +1,3 @@ +* /usr/local overrides in checkpkg: + - fileutils.rb: all comments + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Tue Feb 22 23:31:13 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Tue, 22 Feb 2011 22:31:13 +0000 Subject: [csw-devel] SF.net SVN: gar:[13443] csw/mgar/pkg/ruby18/trunk Message-ID: Revision: 13443 http://gar.svn.sourceforge.net/gar/?rev=13443&view=rev Author: bdwalton Date: 2011-02-22 22:31:12 +0000 (Tue, 22 Feb 2011) Log Message: ----------- ruby18/trunk: two more usr/local overrides Modified Paths: -------------- csw/mgar/pkg/ruby18/trunk/Makefile csw/mgar/pkg/ruby18/trunk/files/CSWruby.cswreleasenotes Modified: csw/mgar/pkg/ruby18/trunk/Makefile =================================================================== --- csw/mgar/pkg/ruby18/trunk/Makefile 2011-02-22 22:04:28 UTC (rev 13442) +++ csw/mgar/pkg/ruby18/trunk/Makefile 2011-02-22 22:31:12 UTC (rev 13443) @@ -127,6 +127,8 @@ # usr/local overrides CHECKPKG_OVERRIDES_CSWruby += file-with-bad-content|/usr/local|root/opt/csw/lib/ruby/1.8/fileutils.rb +CHECKPKG_OVERRIDES_CSWruby += file-with-bad-content|/usr/local|root/opt/csw/share/man/man1/ruby.1 +CHECKPKG_OVERRIDES_CSWruby += file-with-bad-content|/usr/local|root/opt/csw/bin/ri include gar/category.mk Modified: csw/mgar/pkg/ruby18/trunk/files/CSWruby.cswreleasenotes =================================================================== --- csw/mgar/pkg/ruby18/trunk/files/CSWruby.cswreleasenotes 2011-02-22 22:04:28 UTC (rev 13442) +++ csw/mgar/pkg/ruby18/trunk/files/CSWruby.cswreleasenotes 2011-02-22 22:31:12 UTC (rev 13443) @@ -1,3 +1,4 @@ * /usr/local overrides in checkpkg: - fileutils.rb: all comments - + - ruby.1: examples of option use + - ri: rdoc text, noted as sample location This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Tue Feb 22 23:38:42 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Tue, 22 Feb 2011 22:38:42 +0000 Subject: [csw-devel] SF.net SVN: gar:[13444] csw/mgar/pkg/ruby18/trunk/Makefile Message-ID: Revision: 13444 http://gar.svn.sourceforge.net/gar/?rev=13444&view=rev Author: bdwalton Date: 2011-02-22 22:38:42 +0000 (Tue, 22 Feb 2011) Log Message: ----------- ruby18/trunk: rename the -el package to confirm to package vs catalog convention, use new obsoletes mechanism Modified Paths: -------------- csw/mgar/pkg/ruby18/trunk/Makefile Modified: csw/mgar/pkg/ruby18/trunk/Makefile =================================================================== --- csw/mgar/pkg/ruby18/trunk/Makefile 2011-02-22 22:31:12 UTC (rev 13443) +++ csw/mgar/pkg/ruby18/trunk/Makefile 2011-02-22 22:38:42 UTC (rev 13444) @@ -10,12 +10,12 @@ BUILD_DEP_PKGS = CSWbdb48devel CSWgdbm CSWcoreutils CSWiconv CSWncurses BUILD_DEP_PKGS += CSWreadline CSWzlib CSWossldevel -PACKAGES = CSWruby CSWrubydoc CSWrubytk CSWrubydev CSWrubymode CSWrubymodeel +PACKAGES = CSWruby CSWrubydoc CSWrubytk CSWrubydev CSWrubymode CSWrubymode-el PACKAGES += CSWlibruby1 ARCHALL_CSWrubydoc = 1 ARCHALL_CSWrubymode = 1 -ARCHALL_CSWrubymodeel = 1 +ARCHALL_CSWrubymode-el = 1 LICENSE = COPYING @@ -30,7 +30,7 @@ RUNTIME_DEP_PKGS_CSWrubymode = CSWemacscommon -RUNTIME_DEP_PKGS_CSWrubymodeel = CSWemacscommon +RUNTIME_DEP_PKGS_CSWrubymode-el = CSWemacscommon DESCRIPTION = An object-oriented language for quick and easy programming. define BLURB @@ -55,7 +55,7 @@ SPKG_DESC_CSWrubymode = Ruby major mode for Emacs -SPKG_DESC_CSWrubymodeel = Elisp source for ruby mode +SPKG_DESC_CSWrubymode-el = Elisp source for ruby mode PKGFILES_CSWrubydoc = $(datadir)/ri/.* $(docdir)/ruby/sample.* @@ -66,12 +66,12 @@ PKGFILES_CSWrubymode = $(datadir)/emacs/site-lisp/.*elc$ -PKGFILES_CSWrubymodeel = $(datadir)/emacs/site-lisp/.*el$ +PKGFILES_CSWrubymode-el = $(datadir)/emacs/site-lisp/.*el$ PKGFILES_CSWlibruby1 += /opt/csw/lib/libruby.so.1 PKGFILES_CSWlibruby1 += /opt/csw/lib/libruby.so.1.* -CATALOGNAME_CSWrubymodeel = rubymode_el +OBSOLETES_CSWrubymode-el = CSWrubymodeel MASTER_SITES = ftp://ftp.ruby-lang.org/pub/ruby/ MASTER_SITES += ftp://www.ibiblio.org/pub/languages/ruby/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Wed Feb 23 00:11:06 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Tue, 22 Feb 2011 23:11:06 +0000 Subject: [csw-devel] SF.net SVN: gar:[13445] csw/mgar/pkg/ruby18/trunk Message-ID: Revision: 13445 http://gar.svn.sourceforge.net/gar/?rev=13445&view=rev Author: bdwalton Date: 2011-02-22 23:11:06 +0000 (Tue, 22 Feb 2011) Log Message: ----------- ruby18/trunk: override all usr/local warnings in the doc package, add release notes file for it Modified Paths: -------------- csw/mgar/pkg/ruby18/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/ruby18/trunk/files/CSWrubydoc.cswreleasenotes Modified: csw/mgar/pkg/ruby18/trunk/Makefile =================================================================== --- csw/mgar/pkg/ruby18/trunk/Makefile 2011-02-22 22:38:42 UTC (rev 13444) +++ csw/mgar/pkg/ruby18/trunk/Makefile 2011-02-22 23:11:06 UTC (rev 13445) @@ -82,6 +82,7 @@ DISTFILES = $(NAME)-$(DISTVERSION)-$(PATCHLEVEL).tar.bz2 DISTFILES += CSWruby.cswreleasenotes +DISTFILES += CSWrubydoc.cswreleasenotes # See: http://rubyforge.org/tracker/index.php?func=detail&aid=17607&group_id=426&atid=1698 PATCHFILES = rdoc_parse_order_fix.patch @@ -129,6 +130,7 @@ CHECKPKG_OVERRIDES_CSWruby += file-with-bad-content|/usr/local|root/opt/csw/lib/ruby/1.8/fileutils.rb CHECKPKG_OVERRIDES_CSWruby += file-with-bad-content|/usr/local|root/opt/csw/share/man/man1/ruby.1 CHECKPKG_OVERRIDES_CSWruby += file-with-bad-content|/usr/local|root/opt/csw/bin/ri +CHECKPKG_OVERRIDES_CSWrubydoc += file-with-bad-content|/usr/local include gar/category.mk Added: csw/mgar/pkg/ruby18/trunk/files/CSWrubydoc.cswreleasenotes =================================================================== --- csw/mgar/pkg/ruby18/trunk/files/CSWrubydoc.cswreleasenotes (rev 0) +++ csw/mgar/pkg/ruby18/trunk/files/CSWrubydoc.cswreleasenotes 2011-02-22 23:11:06 UTC (rev 13445) @@ -0,0 +1,2 @@ +* /usr/local overrides in checkpkg: + - it's all sample stuff This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Wed Feb 23 09:53:31 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Wed, 23 Feb 2011 08:53:31 +0000 Subject: [csw-devel] SF.net SVN: gar:[13446] csw/mgar/pkg/ruby18/trunk/Makefile Message-ID: Revision: 13446 http://gar.svn.sourceforge.net/gar/?rev=13446&view=rev Author: bdwalton Date: 2011-02-23 08:53:31 +0000 (Wed, 23 Feb 2011) Log Message: ----------- ruby18/trunk: update gdbm dep to be on just the lib part after new split was made Modified Paths: -------------- csw/mgar/pkg/ruby18/trunk/Makefile Modified: csw/mgar/pkg/ruby18/trunk/Makefile =================================================================== --- csw/mgar/pkg/ruby18/trunk/Makefile 2011-02-22 23:11:06 UTC (rev 13445) +++ csw/mgar/pkg/ruby18/trunk/Makefile 2011-02-23 08:53:31 UTC (rev 13446) @@ -7,7 +7,7 @@ TEST_SCRIPTS = TEST_ARGS = test-all -BUILD_DEP_PKGS = CSWbdb48devel CSWgdbm CSWcoreutils CSWiconv CSWncurses +BUILD_DEP_PKGS = CSWbdb48devel CSWlibgdbm3 CSWcoreutils CSWiconv CSWncurses BUILD_DEP_PKGS += CSWreadline CSWzlib CSWossldevel PACKAGES = CSWruby CSWrubydoc CSWrubytk CSWrubydev CSWrubymode CSWrubymode-el This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Wed Feb 23 10:33:43 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Wed, 23 Feb 2011 09:33:43 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[322] gar-wrapper/mgar Message-ID: Revision: 322 http://opencsw.svn.sourceforge.net/opencsw/?rev=322&view=rev Author: skayser Date: 2011-02-23 09:33:42 +0000 (Wed, 23 Feb 2011) Log Message: ----------- mgar: commit WIP for importing an existing GAR tree Modified Paths: -------------- gar-wrapper/mgar Modified: gar-wrapper/mgar =================================================================== --- gar-wrapper/mgar 2011-02-22 17:42:44 UTC (rev 321) +++ gar-wrapper/mgar 2011-02-23 09:33:42 UTC (rev 322) @@ -161,16 +161,29 @@ return 0 } +# WIP stub for re-using an existing GAR tree instead of checking out a full one +function convert_existing_buildtree { + __buildtree="$1" + echo "Checking for and removing obsolete gar links from the package build tree." + find $__buildtree \ + -name work -prune -o -name cookies -prune -o \ + -type s -name gar | grep /gar$ | xargs rm + #if [ "$1" == "--use-existing" ]; then { shift; __fullco=0; } || { shift; __fullco=1; } +} + function init_buildtree { __buildtree="$1" + if [ -a "$__buildtree" ]; then echo "The directory $__buildtree already exists. Please remove it." >&2 exit 2 fi + + echo "Initializing the package build tree at $__buildtree" mkdir -p $__buildtree/.buildsys - echo "Initializing the package build tree at $__buildtree" svn co $GAR_REPO "$__buildtree/.buildsys" svn co --depth empty $PKG_REPO "$__buildtree" + echo echo "Initialized the package build tree at $__buildtree." echo "Registering the package build tree location in ~/.garrc" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Wed Feb 23 10:35:59 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Wed, 23 Feb 2011 09:35:59 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[323] gar-wrapper/mgar Message-ID: Revision: 323 http://opencsw.svn.sourceforge.net/opencsw/?rev=323&view=rev Author: skayser Date: 2011-02-23 09:35:58 +0000 (Wed, 23 Feb 2011) Log Message: ----------- mgar: fix $PATH handling for assert_required_tools (thanks bwalton) Modified Paths: -------------- gar-wrapper/mgar Modified: gar-wrapper/mgar =================================================================== --- gar-wrapper/mgar 2011-02-23 09:33:42 UTC (rev 322) +++ gar-wrapper/mgar 2011-02-23 09:35:58 UTC (rev 323) @@ -56,7 +56,7 @@ function assert_required_tools { for tool in $REQ_TOOLS; do - for dir in ${PATH/:/ /}; do + for dir in ${PATH//:/ }; do [ -x $dir/$tool ] && continue 2 done This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Wed Feb 23 10:57:16 2011 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Wed, 23 Feb 2011 09:57:16 +0000 Subject: [csw-devel] SF.net SVN: gar:[13447] csw/mgar/pkg/bind/trunk Message-ID: Revision: 13447 http://gar.svn.sourceforge.net/gar/?rev=13447&view=rev Author: bonivart Date: 2011-02-23 09:57:16 +0000 (Wed, 23 Feb 2011) Log Message: ----------- bind/trunk: update to 9.7.3 Modified Paths: -------------- csw/mgar/pkg/bind/trunk/Makefile csw/mgar/pkg/bind/trunk/checksums Modified: csw/mgar/pkg/bind/trunk/Makefile =================================================================== --- csw/mgar/pkg/bind/trunk/Makefile 2011-02-23 08:53:31 UTC (rev 13446) +++ csw/mgar/pkg/bind/trunk/Makefile 2011-02-23 09:57:16 UTC (rev 13447) @@ -2,15 +2,15 @@ # owner/group for device files? (root:sys) NAME = bind -VERSION = 9.7.2 +VERSION = 9.7.3 CATEGORIES = net # Enable these for Px-releases -RELEASE = P3 -DISTVERSION = $(VERSION)-$(RELEASE) -SPKG_VERSION = $(VERSION)$(RELEASE) -DISTNAME = $(NAME)-$(VERSION)-$(RELEASE) -WORKSRC = $(WORKDIR)/$(DISTNAME) +#RELEASE = P3 +#DISTVERSION = $(VERSION)-$(RELEASE) +#SPKG_VERSION = $(VERSION)$(RELEASE) +#DISTNAME = $(NAME)-$(VERSION)-$(RELEASE) +#WORKSRC = $(WORKDIR)/$(DISTNAME) DESCRIPTION = ISC BIND DNS reference implementation define BLURB @@ -21,12 +21,12 @@ endef # Enable these for Px-releases -MASTER_SITES = http://ftp.isc.org/isc/bind9/$(VERSION)-$(RELEASE)/ -DISTFILES = $(DISTNAME).tar.gz +#MASTER_SITES = http://ftp.isc.org/isc/bind9/$(VERSION)-$(RELEASE)/ +#DISTFILES = $(DISTNAME).tar.gz # Disable these for Px-releases -#MASTER_SITES = http://ftp.isc.org/isc/bind9/$(VERSION)/ -#DISTFILES = $(NAME)-$(VERSION).tar.gz +MASTER_SITES = http://ftp.isc.org/isc/bind9/$(VERSION)/ +DISTFILES = $(NAME)-$(VERSION).tar.gz DISTFILES += CSWbindchroot.postinstall @@ -36,7 +36,6 @@ CATALOGNAME_CSWbindutils = bind_utils CATALOGNAME_CSWbindchroot = bind_chroot -ARCHALL_CSWbinddevel = 1 ARCHALL_CSWbindchroot = 1 LICENSE = COPYRIGHT @@ -48,7 +47,7 @@ SPKG_DESC_CSWbindchroot = ISC BIND DNS chroot package RUNTIME_DEP_PKGS_CSWbind = CSWlibbind CSWbindutils CSWiconv CSWlibxml2 CSWosslrt CSWzlib -RUNTIME_DEP_PKGS_CSWbinddevel = CSWbind +RUNTIME_DEP_PKGS_CSWbinddevel = CSWbind CSWlibbind RUNTIME_DEP_PKGS_CSWlibbind = CSWiconv CSWlibxml2 CSWosslrt CSWzlib RUNTIME_DEP_PKGS_CSWbindutils = CSWlibbind CSWiconv CSWlibxml2 CSWosslrt CSWzlib RUNTIME_DEP_PKGS_CSWbindchroot = CSWbind @@ -89,9 +88,10 @@ SPKG_SOURCEURL = http://www.isc.org/software/bind CHECKPKG_OVERRIDES_CSWbind += surplus-dependency|CSWbindutils -CHECKPKG_OVERRIDES_CSWbindchroot += surplus-dependency|CSWbind -CHECKPKG_OVERRIDES_CSWbinddevel += archall-devel-package -CHECKPKG_OVERRIDES_CSWlibbind += non-uniform-lib-versions-in-package|sonames=['libbind9.so.60',|'libdns.so.69',|'libisc.so.62',|'libisccc.so.60',|'libisccfg.so.62',|'liblwres.so.60'] +CHECKPKG_OVERRIDES_CSWlibbind += non-uniform-lib-versions-in-package|sonames=libbind9.so.60,libdns.so.69,libisc.so.62,libisccc.so.60,libisccfg.so.62,liblwres.so.60 +CHECKPKG_OVERRIDES_CSWbindchroot += catalogname-does-not-match-pkgname|pkgname=CSWbindchroot|catalogname=bind_chroot|expected-catalogname=bindchroot +CHECKPKG_OVERRIDES_CSWbindutils += catalogname-does-not-match-pkgname|pkgname=CSWbindutils|catalogname=bind_utils|expected-catalogname=bindutils +CHECKPKG_OVERRIDES_CSWbinddevel += catalogname-does-not-match-pkgname|pkgname=CSWbinddevel|catalogname=bind_devel|expected-catalogname=binddevel include gar/category.mk Modified: csw/mgar/pkg/bind/trunk/checksums =================================================================== --- csw/mgar/pkg/bind/trunk/checksums 2011-02-23 08:53:31 UTC (rev 13446) +++ csw/mgar/pkg/bind/trunk/checksums 2011-02-23 09:57:16 UTC (rev 13447) @@ -1 +1 @@ -b4537cbae38b2daef36775bf49f33db9 bind-9.7.2-P3.tar.gz +207477c4cf95f2db5be0ded8a22669e0 bind-9.7.3.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 23 13:30:03 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 23 Feb 2011 12:30:03 +0000 Subject: [csw-devel] SF.net SVN: gar:[13448] csw/mgar/pkg/cpan Message-ID: Revision: 13448 http://gar.svn.sourceforge.net/gar/?rev=13448&view=rev Author: dmichelsen Date: 2011-02-23 12:30:02 +0000 (Wed, 23 Feb 2011) Log Message: ----------- cpan/HTTP-Server-Simple-PSGI: Initial commit Added Paths: ----------- csw/mgar/pkg/cpan/HTTP-Server-Simple-PSGI/ csw/mgar/pkg/cpan/HTTP-Server-Simple-PSGI/branches/ csw/mgar/pkg/cpan/HTTP-Server-Simple-PSGI/tags/ csw/mgar/pkg/cpan/HTTP-Server-Simple-PSGI/trunk/ csw/mgar/pkg/cpan/HTTP-Server-Simple-PSGI/trunk/Makefile csw/mgar/pkg/cpan/HTTP-Server-Simple-PSGI/trunk/checksums csw/mgar/pkg/cpan/HTTP-Server-Simple-PSGI/trunk/files/ Property changes on: csw/mgar/pkg/cpan/HTTP-Server-Simple-PSGI/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/cpan/HTTP-Server-Simple-PSGI/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/HTTP-Server-Simple-PSGI/trunk/Makefile (rev 0) +++ csw/mgar/pkg/cpan/HTTP-Server-Simple-PSGI/trunk/Makefile 2011-02-23 12:30:02 UTC (rev 13448) @@ -0,0 +1,18 @@ +NAME = HTTP-Server-Simple-PSGI +VERSION = 0.14 +CATEGORIES = cpan +AUTHOR = MIYAGAWA + +DESCRIPTION = PSGI handler for HTTP::Server::Simple +define BLURB +endef + +PACKAGES += CSWpm-http-server-simple-psgi +CATALOGNAME_CSWpm-http-server-simple-psgi = pm_http_server_simple_psgi +ARCHALL_CSWpm-http-server-simple-psgi = 1 +RUNTIME_DEP_PKGS_CSWpm-http-server-simple-psgi = CSWpmhttpsvrsimp + +# License is really unknown +CHECKPKG_OVERRIDES_CSWpm-http-server-simple-psgi += license-missing|/opt/csw/share/doc/pm_http_server_simple_psgi/license + +include gar/category.mk Added: csw/mgar/pkg/cpan/HTTP-Server-Simple-PSGI/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/HTTP-Server-Simple-PSGI/trunk/checksums (rev 0) +++ csw/mgar/pkg/cpan/HTTP-Server-Simple-PSGI/trunk/checksums 2011-02-23 12:30:02 UTC (rev 13448) @@ -0,0 +1 @@ +c26795112c9f616dbd37ece1c5895b55 HTTP-Server-Simple-PSGI-0.14.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 23 13:46:17 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 23 Feb 2011 12:46:17 +0000 Subject: [csw-devel] SF.net SVN: gar:[13449] csw/mgar/pkg/cpan/HTTP-Body/trunk Message-ID: Revision: 13449 http://gar.svn.sourceforge.net/gar/?rev=13449&view=rev Author: dmichelsen Date: 2011-02-23 12:46:17 +0000 (Wed, 23 Feb 2011) Log Message: ----------- cpan/HTTP-Body: Update to 1.11, mGAR v2 and perl-dublin naming Modified Paths: -------------- csw/mgar/pkg/cpan/HTTP-Body/trunk/Makefile csw/mgar/pkg/cpan/HTTP-Body/trunk/checksums Removed Paths: ------------- csw/mgar/pkg/cpan/HTTP-Body/trunk/files/CSWpmhttpbody.depend csw/mgar/pkg/cpan/HTTP-Body/trunk/files/CSWpmhttpbody.gspec csw/mgar/pkg/cpan/HTTP-Body/trunk/files/CSWpmhttpbody.prototype Modified: csw/mgar/pkg/cpan/HTTP-Body/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/HTTP-Body/trunk/Makefile 2011-02-23 12:30:02 UTC (rev 13448) +++ csw/mgar/pkg/cpan/HTTP-Body/trunk/Makefile 2011-02-23 12:46:17 UTC (rev 13449) @@ -1,14 +1,20 @@ NAME = HTTP-Body -VERSION = 0.5 +VERSION = 1.11 CATEGORIES = cpan -AUTHOR = SRI +AUTHOR = GETTY DESCRIPTION = HTTP Body Parser define BLURB - HTTP Body Parser. endef -DISTFILES += $(call admfiles,CSWpmhttpbody,depend prototype) -DEPENDS += cpan/YAML +BUILD_DEP_PKGS += CSWpmtestdeep +PACKAGES += CSWpm-http-body +CATALOGNAME_CSWpm-http-body = pm_http_body +ARCHALL_CSWpm-http-body = 1 +RUNTIME_DEP_PKGS_CSWpm-http-body = CSWpmlibwww + +# License is really unknown +CHECKPKG_OVERRIDES_CSWpm-http-body += license-missing|/opt/csw/share/doc/pm_http_body/license + include gar/category.mk Modified: csw/mgar/pkg/cpan/HTTP-Body/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/HTTP-Body/trunk/checksums 2011-02-23 12:30:02 UTC (rev 13448) +++ csw/mgar/pkg/cpan/HTTP-Body/trunk/checksums 2011-02-23 12:46:17 UTC (rev 13449) @@ -1,4 +1 @@ -bc6cc02a0b938316c8ae685246f62a35 download/CSWpmhttpbody.gspec -6e0d583c86d7f74b43769810714242aa download/CSWpmhttpbody.depend -d067321e14e90ad4e2c873da211103d4 download/CSWpmhttpbody.prototype -83fe5418ef517962f4f6bbcd282d15d6 download/HTTP-Body-0.5.tar.gz +c425c9a179dfac73891dee8cad556825 HTTP-Body-1.11.tar.gz Deleted: csw/mgar/pkg/cpan/HTTP-Body/trunk/files/CSWpmhttpbody.depend =================================================================== Deleted: csw/mgar/pkg/cpan/HTTP-Body/trunk/files/CSWpmhttpbody.gspec =================================================================== --- csw/mgar/pkg/cpan/HTTP-Body/trunk/files/CSWpmhttpbody.gspec 2011-02-23 12:30:02 UTC (rev 13448) +++ csw/mgar/pkg/cpan/HTTP-Body/trunk/files/CSWpmhttpbody.gspec 2011-02-23 12:46:17 UTC (rev 13449) @@ -1,7 +0,0 @@ -%var bitname pm_httpbody -%var pkgname CSWpmhttpbody -%var arch all -%include url file://%{PKGLIB}/csw_cpan.gspec -%copyright -This library is free software. You can redistribute it and/or modify -it under the same terms as perl itself. Deleted: csw/mgar/pkg/cpan/HTTP-Body/trunk/files/CSWpmhttpbody.prototype =================================================================== --- csw/mgar/pkg/cpan/HTTP-Body/trunk/files/CSWpmhttpbody.prototype 2011-02-23 12:30:02 UTC (rev 13448) +++ csw/mgar/pkg/cpan/HTTP-Body/trunk/files/CSWpmhttpbody.prototype 2011-02-23 12:46:17 UTC (rev 13449) @@ -1,23 +0,0 @@ -d none /opt/csw/lib 0755 root bin -d none /opt/csw/lib/perl 0755 root bin -d none /opt/csw/lib/perl/csw 0755 root bin -d none /opt/csw/lib/perl/csw/auto 0755 root bin -d none /opt/csw/lib/perl/csw/auto/HTTP 0755 root bin -d none /opt/csw/lib/perl/csw/auto/HTTP/Body 0755 root bin -f none /opt/csw/lib/perl/csw/auto/HTTP/Body/.packlist 0644 root bin -d none /opt/csw/share 0755 root bin -d none /opt/csw/share/man 0755 root bin -d none /opt/csw/share/man/man1 0755 root bin -d none /opt/csw/share/man/man3 0755 root bin -f none /opt/csw/share/man/man3/HTTP::Body.3perl 0444 root bin -f none /opt/csw/share/man/man3/HTTP::Body::MultiPart.3perl 0444 root bin -f none /opt/csw/share/man/man3/HTTP::Body::OctetStream.3perl 0444 root bin -f none /opt/csw/share/man/man3/HTTP::Body::UrlEncoded.3perl 0444 root bin -d none /opt/csw/share/perl 0755 root bin -d none /opt/csw/share/perl/csw 0755 root bin -d none /opt/csw/share/perl/csw/HTTP 0755 root bin -d none /opt/csw/share/perl/csw/HTTP/Body 0755 root bin -f none /opt/csw/share/perl/csw/HTTP/Body.pm 0444 root bin -f none /opt/csw/share/perl/csw/HTTP/Body/MultiPart.pm 0444 root bin -f none /opt/csw/share/perl/csw/HTTP/Body/OctetStream.pm 0444 root bin -f none /opt/csw/share/perl/csw/HTTP/Body/UrlEncoded.pm 0444 root bin This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 23 14:05:19 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 23 Feb 2011 13:05:19 +0000 Subject: [csw-devel] SF.net SVN: gar:[13450] csw/mgar/pkg/cpan Message-ID: Revision: 13450 http://gar.svn.sourceforge.net/gar/?rev=13450&view=rev Author: dmichelsen Date: 2011-02-23 13:05:19 +0000 (Wed, 23 Feb 2011) Log Message: ----------- cpan/Dancer: Initial commit Added Paths: ----------- csw/mgar/pkg/cpan/Dancer/ csw/mgar/pkg/cpan/Dancer/branches/ csw/mgar/pkg/cpan/Dancer/tags/ csw/mgar/pkg/cpan/Dancer/trunk/ csw/mgar/pkg/cpan/Dancer/trunk/Makefile csw/mgar/pkg/cpan/Dancer/trunk/checksums csw/mgar/pkg/cpan/Dancer/trunk/files/ Property changes on: csw/mgar/pkg/cpan/Dancer/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/cpan/Dancer/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Dancer/trunk/Makefile (rev 0) +++ csw/mgar/pkg/cpan/Dancer/trunk/Makefile 2011-02-23 13:05:19 UTC (rev 13450) @@ -0,0 +1,26 @@ +NAME = Dancer +VERSION = 1.3011 +CATEGORIES = cpan +AUTHOR = SUKRIA + +DESCRIPTION = A minimal-effort oriented web application framework +define BLURB +endef + +LICENSE = LICENSE + +PACKAGES += CSWpm-dancer +CATALOGNAME_CSWpm-dancer = pm_dancer +ARCHALL_CSWpm-dancer = 1 +RUNTIME_DEP_PKGS_CSWpm-dancer = CSWpm-http-server-simple-psgi +RUNTIME_DEP_PKGS_CSWpm-dancer = CSWpmuri +RUNTIME_DEP_PKGS_CSWpm-dancer = CSWpm-http-body +RUNTIME_DEP_PKGS_CSWpm-dancer = CSWpmmimetypes +RUNTIME_DEP_PKGS_CSWpm-dancer = CSWpmlibwww + +include gar/category.mk + +post-install-modulated: + -perl -pi -e 's,/usr/local,$(prefix),g' \ + $(DESTDIR)$(prefix)/share/man/man3/Dancer::Deployment.3perl \ + $(DESTDIR)$(prefix)/share/perl/csw/Dancer/Deployment.pod Added: csw/mgar/pkg/cpan/Dancer/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/Dancer/trunk/checksums (rev 0) +++ csw/mgar/pkg/cpan/Dancer/trunk/checksums 2011-02-23 13:05:19 UTC (rev 13450) @@ -0,0 +1 @@ +7336ad38346f3a16191c9f12900f67b6 Dancer-1.3011.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 23 16:37:09 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 23 Feb 2011 15:37:09 +0000 Subject: [csw-devel] SF.net SVN: gar:[13451] csw/mgar/pkg/cpan Message-ID: Revision: 13451 http://gar.svn.sourceforge.net/gar/?rev=13451&view=rev Author: dmichelsen Date: 2011-02-23 15:37:09 +0000 (Wed, 23 Feb 2011) Log Message: ----------- cpan/Test-Requires: Initial commit Added Paths: ----------- csw/mgar/pkg/cpan/Test-Requires/ csw/mgar/pkg/cpan/Test-Requires/branches/ csw/mgar/pkg/cpan/Test-Requires/tags/ csw/mgar/pkg/cpan/Test-Requires/trunk/ csw/mgar/pkg/cpan/Test-Requires/trunk/Makefile csw/mgar/pkg/cpan/Test-Requires/trunk/checksums csw/mgar/pkg/cpan/Test-Requires/trunk/files/ Property changes on: csw/mgar/pkg/cpan/Test-Requires/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/cpan/Test-Requires/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Test-Requires/trunk/Makefile (rev 0) +++ csw/mgar/pkg/cpan/Test-Requires/trunk/Makefile 2011-02-23 15:37:09 UTC (rev 13451) @@ -0,0 +1,17 @@ +NAME = Test-Requires +VERSION = 0.06 +CATEGORIES = cpan +AUTHOR = TOKUHIROM + +DESCRIPTION = Checks to see if the module can be loaded +define BLURB +endef + +PACKAGES += CSWpm-test-requires +CATALOGNAME_CSWpm-test-requires = pm_test_requires +ARCHALL_CSWpm-test-requires = 1 + +# This whole license thing needs to be reworked +CHECKPKG_OVERRIDES_CSWpm-test-requires += license-missing|/opt/csw/share/doc/pm_test_requires/license + +include gar/category.mk Added: csw/mgar/pkg/cpan/Test-Requires/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/Test-Requires/trunk/checksums (rev 0) +++ csw/mgar/pkg/cpan/Test-Requires/trunk/checksums 2011-02-23 15:37:09 UTC (rev 13451) @@ -0,0 +1 @@ +6ce0da3cceadb6420d4c3c5bb69f64db Test-Requires-0.06.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 23 16:48:12 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 23 Feb 2011 15:48:12 +0000 Subject: [csw-devel] SF.net SVN: gar:[13452] csw/mgar/pkg/cpan Message-ID: Revision: 13452 http://gar.svn.sourceforge.net/gar/?rev=13452&view=rev Author: dmichelsen Date: 2011-02-23 15:48:11 +0000 (Wed, 23 Feb 2011) Log Message: ----------- cpan/Hash-MultiValue: Initial commit Added Paths: ----------- csw/mgar/pkg/cpan/Hash-MultiValue/ csw/mgar/pkg/cpan/Hash-MultiValue/branches/ csw/mgar/pkg/cpan/Hash-MultiValue/tags/ csw/mgar/pkg/cpan/Hash-MultiValue/trunk/ csw/mgar/pkg/cpan/Hash-MultiValue/trunk/Makefile csw/mgar/pkg/cpan/Hash-MultiValue/trunk/checksums csw/mgar/pkg/cpan/Hash-MultiValue/trunk/files/ Property changes on: csw/mgar/pkg/cpan/Hash-MultiValue/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/cpan/Hash-MultiValue/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Hash-MultiValue/trunk/Makefile (rev 0) +++ csw/mgar/pkg/cpan/Hash-MultiValue/trunk/Makefile 2011-02-23 15:48:11 UTC (rev 13452) @@ -0,0 +1,16 @@ +NAME = Hash-MultiValue +VERSION = 0.08 +CATEGORIES = cpan +AUTHOR = MIYAGAWA + +DESCRIPTION = Store multiple values per key +define BLURB +endef + +LICENSE = README + +PACKAGES += CSWpm-hash-multivalue +CATALOGNAME_CSWpm-hash-multivalue = pm_hash_multivalue +ARCHALL_CSWpm-hash-multivalue = 1 + +include gar/category.mk Added: csw/mgar/pkg/cpan/Hash-MultiValue/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/Hash-MultiValue/trunk/checksums (rev 0) +++ csw/mgar/pkg/cpan/Hash-MultiValue/trunk/checksums 2011-02-23 15:48:11 UTC (rev 13452) @@ -0,0 +1 @@ +d8e2ae6a0685d52641b3a5de20ae4116 Hash-MultiValue-0.08.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 23 16:48:39 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 23 Feb 2011 15:48:39 +0000 Subject: [csw-devel] SF.net SVN: gar:[13453] csw/mgar/pkg/cpan Message-ID: Revision: 13453 http://gar.svn.sourceforge.net/gar/?rev=13453&view=rev Author: dmichelsen Date: 2011-02-23 15:48:38 +0000 (Wed, 23 Feb 2011) Log Message: ----------- cpan/Try-Tiny: Initial commit Added Paths: ----------- csw/mgar/pkg/cpan/Try-Tiny/ csw/mgar/pkg/cpan/Try-Tiny/branches/ csw/mgar/pkg/cpan/Try-Tiny/tags/ csw/mgar/pkg/cpan/Try-Tiny/trunk/ csw/mgar/pkg/cpan/Try-Tiny/trunk/Makefile csw/mgar/pkg/cpan/Try-Tiny/trunk/checksums csw/mgar/pkg/cpan/Try-Tiny/trunk/files/ Property changes on: csw/mgar/pkg/cpan/Try-Tiny/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/cpan/Try-Tiny/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Try-Tiny/trunk/Makefile (rev 0) +++ csw/mgar/pkg/cpan/Try-Tiny/trunk/Makefile 2011-02-23 15:48:38 UTC (rev 13453) @@ -0,0 +1,18 @@ +NAME = Try-Tiny +VERSION = 0.09 +CATEGORIES = cpan +AUTHOR = DOY + +DESCRIPTION = Minimal try/catch with proper localization of errors +define BLURB +endef + +PACKAGES += CSWpm-try-tiny +CATALOGNAME_CSWpm-try-tiny = pm_try_tiny +# There was no information if this is pure Perl or not. Please remove if necessary. +ARCHALL_CSWpm-try-tiny = 1 + +# Licenses need to be redone +CHECKPKG_OVERRIDES_CSWpm-try-tiny += license-missing|/opt/csw/share/doc/pm_try_tiny/license + +include gar/category.mk Added: csw/mgar/pkg/cpan/Try-Tiny/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/Try-Tiny/trunk/checksums (rev 0) +++ csw/mgar/pkg/cpan/Try-Tiny/trunk/checksums 2011-02-23 15:48:38 UTC (rev 13453) @@ -0,0 +1 @@ +e526aa7d80cbc690c4a20925a592c13c Try-Tiny-0.09.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 23 16:55:47 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 23 Feb 2011 15:55:47 +0000 Subject: [csw-devel] SF.net SVN: gar:[13454] csw/mgar/pkg/cpan Message-ID: Revision: 13454 http://gar.svn.sourceforge.net/gar/?rev=13454&view=rev Author: dmichelsen Date: 2011-02-23 15:55:46 +0000 (Wed, 23 Feb 2011) Log Message: ----------- cpan/Test-SharedFork: Initial commit Added Paths: ----------- csw/mgar/pkg/cpan/Test-SharedFork/ csw/mgar/pkg/cpan/Test-SharedFork/branches/ csw/mgar/pkg/cpan/Test-SharedFork/tags/ csw/mgar/pkg/cpan/Test-SharedFork/trunk/ csw/mgar/pkg/cpan/Test-SharedFork/trunk/Makefile csw/mgar/pkg/cpan/Test-SharedFork/trunk/checksums csw/mgar/pkg/cpan/Test-SharedFork/trunk/files/ Property changes on: csw/mgar/pkg/cpan/Test-SharedFork/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/cpan/Test-SharedFork/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Test-SharedFork/trunk/Makefile (rev 0) +++ csw/mgar/pkg/cpan/Test-SharedFork/trunk/Makefile 2011-02-23 15:55:46 UTC (rev 13454) @@ -0,0 +1,17 @@ +NAME = Test-SharedFork +VERSION = 0.16 +CATEGORIES = cpan +AUTHOR = TOKUHIROM + +DESCRIPTION = fork test +define BLURB +endef + +LICENSE = README + +PACKAGES += CSWpm-test-sharedfork +CATALOGNAME_CSWpm-test-sharedfork = pm_test_sharedfork +# There was no information if this is pure Perl or not. Please remove if necessary. +ARCHALL_CSWpm-test-sharedfork = 1 + +include gar/category.mk Added: csw/mgar/pkg/cpan/Test-SharedFork/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/Test-SharedFork/trunk/checksums (rev 0) +++ csw/mgar/pkg/cpan/Test-SharedFork/trunk/checksums 2011-02-23 15:55:46 UTC (rev 13454) @@ -0,0 +1 @@ +ee0469b14d48bbd651f2ec5465f61a52 Test-SharedFork-0.16.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 23 21:04:40 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 23 Feb 2011 20:04:40 +0000 Subject: [csw-devel] SF.net SVN: gar:[13455] csw/mgar/pkg/cpan/Devel-StackTrace/trunk Message-ID: Revision: 13455 http://gar.svn.sourceforge.net/gar/?rev=13455&view=rev Author: dmichelsen Date: 2011-02-23 20:04:40 +0000 (Wed, 23 Feb 2011) Log Message: ----------- cpan/Devel-Stacktrace: Update to 1.27 and perl-dublin naming Modified Paths: -------------- csw/mgar/pkg/cpan/Devel-StackTrace/trunk/Makefile csw/mgar/pkg/cpan/Devel-StackTrace/trunk/checksums Modified: csw/mgar/pkg/cpan/Devel-StackTrace/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Devel-StackTrace/trunk/Makefile 2011-02-23 15:55:46 UTC (rev 13454) +++ csw/mgar/pkg/cpan/Devel-StackTrace/trunk/Makefile 2011-02-23 20:04:40 UTC (rev 13455) @@ -1,19 +1,19 @@ NAME = Devel-StackTrace -VERSION = 1.22 +VERSION = 1.27 CATEGORIES = cpan AUTHOR = DROLSKY -DESCRIPTION = Stack trace and stack trace frame objects +DESCRIPTION = An object representing a stack trace define BLURB - The Devel::StackTrace module contains two classes, Devel::StackTrace and - Devel::StackTraceFrame. The goal of this object is to encapsulate the - information that can found through using the caller() function, as well as - providing a simple interface to this data. endef -PACKAGES = CSWpmdevstacktrace -CATALOGNAME = pm_devstacktrace +LICENSE = LICENSE -ARCHALL = 1 +PACKAGES += CSWpm-devel-stacktrace +CATALOGNAME_CSWpm-devel-stacktrace = pm_devel_stacktrace +SPKG_DESC_CSWpm-devel-stacktrace = $(DESCRIPTION) +ARCHALL_CSWpm-devel-stacktrace = 1 +OBSOLETES_CSWpm-devel-stacktrace = CSWpmdevstacktrace +CATALOGNAME_CSWpmdevstacktrace = pm_devstacktrace include gar/category.mk Modified: csw/mgar/pkg/cpan/Devel-StackTrace/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/Devel-StackTrace/trunk/checksums 2011-02-23 15:55:46 UTC (rev 13454) +++ csw/mgar/pkg/cpan/Devel-StackTrace/trunk/checksums 2011-02-23 20:04:40 UTC (rev 13455) @@ -1 +1 @@ -e114310258a893ac3454fb0b36a57166 download/Devel-StackTrace-1.22.tar.gz +72ba07f2dc0331d8ce3c028cc66cf20d Devel-StackTrace-1.27.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 23 21:07:13 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 23 Feb 2011 20:07:13 +0000 Subject: [csw-devel] SF.net SVN: gar:[13456] csw/mgar/pkg/cpan Message-ID: Revision: 13456 http://gar.svn.sourceforge.net/gar/?rev=13456&view=rev Author: dmichelsen Date: 2011-02-23 20:07:13 +0000 (Wed, 23 Feb 2011) Log Message: ----------- cpan/Test-TCP: Initial commit Added Paths: ----------- csw/mgar/pkg/cpan/Test-TCP/ csw/mgar/pkg/cpan/Test-TCP/branches/ csw/mgar/pkg/cpan/Test-TCP/tags/ csw/mgar/pkg/cpan/Test-TCP/trunk/ csw/mgar/pkg/cpan/Test-TCP/trunk/Makefile csw/mgar/pkg/cpan/Test-TCP/trunk/checksums csw/mgar/pkg/cpan/Test-TCP/trunk/files/ Property changes on: csw/mgar/pkg/cpan/Test-TCP/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/cpan/Test-TCP/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Test-TCP/trunk/Makefile (rev 0) +++ csw/mgar/pkg/cpan/Test-TCP/trunk/Makefile 2011-02-23 20:07:13 UTC (rev 13456) @@ -0,0 +1,22 @@ +NAME = Test-TCP +VERSION = 1.11 +CATEGORIES = cpan +AUTHOR = TOKUHIROM + +DESCRIPTION = testing TCP program +define BLURB +endef + +PACKAGES += CSWpm-test-tcp +CATALOGNAME_CSWpm-test-tcp = pm_test_tcp +# There was no information if this is pure Perl or not. Please remove if necessary. +ARCHALL_CSWpm-test-tcp = 1 +RUNTIME_DEP_PKGS_CSWpm-test-tcp = CSWpm-test-sharedfork + +# This has not been released yet +CHECKPKG_OVERRIDES_CSWpm-test-tcp += license-missing|/opt/csw/share/doc/pm_test_tcp/license + +# There really is no license +CHECKPKG_OVERRIDES_CSWpm-test-tcp += unidentified-dependency|CSWpm-test-sharedfork + +include gar/category.mk Added: csw/mgar/pkg/cpan/Test-TCP/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/Test-TCP/trunk/checksums (rev 0) +++ csw/mgar/pkg/cpan/Test-TCP/trunk/checksums 2011-02-23 20:07:13 UTC (rev 13456) @@ -0,0 +1 @@ +9dd3f0e3f4a8e2fb697180492418ac8c Test-TCP-1.11.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 23 21:13:29 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 23 Feb 2011 20:13:29 +0000 Subject: [csw-devel] SF.net SVN: gar:[13457] csw/mgar/pkg/cpan Message-ID: Revision: 13457 http://gar.svn.sourceforge.net/gar/?rev=13457&view=rev Author: dmichelsen Date: 2011-02-23 20:13:28 +0000 (Wed, 23 Feb 2011) Log Message: ----------- cpan/Filesys-Notify-Simple: Initial commit Added Paths: ----------- csw/mgar/pkg/cpan/Filesys-Notify-Simple/ csw/mgar/pkg/cpan/Filesys-Notify-Simple/branches/ csw/mgar/pkg/cpan/Filesys-Notify-Simple/tags/ csw/mgar/pkg/cpan/Filesys-Notify-Simple/trunk/ csw/mgar/pkg/cpan/Filesys-Notify-Simple/trunk/Makefile csw/mgar/pkg/cpan/Filesys-Notify-Simple/trunk/checksums csw/mgar/pkg/cpan/Filesys-Notify-Simple/trunk/files/ Property changes on: csw/mgar/pkg/cpan/Filesys-Notify-Simple/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/cpan/Filesys-Notify-Simple/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Filesys-Notify-Simple/trunk/Makefile (rev 0) +++ csw/mgar/pkg/cpan/Filesys-Notify-Simple/trunk/Makefile 2011-02-23 20:13:28 UTC (rev 13457) @@ -0,0 +1,17 @@ +NAME = Filesys-Notify-Simple +VERSION = 0.07 +CATEGORIES = cpan +AUTHOR = MIYAGAWA + +DESCRIPTION = Simple and dumb file system watcher +define BLURB +endef + +LICENSE = README + +PACKAGES += CSWpm-filesys-notify-simple +CATALOGNAME_CSWpm-filesys-notify-simple = pm_filesys_notify_simple +# There was no information if this is pure Perl or not. Please remove if necessary. +ARCHALL_CSWpm-filesys-notify-simple = 1 + +include gar/category.mk Added: csw/mgar/pkg/cpan/Filesys-Notify-Simple/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/Filesys-Notify-Simple/trunk/checksums (rev 0) +++ csw/mgar/pkg/cpan/Filesys-Notify-Simple/trunk/checksums 2011-02-23 20:13:28 UTC (rev 13457) @@ -0,0 +1 @@ +4842ff56a79a7db0b779ce21e71bd291 Filesys-Notify-Simple-0.07.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 23 21:23:58 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 23 Feb 2011 20:23:58 +0000 Subject: [csw-devel] SF.net SVN: gar:[13458] csw/mgar/pkg/cpan Message-ID: Revision: 13458 http://gar.svn.sourceforge.net/gar/?rev=13458&view=rev Author: dmichelsen Date: 2011-02-23 20:23:57 +0000 (Wed, 23 Feb 2011) Log Message: ----------- cpan/Devel-StackTrace-AsHTML: Initial commit Added Paths: ----------- csw/mgar/pkg/cpan/Devel-StackTrace-AsHTML/ csw/mgar/pkg/cpan/Devel-StackTrace-AsHTML/branches/ csw/mgar/pkg/cpan/Devel-StackTrace-AsHTML/tags/ csw/mgar/pkg/cpan/Devel-StackTrace-AsHTML/trunk/ csw/mgar/pkg/cpan/Devel-StackTrace-AsHTML/trunk/Makefile csw/mgar/pkg/cpan/Devel-StackTrace-AsHTML/trunk/checksums csw/mgar/pkg/cpan/Devel-StackTrace-AsHTML/trunk/files/ Property changes on: csw/mgar/pkg/cpan/Devel-StackTrace-AsHTML/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/cpan/Devel-StackTrace-AsHTML/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Devel-StackTrace-AsHTML/trunk/Makefile (rev 0) +++ csw/mgar/pkg/cpan/Devel-StackTrace-AsHTML/trunk/Makefile 2011-02-23 20:23:57 UTC (rev 13458) @@ -0,0 +1,18 @@ +NAME = Devel-StackTrace-AsHTML +VERSION = 0.11 +CATEGORIES = cpan +AUTHOR = MIYAGAWA + +DESCRIPTION = Displays stack trace in HTML +define BLURB +endef + +LICENSE = README + +PACKAGES += CSWpm-devel-stacktrace-ashtml +CATALOGNAME_CSWpm-devel-stacktrace-ashtml = pm_devel_stacktrace_ashtml +# There was no information if this is pure Perl or not. Please remove if necessary. +ARCHALL_CSWpm-devel-stacktrace-ashtml = 1 +RUNTIME_DEP_PKGS_CSWpm-devel-stacktrace-ashtml = CSWpmdevstacktrace + +include gar/category.mk Added: csw/mgar/pkg/cpan/Devel-StackTrace-AsHTML/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/Devel-StackTrace-AsHTML/trunk/checksums (rev 0) +++ csw/mgar/pkg/cpan/Devel-StackTrace-AsHTML/trunk/checksums 2011-02-23 20:23:57 UTC (rev 13458) @@ -0,0 +1 @@ +46ff8282d671f63e6a5f48bf45d86bbb Devel-StackTrace-AsHTML-0.11.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 23 21:31:06 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 23 Feb 2011 20:31:06 +0000 Subject: [csw-devel] SF.net SVN: gar:[13459] csw/mgar/pkg/cpan Message-ID: Revision: 13459 http://gar.svn.sourceforge.net/gar/?rev=13459&view=rev Author: dmichelsen Date: 2011-02-23 20:31:06 +0000 (Wed, 23 Feb 2011) Log Message: ----------- cpan/File-ShareDir: Initial commit Added Paths: ----------- csw/mgar/pkg/cpan/File-ShareDir/ csw/mgar/pkg/cpan/File-ShareDir/branches/ csw/mgar/pkg/cpan/File-ShareDir/tags/ csw/mgar/pkg/cpan/File-ShareDir/trunk/ csw/mgar/pkg/cpan/File-ShareDir/trunk/Makefile csw/mgar/pkg/cpan/File-ShareDir/trunk/checksums csw/mgar/pkg/cpan/File-ShareDir/trunk/files/ Property changes on: csw/mgar/pkg/cpan/File-ShareDir/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/cpan/File-ShareDir/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/File-ShareDir/trunk/Makefile (rev 0) +++ csw/mgar/pkg/cpan/File-ShareDir/trunk/Makefile 2011-02-23 20:31:06 UTC (rev 13459) @@ -0,0 +1,22 @@ +NAME = File-ShareDir +VERSION = 1.03 +CATEGORIES = cpan +AUTHOR = ADAMK + +DESCRIPTION = Locate per-dist and per-module shared files +define BLURB +endef + +LICENSE = LICENSE + +PACKAGES += CSWpm-file-sharedir +CATALOGNAME_CSWpm-file-sharedir = pm_file_sharedir +# There was no information if this is pure Perl or not. Please remove if necessary. +ARCHALL_CSWpm-file-sharedir = 1 +RUNTIME_DEP_PKGS_CSWpm-file-sharedir = CSWpmclassinspector + +# These are examples +CHECKPKG_OVERRIDES_CSWpm-file-sharedir += file-with-bad-content|/usr/share|root/opt/csw/share/perl/csw/File/ShareDir.pm +CHECKPKG_OVERRIDES_CSWpm-file-sharedir += file-with-bad-content|/usr/share|root/opt/csw/share/man/man3/File::ShareDir.3perl + +include gar/category.mk Added: csw/mgar/pkg/cpan/File-ShareDir/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/File-ShareDir/trunk/checksums (rev 0) +++ csw/mgar/pkg/cpan/File-ShareDir/trunk/checksums 2011-02-23 20:31:06 UTC (rev 13459) @@ -0,0 +1 @@ +333a0903db23b9097adfbeb37b99d561 File-ShareDir-1.03.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Feb 23 21:58:04 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 23 Feb 2011 20:58:04 +0000 Subject: [csw-devel] SF.net SVN: gar:[13460] csw/mgar/pkg/cpan Message-ID: Revision: 13460 http://gar.svn.sourceforge.net/gar/?rev=13460&view=rev Author: dmichelsen Date: 2011-02-23 20:58:04 +0000 (Wed, 23 Feb 2011) Log Message: ----------- cpan/Plack: Initial commit Added Paths: ----------- csw/mgar/pkg/cpan/Plack/ csw/mgar/pkg/cpan/Plack/branches/ csw/mgar/pkg/cpan/Plack/tags/ csw/mgar/pkg/cpan/Plack/trunk/ csw/mgar/pkg/cpan/Plack/trunk/Makefile csw/mgar/pkg/cpan/Plack/trunk/checksums csw/mgar/pkg/cpan/Plack/trunk/files/ Property changes on: csw/mgar/pkg/cpan/Plack/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/cpan/Plack/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Plack/trunk/Makefile (rev 0) +++ csw/mgar/pkg/cpan/Plack/trunk/Makefile 2011-02-23 20:58:04 UTC (rev 13460) @@ -0,0 +1,31 @@ +NAME = Plack +VERSION = 0.9970 +CATEGORIES = cpan +AUTHOR = MIYAGAWA + +DESCRIPTION = Perl Superglue for Web frameworks and Web Servers (PSGI toolkit) +define BLURB +endef + +BUILD_DEP_PKGS += CSWpm-test-requires + +LICENSE = README + +PACKAGES += CSWpm-plack +CATALOGNAME_CSWpm-plack = pm_plack +# There was no information if this is pure Perl or not. Please remove if necessary. +ARCHALL_CSWpm-plack = 1 +RUNTIME_DEP_PKGS_CSWpm-plack = CSWpm-try-tiny +RUNTIME_DEP_PKGS_CSWpm-plack = CSWpm-hash-multivalue +RUNTIME_DEP_PKGS_CSWpm-plack = CSWpmuri +RUNTIME_DEP_PKGS_CSWpm-plack = CSWpmdevstacktrace +RUNTIME_DEP_PKGS_CSWpm-plack = CSWpm-http-body +RUNTIME_DEP_PKGS_CSWpm-plack = CSWpm-test-tcp +RUNTIME_DEP_PKGS_CSWpm-plack = CSWpm-file-sharedir +RUNTIME_DEP_PKGS_CSWpm-plack = CSWpm-filesys-notify-simple +RUNTIME_DEP_PKGS_CSWpm-plack = CSWpm-devel-stacktrace-ashtml +RUNTIME_DEP_PKGS_CSWpm-plack = CSWpmlibwww + +BUILD_DEP_PKGS += $(RUNTIME_DEP_PKGS_CSWpm-plack) + +include gar/category.mk Added: csw/mgar/pkg/cpan/Plack/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/Plack/trunk/checksums (rev 0) +++ csw/mgar/pkg/cpan/Plack/trunk/checksums 2011-02-23 20:58:04 UTC (rev 13460) @@ -0,0 +1 @@ +c3510e1502925ab1971da10aa4204143 Plack-0.9970.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Wed Feb 23 23:01:51 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Wed, 23 Feb 2011 22:01:51 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[324] web/wordpresscsw/wp-content/themes/opencsw/ qa-gar-missing.php Message-ID: Revision: 324 http://opencsw.svn.sourceforge.net/opencsw/?rev=324&view=rev Author: wbonnet Date: 2011-02-23 22:01:51 +0000 (Wed, 23 Feb 2011) Log Message: ----------- Remove GAR and upstream information for packages missing from gar Modified Paths: -------------- web/wordpresscsw/wp-content/themes/opencsw/qa-gar-missing.php Modified: web/wordpresscsw/wp-content/themes/opencsw/qa-gar-missing.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/qa-gar-missing.php 2011-02-23 09:35:58 UTC (rev 323) +++ web/wordpresscsw/wp-content/themes/opencsw/qa-gar-missing.php 2011-02-23 22:01:51 UTC (rev 324) @@ -28,23 +28,13 @@ $template = "/wp-content/themes/opencsw"; print "

      Packages ( " . count($arrayPkg) . " )

      "; - print "The list of packages uses several icons. Here are the meanings of each icon that may be displayed below :"; - print "
      "; - print "
        "; - print "\"-\"/ Package is not in GAR"; - print "
        "; - print "\"-\"/ uWatch is not activated. Information about upstream version not available"; - print "
        "; - print "\"X\"/ uWatch reported an error while checking upstream site"; - print "
        "; - print "
      "; print "
      NameLast packaging activityMost recently updated packageLast bug tracker activityNameLast packaging activityLast bug tracker activity
      " . $maint["fullname"] . "-The maintainer has no package" . $maint["fullname"] . "The maintainer has no package" . $maint["fullname"] . "" . $lastActivityInfo[0]["date"] . "" . $lastActivityInfo[0]["software"] . "" . $maint["fullname"] . "No activity information" . $maint["fullname"] . "" . $lastActivityInfo[0]["date"] . " (" . $lastActivityInfo[0]["software"] . ")No bug tracker activity information
      "; print ""; print ""; - print ""; + print ""; print ""; print ""; - print ""; + print ""; print ""; // Initialize global counter @@ -106,8 +96,6 @@ $testingVersion = empty($versionInfo["testingVersion"]) ? "-" : $versionInfo["testingVersion"]; $stableVersion = empty($versionInfo["stableVersion"]) ? "-" : $versionInfo["stableVersion"]; $unstableVersion = empty($versionInfo["unstableVersion"]) ? "-" : $versionInfo["unstableVersion"]; - $garVersion = empty($versionInfo["garVersion"]) ? "-" : $versionInfo["garVersion"]; - $upstreamVersion = empty($versionInfo["upstreamVersion"]) ? "-" : $versionInfo["upstreamVersion"]; // Display catalog version information if ( $stableVersion == $testingVersion ) { @@ -127,44 +115,6 @@ } } - $garHighlightOn = ""; - $garHighlightOff = ""; - if ( ( $garVersion <> $unstableVersion ) && ( ! empty($versionInfo["garVersion"]) ) ) { - $packageToRelease++; - $garHighlightOn=""; - $garHighlightOff=""; - } - - // Test if the package exists in gar - if ( $versionInfo["garPath"] == "") { - print "\n" ; - } else { - // Test if uwatch is deactived - if ( $versionInfo["uwatchActivated"] != 1) { - // Yes thus display GAR info and deactivated icon - print "\n" ; // GAR - print "\n" ; - } else { - // Uwatch is actived, check if there is an error - if ( $versionInfo["lastUpstreamCheckStatus"] != 1) { - // Yes thus display GAR info and deactivated icon - print "\n" ; // GAR - print "\n" ; - } else { - // Display gar version information - if ( ( $garVersion == $upstreamVersion ) && ( ! empty($versionInfo["garVersion"]) ) ) { - print "\n" ; // Same for GAR and upstream - } else { - print "\n" ; // GAR - print "\n" ; // Upstream - if ( ! empty($versionInfo["garVersion"]) ) { - $upgradablePackages++; - } - } - } - } - } print "\n" ; // Lutefisk print "\n" ; // bBuild print "\n" ; // Checkpkg @@ -182,7 +132,6 @@ // Display catalog version information print "\n" ; // Stable - print "\n" ; // Stable print "\n" ; // Stable print "\n" ; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Thu Feb 24 00:11:00 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Wed, 23 Feb 2011 23:11:00 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[325] gar-wrapper/mgar Message-ID: Revision: 325 http://opencsw.svn.sourceforge.net/opencsw/?rev=325&view=rev Author: skayser Date: 2011-02-23 23:11:00 +0000 (Wed, 23 Feb 2011) Log Message: ----------- mgar: add commit to help output Modified Paths: -------------- gar-wrapper/mgar Modified: gar-wrapper/mgar =================================================================== --- gar-wrapper/mgar 2011-02-23 22:01:51 UTC (rev 324) +++ gar-wrapper/mgar 2011-02-23 23:11:00 UTC (rev 325) @@ -331,6 +331,7 @@ clean Reset current directory working files (current platform) spotless Reset the package build directory (all platforms) + commit -m Commit build recipe (prefixes msg with package path) show-srcdir Show the location of the extracted package source show-stagedir Show the location of the package staging directory find-file Find a file within the extracted package source This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Thu Feb 24 00:34:07 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Wed, 23 Feb 2011 23:34:07 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[326] web/wordpresscsw/wp-content/themes/opencsw Message-ID: Revision: 326 http://opencsw.svn.sourceforge.net/opencsw/?rev=326&view=rev Author: wbonnet Date: 2011-02-23 23:34:07 +0000 (Wed, 23 Feb 2011) Log Message: ----------- Add pending packages in GAR Modified Paths: -------------- web/wordpresscsw/wp-content/themes/opencsw/qa.php web/wordpresscsw/wp-content/themes/opencsw/qaDAO.php Added Paths: ----------- web/wordpresscsw/wp-content/themes/opencsw/qa-gar-pending.php Added: web/wordpresscsw/wp-content/themes/opencsw/qa-gar-pending.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/qa-gar-pending.php (rev 0) +++ web/wordpresscsw/wp-content/themes/opencsw/qa-gar-pending.php 2011-02-23 23:34:07 UTC (rev 326) @@ -0,0 +1,133 @@ + + + +connect(); + $qaDAO->connect(); + + print "
      "; + print "
      "; + print "
      "; + print "

      Overview of packages in GAR

      "; + print "
      "; + print "The following list contains all the packages available from GAR which have not yet been release to unstable catalog." ; + + // Retrieve the statistics from the database + $arrayPkg = $qaDAO->getListOfGarPendingPackages(); + + // Disconnect from the database + $template = "/wp-content/themes/opencsw"; + + print "

      Packages ( " . count($arrayPkg) . " )

      "; + print "The list of packages uses several icons. Here are the meanings of each icon that may be displayed below :"; + print "
      "; + print "
        "; + print "\"-\"/ Package is not in GAR"; + print "
        "; + print "\"-\"/ uWatch is not activated. Information about upstream version not available"; + print "
        "; + print "\"X\"/ uWatch reported an error while checking upstream site"; + print "
        "; + print "
      "; + print "
      Software nameBugsVersionuWatchLutefiskuBuildCheckPkgSoftware nameBugsVersionLutefiskuBuildCheckPkg
      CriticalMajorMinorTweakStableTestingUnstableGARUpstreamCriticalMajorMinorTweakStableTestingUnstable
      \"-\"/" . $garHighlightOn . $garVersion . $garHighlightOff . "\"-\"/" . $garHighlightOn . $garVersion . $garHighlightOff . "\"X\"/" . $garHighlightOn . $upstreamVersion . $garHighlightOff. "" . $garHighlightOn . $garVersion . $garHighlightOff . "" . $upstreamVersion . "---To release : $packageToReleaseUpgradable : $upgradablePackages
      "; + print ""; + print ""; + print ""; + print ""; + print ""; + print ""; + print ""; + + // Initialize global counter + $upgradablePackages = 0; + $packageToRelease = 0; + + for( $i = 0 ; $i < count($arrayPkg) ; $i++) { + $package = $arrayPkg[$i] ; // Get the current row + $versionInfoArray = $qaDAO->getPackageVersionInformation($package["software"]); // Retrieve version information from uwatch db + $versionInfo = $versionInfoArray[0]; + print "\n" ; + print ""; + + // Replace empty version by a - + $garVersion = empty($versionInfo["garVersion"]) ? "-" : $versionInfo["garVersion"]; + $upstreamVersion = empty($versionInfo["upstreamVersion"]) ? "-" : $versionInfo["upstreamVersion"]; + + if ( ( $garVersion <> $unstableVersion ) && ( ! empty($versionInfo["garVersion"]) ) ) { + $packageToRelease++; + } + + // Test if the package exists in gar + if ( $versionInfo["garPath"] == "") { + print "\n" ; + } else { + // Test if uwatch is deactived + if ( $versionInfo["uwatchActivated"] != 1) { + // Yes thus display GAR info and deactivated icon + print "\n" ; // GAR + print "\n" ; + } else { + // Uwatch is actived, check if there is an error + if ( $versionInfo["lastUpstreamCheckStatus"] != 1) { + // Yes thus display GAR info and deactivated icon + print "\n" ; // GAR + print "\n" ; + } else { + // Display gar version information + if ( ( $garVersion == $upstreamVersion ) && ( ! empty($versionInfo["garVersion"]) ) ) { + print "\n" ; // Same for GAR and upstream + } else { + print "\n" ; // GAR + print "\n" ; // Upstream + if ( ! empty($versionInfo["garVersion"]) ) { + $upgradablePackages++; + } + } + } + } + } + print "\n" ; // Lutefisk + print "\n" ; // bBuild + print "\n" ; // Checkpkg + print "\n" ; + } + + // Display total bugs + print "\n" ; + print ""; + // Display the counters in the page + print "\n" ; // Critical + print "\n" ; // Major + print "\n" ; // Minor + print "\n" ; // Tweak + + // Display catalog version information + print "\n" ; // Stable + print "\n" ; // Stable + print "\n" ; // Stable + print "\n" ; + + // Close table + print ""; + print "
      Software nameVersionLutefiskuBuildCheckPkg
      GARUpstream
      " . $package["software"] . "\"-\"/" . $garVersion . "\"-\"/" . $garVersion . "\"X\"/" . $upstreamVersion . "" . $garVersion . "" . $upstreamVersion . "---
      Total" . $totalCritical . "" . $totalMajor . "" . $totalMinor . "" . $totalTweak . "To release : $packageToReleaseUpgradable : $upgradablePackages
      "; + print "
      "; + print "
      "; + print ""; + print ""; + print ""; + print ""; +?> + + + Modified: web/wordpresscsw/wp-content/themes/opencsw/qa.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/qa.php 2011-02-23 23:11:00 UTC (rev 325) +++ web/wordpresscsw/wp-content/themes/opencsw/qa.php 2011-02-23 23:34:07 UTC (rev 326) @@ -66,6 +66,12 @@ Packages missing from GAR repository
    + The following link displays the complete list of packages pending in the GAR repository. These packages have not yet been published to unstable catalog. + The following links displays the complete list of packages with uWatch issues. The build descriptions of these packages should be fixed to solves errors reported.
    • Modified: web/wordpresscsw/wp-content/themes/opencsw/qaDAO.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/qaDAO.php 2011-02-23 23:11:00 UTC (rev 325) +++ web/wordpresscsw/wp-content/themes/opencsw/qaDAO.php 2011-02-23 23:34:07 UTC (rev 326) @@ -493,5 +493,36 @@ // Return the array to the caller return $output; // Return the array to the caller } + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Get information about a maintainer + // + // ----------------------------------------------------------------------------------------------------------------------- + function getListOfGarPendingPackages() { + + // Define the query used to retrieve the packages from the database + $sqlQuery = "select PKG_CATALOGNAME, PKG_GAR_VERSION from UWATCH_PKG_VERSION where PKG_GAR_PATH is not null and PKG_UNSTABLE_VERSION is null and PKG_TESTING_VERSION is null and PKG_STABLE_VERSION is null order by PKG_CATALOGNAME" ; + + // Execute the query to retrieve the row to update + $this->execQuery($sqlQuery); + + // Return value + $output = array(); // Array used to store the output + $idxCount = 0; // Index on the current line in the array + + // Check if there is a result + while ($row = mysql_fetch_row($this->result)) { + $output[$idxCount] = array( // Copy the current row into the array of results + "software" => $row[0], // Copy the field into the array of results + "stream_version" => $row[1] + ); + $idxCount++; // Increase the index + } + + // Return the array to the caller + return $output; // Return the array to the caller + } + } ?> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Thu Feb 24 00:36:00 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Wed, 23 Feb 2011 23:36:00 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[327] web/wordpresscsw/wp-content/plugins/opencsw/ opencsw.php Message-ID: Revision: 327 http://opencsw.svn.sourceforge.net/opencsw/?rev=327&view=rev Author: wbonnet Date: 2011-02-23 23:36:00 +0000 (Wed, 23 Feb 2011) Log Message: ----------- Add pending packages in GAR Modified Paths: -------------- web/wordpresscsw/wp-content/plugins/opencsw/opencsw.php Modified: web/wordpresscsw/wp-content/plugins/opencsw/opencsw.php =================================================================== --- web/wordpresscsw/wp-content/plugins/opencsw/opencsw.php 2011-02-23 23:34:07 UTC (rev 326) +++ web/wordpresscsw/wp-content/plugins/opencsw/opencsw.php 2011-02-23 23:36:00 UTC (rev 327) @@ -57,9 +57,8 @@ global $wp_rewrite; global $wp_query; -print_r ($wp_query->query ); - // Initialization of the array containing the rules for url rewriting + // Initialization of the array containing the rules for url rewriting $newRules = array( '^maintainers?/(.+)' => 'index.php?displayMaintainerInfo=1&maintainerName=' . $wp_rewrite->preg_index(1) , '^maintainers$' => 'index.php?maintainers=full' , '^about/maintainers' => 'index.php?maintainers=full' , @@ -78,6 +77,7 @@ '^qa/packages/uwatch/errors?$' => 'index.php?qaUwatchError=full' , '^qa/packages/uwatch/disabled$' => 'index.php?qaUwatchDisabled=full' , '^qa/packages/gar/missing$' => 'index.php?qaGarMissing=full' , + '^qa/packages/gar/pending$' => 'index.php?qaGarPending=full' , '^qa/maintainers/retired' => 'index.php?qaRetiredMaintainers=full' , '^qa/maintainers/activity' => 'index.php?qaMaintainersActivity=full' , @@ -136,6 +136,7 @@ $qvars[] = 'qaUwatchDisabled'; $qvars[] = 'qaUwatchError'; $qvars[] = 'qaGarMissing'; + $qvars[] = 'qaGarPending'; $qvars[] = 'qaPackageWaitingForStable'; $qvars[] = 'qaPackageWaitingForTesting'; $qvars[] = 'qaPackageWaitingForUnstable'; @@ -222,6 +223,18 @@ } } + // Test if the arg qaGarPending is in the query string + if ( $wp_query->get('qaGarPending') ) + { + // Yes, thus we are display a detailled maintainer page, not the full list + if (file_exists( TEMPLATEPATH . '/qa-gar-pending.php' )) + { + // File exist, thus lets include the template + include( TEMPLATEPATH . '/qa-gar-pending.php' ); + exit; + } + } + // Test if the arg maintainers is in the query string if ( $wp_query->get('qaMaintainers') ) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Thu Feb 24 01:04:54 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Thu, 24 Feb 2011 00:04:54 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[328] gar-wrapper/mgar Message-ID: Revision: 328 http://opencsw.svn.sourceforge.net/opencsw/?rev=328&view=rev Author: skayser Date: 2011-02-24 00:04:53 +0000 (Thu, 24 Feb 2011) Log Message: ----------- mgar: add undocumented init-existing command Modified Paths: -------------- gar-wrapper/mgar Modified: gar-wrapper/mgar =================================================================== --- gar-wrapper/mgar 2011-02-23 23:36:00 UTC (rev 327) +++ gar-wrapper/mgar 2011-02-24 00:04:53 UTC (rev 328) @@ -51,7 +51,7 @@ GAR_REPO=https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/ PKG_REPO=https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/pkg/ -REQ_TOOLS="gfind ggrep gmake mknmz namazu svn" +REQ_TOOLS="gfind ggrep gmake gxargs mknmz namazu svn" REQ_PKGS="findutils ggrep gmake namazu svn" function assert_required_tools { @@ -161,14 +161,32 @@ return 0 } -# WIP stub for re-using an existing GAR tree instead of checking out a full one +# Undocumented function to ease the migration of existing local build trees +# for existing GAR (non-mgar) users. Not intended to stay here forever. function convert_existing_buildtree { __buildtree="$1" - echo "Checking for and removing obsolete gar links from the package build tree." + + [ -f $__buildtree/Makefile ] || { + echo "$__buildtree doesn't look like a package build tree." >&2 + echo "Top level Makefile expected, but none found. Please make" >&2 + echo "sure to specify the root of all package build descriptions." >&2 + exit 2 + } + + echo "Checking out GAR to $__buildtree/.buildsys" + svn co $GAR_REPO "$__buildtree/.buildsys" + + echo + echo "Removing gar symlinks from $__buildtree (takes some time)" find $__buildtree \ -name work -prune -o -name cookies -prune -o \ - -type s -name gar | grep /gar$ | xargs rm - #if [ "$1" == "--use-existing" ]; then { shift; __fullco=0; } || { shift; __fullco=1; } + -type s -name gar | grep /gar$ | gxargs -r rm + + echo "Registering $__buildtree/.buildsys in ~/.garrc" + echo -e "\nBUILDTREE=$__buildtree" >> ~/.garrc + + echo + echo 'All set. Basically, use mgar instead of gmake now (see mgar --help).' } function init_buildtree { @@ -180,7 +198,7 @@ fi echo "Initializing the package build tree at $__buildtree" - mkdir -p $__buildtree/.buildsys + mkdir -p "$__buildtree/.buildsys" svn co $GAR_REPO "$__buildtree/.buildsys" svn co --depth empty $PKG_REPO "$__buildtree" @@ -355,6 +373,7 @@ assert_required_tools [ $1 == "init" ] && { init_buildtree ${2-$DEF_BUILDTREE}; exit; } +[ $1 == "init-existing" ] && { convert_existing_buildtree ${2}; exit; } BUILDTREE="`read_config_value BUILDTREE`"; eval BUILDTREE="$BUILDTREE" assert_multi_buildsys_tree "$BUILDTREE/.buildsys" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Feb 24 09:36:57 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 24 Feb 2011 08:36:57 +0000 Subject: [csw-devel] SF.net SVN: gar:[13461] csw/mgar/pkg/cpan/Dancer/trunk/Makefile Message-ID: Revision: 13461 http://gar.svn.sourceforge.net/gar/?rev=13461&view=rev Author: dmichelsen Date: 2011-02-24 08:36:56 +0000 (Thu, 24 Feb 2011) Log Message: ----------- cpan/Dancer: Fix dependencies Modified Paths: -------------- csw/mgar/pkg/cpan/Dancer/trunk/Makefile Modified: csw/mgar/pkg/cpan/Dancer/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Dancer/trunk/Makefile 2011-02-23 20:58:04 UTC (rev 13460) +++ csw/mgar/pkg/cpan/Dancer/trunk/Makefile 2011-02-24 08:36:56 UTC (rev 13461) @@ -12,11 +12,11 @@ PACKAGES += CSWpm-dancer CATALOGNAME_CSWpm-dancer = pm_dancer ARCHALL_CSWpm-dancer = 1 -RUNTIME_DEP_PKGS_CSWpm-dancer = CSWpm-http-server-simple-psgi -RUNTIME_DEP_PKGS_CSWpm-dancer = CSWpmuri -RUNTIME_DEP_PKGS_CSWpm-dancer = CSWpm-http-body -RUNTIME_DEP_PKGS_CSWpm-dancer = CSWpmmimetypes -RUNTIME_DEP_PKGS_CSWpm-dancer = CSWpmlibwww +RUNTIME_DEP_PKGS_CSWpm-dancer += CSWpm-http-server-simple-psgi +RUNTIME_DEP_PKGS_CSWpm-dancer += CSWpmuri +RUNTIME_DEP_PKGS_CSWpm-dancer += CSWpm-http-body +RUNTIME_DEP_PKGS_CSWpm-dancer += CSWpmmimetypes +RUNTIME_DEP_PKGS_CSWpm-dancer += CSWpmlibwww include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Feb 24 09:37:28 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 24 Feb 2011 08:37:28 +0000 Subject: [csw-devel] SF.net SVN: gar:[13462] csw/mgar/pkg/cpan/Plack/trunk/Makefile Message-ID: Revision: 13462 http://gar.svn.sourceforge.net/gar/?rev=13462&view=rev Author: dmichelsen Date: 2011-02-24 08:37:28 +0000 (Thu, 24 Feb 2011) Log Message: ----------- cpan/Plack: Fix dependencies Modified Paths: -------------- csw/mgar/pkg/cpan/Plack/trunk/Makefile Modified: csw/mgar/pkg/cpan/Plack/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Plack/trunk/Makefile 2011-02-24 08:36:56 UTC (rev 13461) +++ csw/mgar/pkg/cpan/Plack/trunk/Makefile 2011-02-24 08:37:28 UTC (rev 13462) @@ -15,16 +15,16 @@ CATALOGNAME_CSWpm-plack = pm_plack # There was no information if this is pure Perl or not. Please remove if necessary. ARCHALL_CSWpm-plack = 1 -RUNTIME_DEP_PKGS_CSWpm-plack = CSWpm-try-tiny -RUNTIME_DEP_PKGS_CSWpm-plack = CSWpm-hash-multivalue -RUNTIME_DEP_PKGS_CSWpm-plack = CSWpmuri -RUNTIME_DEP_PKGS_CSWpm-plack = CSWpmdevstacktrace -RUNTIME_DEP_PKGS_CSWpm-plack = CSWpm-http-body -RUNTIME_DEP_PKGS_CSWpm-plack = CSWpm-test-tcp -RUNTIME_DEP_PKGS_CSWpm-plack = CSWpm-file-sharedir -RUNTIME_DEP_PKGS_CSWpm-plack = CSWpm-filesys-notify-simple -RUNTIME_DEP_PKGS_CSWpm-plack = CSWpm-devel-stacktrace-ashtml -RUNTIME_DEP_PKGS_CSWpm-plack = CSWpmlibwww +RUNTIME_DEP_PKGS_CSWpm-plack += CSWpm-try-tiny +RUNTIME_DEP_PKGS_CSWpm-plack += CSWpm-hash-multivalue +RUNTIME_DEP_PKGS_CSWpm-plack += CSWpmuri +RUNTIME_DEP_PKGS_CSWpm-plack += CSWpmdevstacktrace +RUNTIME_DEP_PKGS_CSWpm-plack += CSWpm-http-body +RUNTIME_DEP_PKGS_CSWpm-plack += CSWpm-test-tcp +RUNTIME_DEP_PKGS_CSWpm-plack += CSWpm-file-sharedir +RUNTIME_DEP_PKGS_CSWpm-plack += CSWpm-filesys-notify-simple +RUNTIME_DEP_PKGS_CSWpm-plack += CSWpm-devel-stacktrace-ashtml +RUNTIME_DEP_PKGS_CSWpm-plack += CSWpmlibwww BUILD_DEP_PKGS += $(RUNTIME_DEP_PKGS_CSWpm-plack) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Feb 24 10:06:22 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 24 Feb 2011 09:06:22 +0000 Subject: [csw-devel] SF.net SVN: gar:[13463] csw/mgar/pkg/cpan/Plack/trunk/Makefile Message-ID: Revision: 13463 http://gar.svn.sourceforge.net/gar/?rev=13463&view=rev Author: dmichelsen Date: 2011-02-24 09:06:22 +0000 (Thu, 24 Feb 2011) Log Message: ----------- cpan/Plack: Override unreleased dependencies Modified Paths: -------------- csw/mgar/pkg/cpan/Plack/trunk/Makefile Modified: csw/mgar/pkg/cpan/Plack/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Plack/trunk/Makefile 2011-02-24 08:37:28 UTC (rev 13462) +++ csw/mgar/pkg/cpan/Plack/trunk/Makefile 2011-02-24 09:06:22 UTC (rev 13463) @@ -28,4 +28,13 @@ BUILD_DEP_PKGS += $(RUNTIME_DEP_PKGS_CSWpm-plack) +# These have not been released +CHECKPKG_OVERRIDES_CSWpm-plack += unidentified-dependency|CSWpm-try-tiny +CHECKPKG_OVERRIDES_CSWpm-plack += unidentified-dependency|CSWpm-hash-multivalue +CHECKPKG_OVERRIDES_CSWpm-plack += unidentified-dependency|CSWpm-http-body +CHECKPKG_OVERRIDES_CSWpm-plack += unidentified-dependency|CSWpm-test-tcp +CHECKPKG_OVERRIDES_CSWpm-plack += unidentified-dependency|CSWpm-file-sharedir +CHECKPKG_OVERRIDES_CSWpm-plack += unidentified-dependency|CSWpm-filesys-notify-simple +CHECKPKG_OVERRIDES_CSWpm-plack += unidentified-dependency|CSWpm-devel-stacktrace-ashtml + include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Feb 24 10:11:02 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 24 Feb 2011 09:11:02 +0000 Subject: [csw-devel] SF.net SVN: gar:[13464] csw/mgar/pkg/cpan/Dancer/trunk/Makefile Message-ID: Revision: 13464 http://gar.svn.sourceforge.net/gar/?rev=13464&view=rev Author: dmichelsen Date: 2011-02-24 09:11:02 +0000 (Thu, 24 Feb 2011) Log Message: ----------- cpan/Dancer: Override unreleased dependencies Modified Paths: -------------- csw/mgar/pkg/cpan/Dancer/trunk/Makefile Modified: csw/mgar/pkg/cpan/Dancer/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Dancer/trunk/Makefile 2011-02-24 09:06:22 UTC (rev 13463) +++ csw/mgar/pkg/cpan/Dancer/trunk/Makefile 2011-02-24 09:11:02 UTC (rev 13464) @@ -18,6 +18,10 @@ RUNTIME_DEP_PKGS_CSWpm-dancer += CSWpmmimetypes RUNTIME_DEP_PKGS_CSWpm-dancer += CSWpmlibwww +# These have not been released +CHECKPKG_OVERRIDES_CSWpm-dancer += unidentified-dependency|CSWpm-http-server-simple-psgi +CHECKPKG_OVERRIDES_CSWpm-dancer += unidentified-dependency|CSWpm-http-body + include gar/category.mk post-install-modulated: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Thu Feb 24 11:03:25 2011 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Thu, 24 Feb 2011 10:03:25 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[329] gar-wrapper/mgar Message-ID: Revision: 329 http://opencsw.svn.sourceforge.net/opencsw/?rev=329&view=rev Author: skayser Date: 2011-02-24 10:03:25 +0000 (Thu, 24 Feb 2011) Log Message: ----------- mgar: in commit mode without -m, add the path prefix to the commit msg EDITOR buffer Modified Paths: -------------- gar-wrapper/mgar Modified: gar-wrapper/mgar =================================================================== --- gar-wrapper/mgar 2011-02-24 00:04:53 UTC (rev 328) +++ gar-wrapper/mgar 2011-02-24 10:03:25 UTC (rev 329) @@ -15,13 +15,12 @@ # ---------------------------------------------------------------------------- # # Todos: +# * Integrate the creation of a new package (with sanity check whether +# package already exists). Use per-directory Makefile.template files. # * When packaging mgar, shield mgar up --self so that it won't override # the package binary, but place it somewhere else. -# * In commit mode, if (msg -eq ""): Fire up $EDITOR (with prepoulated msg) # * In commit mode, if (pwd.endswith('trunk') and svn.rev -eq 0) commit .. # * Recipes: Move from svn:externals to GARTYPE -# * Integrate the creation of a new package (with sanity check whether -# package already exists). Use per-directory Makefile.template files. # * Improve errors messages when buildsys can't be found # # Bugs: @@ -250,12 +249,19 @@ shift $((OPTIND-1)) # prefix the commitmsg with a pkg path prefix unless a prefix is given + __prefix=$( pwd | sed "s,^$BUILDTREE/,," ) if [ -n "${__logmsg:-}" ]; then if ! echo "$__logmsg" | ggrep -qE '^\S+:'; then - __prefix=$( pwd | sed "s,^$BUILDTREE/,," ) __logmsg="$__prefix: $__logmsg" fi __log_args=( "-m" "$__logmsg" ) + else + case $EDITOR in + vi*) insert_prefix="`echo -e \"a\n$__prefix: \n.\"`" + EDITOR="$EDITOR -c \"$insert_prefix\"" + ;; + *) ;; + esac fi __untracked=`svn status | grep \? || :` This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Feb 24 12:36:53 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 24 Feb 2011 11:36:53 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[330] buildfarm/bin/send-catalog-update-notifications Message-ID: Revision: 330 http://opencsw.svn.sourceforge.net/opencsw/?rev=330&view=rev Author: dmichelsen Date: 2011-02-24 11:36:52 +0000 (Thu, 24 Feb 2011) Log Message: ----------- A cron job to send catalog update notifications Added Paths: ----------- buildfarm/bin/send-catalog-update-notifications Added: buildfarm/bin/send-catalog-update-notifications =================================================================== --- buildfarm/bin/send-catalog-update-notifications (rev 0) +++ buildfarm/bin/send-catalog-update-notifications 2011-02-24 11:36:52 UTC (rev 330) @@ -0,0 +1,32 @@ +#!/opt/csw/bin/bash + +# /home/web/bin/send-catalog-update-notifications + +export PATH=/opt/csw/bin:/usr/bin + +# Sending catalog update notifications + +# +# Usage: catalog_notifier.py [options] +# +# Options: +# -h, --help show this help message and exit +# -u URL, --url=URL Base URL of OpenCSW catalog +# -d, --debug +# -s, --send-notifications +# -p PICKLE_FILE, --pickle-file=PICKLE_FILE +# Pickle file +# -w WHITELIST, --whitelist=WHITELIST +# E-mail address whitelist, comma separated +# web at web [web]:~/bin/gar > echo !! +# echo /home/web/bin/gar/lib/python/catalog_notifier.py --help +# /home/web/bin/gar/lib/python/catalog_notifier.py --help + +/home/web/bin/gar/lib/python/catalog_notifier.py \ + --url http://mirror.opencsw.org/opencsw/ \ + -p /home/web/official-catalog-state.pickle \ + --send-notifications +/home/web/bin/gar/lib/python/catalog_notifier.py \ + --url http://mirror.opencsw.org/opencsw-future/ \ + -p /home/web/future-catalog-state.pickle \ + --send-notifications Property changes on: buildfarm/bin/send-catalog-update-notifications ___________________________________________________________________ Added: svn:executable + * This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Feb 24 12:38:03 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 24 Feb 2011 11:38:03 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[331] buildfarm/bin/sync-checkpkg Message-ID: Revision: 331 http://opencsw.svn.sourceforge.net/opencsw/?rev=331&view=rev Author: dmichelsen Date: 2011-02-24 11:38:03 +0000 (Thu, 24 Feb 2011) Log Message: ----------- sync-checkpkg: Cronjob updating the checkpkg database Added Paths: ----------- buildfarm/bin/sync-checkpkg Added: buildfarm/bin/sync-checkpkg =================================================================== --- buildfarm/bin/sync-checkpkg (rev 0) +++ buildfarm/bin/sync-checkpkg 2011-02-24 11:38:03 UTC (rev 331) @@ -0,0 +1,10 @@ +#!/bin/sh + +PATH=/usr/bin:/opt/csw/bin +export PATH + +cd /home/web/bin/gar +/opt/csw/bin/svn update + +bin/pkgdb sync-catalogs-from-tree current /export/mirror/opencsw/current + Property changes on: buildfarm/bin/sync-checkpkg ___________________________________________________________________ Added: svn:executable + * This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From maciej at opencsw.org Thu Feb 24 12:39:07 2011 From: maciej at opencsw.org (=?UTF-8?Q?Maciej_Blizi=C5=84ski?=) Date: Thu, 24 Feb 2011 11:39:07 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[330] buildfarm/bin/send-catalog-update-notifications In-Reply-To: References: Message-ID: 2011/2/24 : > Revision: 330 > ? ? ? ? ?http://opencsw.svn.sourceforge.net/opencsw/?rev=330&view=rev > Author: ? dmichelsen This commit was sent from the web zone, and it has cached credentials. In the future, I'll try to do it the other way around: commit as me elsewhere and then update the web zone. From wahwah at users.sourceforge.net Thu Feb 24 13:15:40 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Thu, 24 Feb 2011 12:15:40 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[332] buildfarm/bin/generate-unstable Message-ID: Revision: 332 http://opencsw.svn.sourceforge.net/opencsw/?rev=332&view=rev Author: wahwah Date: 2011-02-24 12:15:40 +0000 (Thu, 24 Feb 2011) Log Message: ----------- generate-catalog: wrapper to run on the buildfarm Signed-off-by: Maciej Blizinski Added Paths: ----------- buildfarm/bin/generate-unstable Added: buildfarm/bin/generate-unstable =================================================================== --- buildfarm/bin/generate-unstable (rev 0) +++ buildfarm/bin/generate-unstable 2011-02-24 12:15:40 UTC (rev 332) @@ -0,0 +1,27 @@ +#!/opt/csw/bin/bash +# +# Generates a catalog tree from a checkpkg database. For the time being, it's +# using Peter Bonivart's script to generate the catalog files. It will be +# eventually generated directly from the database, but the database requires +# a large schema change. + +export PATH=/opt/csw/bin:/opt/csw/sbin:/usr/bin:/usr/sbin + +set -u +set -e + +/home/web/bin/gar/bin/pkgdb gen-cat /home/mirror/opencsw-future/allpkgs /home/mirror/opencsw-future + +pushd /home/mirror/opencsw-future/unstable +for arch in i386 sparc; do + pushd "${arch}" + for osrel in 5.9 5.10 5.11; do + pushd "${osrel}" + bldcat . + popd + done + popd +done +popd + +# vim:set ci si ts=2 sts=2 sw=2 expandtab: Property changes on: buildfarm/bin/generate-unstable ___________________________________________________________________ Added: svn:executable + * This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Thu Feb 24 17:12:32 2011 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Thu, 24 Feb 2011 16:12:32 +0000 Subject: [csw-devel] SF.net SVN: gar:[13465] csw/mgar/pkg/policyd-weight/trunk Message-ID: Revision: 13465 http://gar.svn.sourceforge.net/gar/?rev=13465&view=rev Author: bonivart Date: 2011-02-24 16:12:32 +0000 (Thu, 24 Feb 2011) Log Message: ----------- policyd-weight/trunk: update to 0.1.15.1, change catalog name to policyd_weight Modified Paths: -------------- csw/mgar/pkg/policyd-weight/trunk/Makefile csw/mgar/pkg/policyd-weight/trunk/checksums Modified: csw/mgar/pkg/policyd-weight/trunk/Makefile =================================================================== --- csw/mgar/pkg/policyd-weight/trunk/Makefile 2011-02-24 09:11:02 UTC (rev 13464) +++ csw/mgar/pkg/policyd-weight/trunk/Makefile 2011-02-24 16:12:32 UTC (rev 13465) @@ -1,5 +1,5 @@ NAME = policyd-weight -VERSION = 0.1.15 +VERSION = 0.1.15.1 CATEGORIES = net WORKSRC = $(WORKDIR) @@ -11,7 +11,7 @@ MASTER_SITES = http://www.policyd-weight.org/releases/ MASTER_SITES += http://www.policyd-weight.org/ -DISTFILES += $(NAME)-devel +DISTFILES += $(NAME) DISTFILES += $(NAME).conf.sample DISTFILES += $(NAME).8 DISTFILES += $(NAME).conf.5 @@ -22,36 +22,37 @@ ARCHALL = 1 -CATALOGNAME = policydweight +CATALOGNAME = policyd_weight RUNTIME_DEP_PKGS = CSWperl CSWpmnetdns -# We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz - CONFIGURE_SCRIPTS = BUILD_SCRIPTS = TEST_SCRIPTS = INSTALL_SCRIPTS = custom -INITSMF = /opt/csw/etc/init.d/csw$(NAME) +INITSMF = /etc/opt/csw/init.d/csw$(NAME) USERGROUP = /etc/opt/csw/pkg/CSW$(NAME)/cswusergroup -CHECKPKG_OVERRIDES += surplus-dependency|CSWperl -CHECKPKG_OVERRIDES += surplus-dependency|CSWpmnetdns +# Harmless references to /usr/local +CHECKPKG_OVERRIDES_CSWpolicyd-weight += file-with-bad-content|/usr/local|root/opt/csw/share/doc/policyd_weight/documentation.txt +CHECKPKG_OVERRIDES_CSWpolicyd-weight += file-with-bad-content|/usr/local|root/opt/csw/share/man/man5/policyd-weight.conf.5 +CHECKPKG_OVERRIDES_CSWpolicyd-weight += file-with-bad-content|/usr/local|root/opt/csw/share/man/man8/policyd-weight.8 +CHECKPKG_OVERRIDES_CSWpolicyd-weight += file-with-bad-content|/usr/local|root/opt/csw/sbin/policyd-weight +CHECKPKG_OVERRIDES_CSWpolicyd-weight += surplus-dependency|CSWperl +CHECKPKG_OVERRIDES_CSWpolicyd-weight += surplus-dependency|CSWpmnetdns include gar/category.mk install-custom: @echo " ==> Installing $(NAME) (custom)" - @ginstall -m 755 -d $(DESTDIR)/opt/csw/etc/init.d - @ginstall -m 755 $(FILEDIR)/$(NAME).init $(DESTDIR)/opt/csw/etc/init.d/csw$(NAME) - @ginstall -m 755 -d $(DESTDIR)/etc/opt/csw + @ginstall -m 755 -d $(DESTDIR)/etc/opt/csw/init.d + @ginstall -m 755 $(FILEDIR)/$(NAME).init $(DESTDIR)/etc/opt/csw/init.d/csw$(NAME) @ginstall -m 644 $(WORKSRC)/policyd-weight.conf.sample $(DESTDIR)/etc/opt/csw/ @ginstall -m 755 -d $(DESTDIR)/etc/opt/csw/pkg/CSW$(NAME) @ginstall -m 444 $(FILEDIR)/cswusergroup $(DESTDIR)/etc/opt/csw/pkg/CSW$(NAME)/cswusergroup @ginstall -m 755 -d $(DESTDIR)$(sbindir) - @ginstall -m 755 $(WORKSRC)/$(NAME)-devel $(DESTDIR)$(sbindir)/$(NAME) + @ginstall -m 755 $(WORKSRC)/$(NAME) $(DESTDIR)$(sbindir)/$(NAME) @ginstall -m 755 -d $(DESTDIR)$(docdir)/$(CATALOGNAME) @ginstall -m 444 $(WORKSRC)/changes.txt $(DESTDIR)$(docdir)/$(CATALOGNAME) @ginstall -m 444 $(WORKSRC)/documentation.txt $(DESTDIR)$(docdir)/$(CATALOGNAME) Modified: csw/mgar/pkg/policyd-weight/trunk/checksums =================================================================== --- csw/mgar/pkg/policyd-weight/trunk/checksums 2011-02-24 09:11:02 UTC (rev 13464) +++ csw/mgar/pkg/policyd-weight/trunk/checksums 2011-02-24 16:12:32 UTC (rev 13465) @@ -1,8 +1,8 @@ 608826974d5644ee7967a713fa72cf36 COPYING f50762cfa92b54f474df96541cc5679d changes.txt ec5ca49feba2eab047a5da16143fe6cb documentation.txt -0aa05a54758f39b6f910a616e8139a30 policyd-weight-devel +b3f58ab104751f4dee9d2cce4d1846f7 policyd-weight 792ae8f214bcb109e40dfeaba79e6e90 policyd-weight.8 98a66135c59c484290d06654dac93584 policyd-weight.conf.5 -b0ce437f3640023831554fc989d87477 policyd-weight.conf.sample +4b747b23021668dfdb3ba39bfe30837d policyd-weight.conf.sample 53afc640bd8b88efb59519db358d6163 todo.txt This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Feb 25 11:31:09 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 25 Feb 2011 10:31:09 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[333] buildfarm/bin/compare-csw-bw-sfw Message-ID: Revision: 333 http://opencsw.svn.sourceforge.net/opencsw/?rev=333&view=rev Author: dmichelsen Date: 2011-02-25 10:31:09 +0000 (Fri, 25 Feb 2011) Log Message: ----------- Add compare corrections Modified Paths: -------------- buildfarm/bin/compare-csw-bw-sfw Modified: buildfarm/bin/compare-csw-bw-sfw =================================================================== --- buildfarm/bin/compare-csw-bw-sfw 2011-02-24 12:15:40 UTC (rev 332) +++ buildfarm/bin/compare-csw-bw-sfw 2011-02-25 10:31:09 UTC (rev 333) @@ -20,6 +20,7 @@ 'a52dec' => 'liba52', atk => 'libatk', cairo => 'libcairo', + cpio => 'gcpio', ctags => 'ectags', cvs => 'cvs_feature', freetype => 'freetype2', @@ -62,6 +63,7 @@ my %csw2sfw = map { $sfw2csw{$_} => $_ } keys %sfw2csw; my %bw2csw = ( + "apache2_dev" => "apache2_devel", "pm_net_ssh" => "pm_netssh", "pm_bitvector" => "pm_bitvec", renderproto => "x11_renderproto", @@ -125,7 +127,7 @@ my $vers; foreach my $a (qw(sparc i386)) { - foreach my $r (qw(5.8 5.9 5.10)) { + foreach my $r (qw(5.10 5.9 5.8)) { my $cv = $c->{$a}->{$r}->{$p}->{versionnorev}; next if( !defined $cv ); push @{$vers->{vers}->{$cv}}, {release => $r, arch => $a}; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From maciej at opencsw.org Fri Feb 25 12:13:59 2011 From: maciej at opencsw.org (Maciej Blizinski) Date: Fri, 25 Feb 2011 12:13:59 +0100 Subject: [csw-devel] [PATCH] Adding notes about the repository Message-ID: <1298632439-631-1-git-send-email-maciej@opencsw.org> Requires the Id keyword to be set for files: svn ps svn:keywords Id .../buildfarm/bin/experimental-footer.inc svn ps svn:keywords Id .../buildfarm/bin/experimental-head.inc --- buildfarm/bin/experimental-footer.inc | 1 + buildfarm/bin/experimental-head.inc | 7 +++++++ 2 files changed, 8 insertions(+), 0 deletions(-) diff --git a/buildfarm/bin/experimental-footer.inc b/buildfarm/bin/experimental-footer.inc index dc684c5..ad7647d 100644 --- a/buildfarm/bin/experimental-footer.inc +++ b/buildfarm/bin/experimental-footer.inc @@ -1,3 +1,4 @@ + diff --git a/buildfarm/bin/experimental-head.inc b/buildfarm/bin/experimental-head.inc index 4cff54f..817882a 100644 --- a/buildfarm/bin/experimental-head.inc +++ b/buildfarm/bin/experimental-head.inc @@ -1,4 +1,11 @@ + + OpenCSW Buildfarm Package Versions -- 1.7.3.2 From bdwalton at users.sourceforge.net Fri Feb 25 22:09:21 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Fri, 25 Feb 2011 21:09:21 +0000 Subject: [csw-devel] SF.net SVN: gar:[13466] csw/mgar/pkg/apache2/branches/open-bug-squash Message-ID: Revision: 13466 http://gar.svn.sourceforge.net/gar/?rev=13466&view=rev Author: bdwalton Date: 2011-02-25 21:09:21 +0000 (Fri, 25 Feb 2011) Log Message: ----------- apache2/branches/open-bug-squash: patch out a few /usr/local references in man pages Modified Paths: -------------- csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile Added Paths: ----------- csw/mgar/pkg/apache2/branches/open-bug-squash/files/0002-Adjust-a-few-usr-local-paths-in-the-man-pages.patch Modified: csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile =================================================================== --- csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile 2011-02-24 16:12:32 UTC (rev 13465) +++ csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile 2011-02-25 21:09:21 UTC (rev 13466) @@ -47,6 +47,7 @@ DISTFILES += README.CSW.apache2rt PATCHFILES += 0001-Apply-a-large-hammer-to-buildconf-to-fix-libtool-set.patch +PATCHFILES += 0002-Adjust-a-few-usr-local-paths-in-the-man-pages.patch UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz Added: csw/mgar/pkg/apache2/branches/open-bug-squash/files/0002-Adjust-a-few-usr-local-paths-in-the-man-pages.patch =================================================================== --- csw/mgar/pkg/apache2/branches/open-bug-squash/files/0002-Adjust-a-few-usr-local-paths-in-the-man-pages.patch (rev 0) +++ csw/mgar/pkg/apache2/branches/open-bug-squash/files/0002-Adjust-a-few-usr-local-paths-in-the-man-pages.patch 2011-02-25 21:09:21 UTC (rev 13466) @@ -0,0 +1,54 @@ +From c1d63dce36cee499600cc4bf4a4856ec35c7a942 Mon Sep 17 00:00:00 2001 +From: Ben Walton +Date: Tue, 22 Feb 2011 10:12:00 +0100 +Subject: [PATCH] Adjust a few /usr/local paths in the man pages. + +Signed-off-by: Ben Walton +--- + docs/man/htdbm.1 | 2 +- + docs/man/htpasswd.1 | 2 +- + docs/man/httpd.8 | 2 +- + 3 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/docs/man/htdbm.1 b/docs/man/htdbm.1 +index d37be2c..80334f0 100644 +--- a/docs/man/htdbm.1 ++++ b/docs/man/htdbm.1 +@@ -123,7 +123,7 @@ htdbm returns a zero status ("true") if the username and password have been succ + + .nf + +- htdbm /usr/local/etc/apache/\&.htdbm-users jsmith ++ htdbm /opt/csw/apache2/etc/\&.htdbm-users jsmith + + .fi + +diff --git a/docs/man/htpasswd.1 b/docs/man/htpasswd.1 +index 40858a0..1d669a1 100644 +--- a/docs/man/htpasswd.1 ++++ b/docs/man/htpasswd.1 +@@ -100,7 +100,7 @@ htpasswd returns a zero status ("true") if the username and password have been s + + .nf + +- htpasswd /usr/local/etc/apache/\&.htpasswd-users jsmith ++ htpasswd /opt/csw/apache2/etc/\&.htpasswd-users jsmith + + .fi + +diff --git a/docs/man/httpd.8 b/docs/man/httpd.8 +index 5b9e168..d806ebe 100644 +--- a/docs/man/httpd.8 ++++ b/docs/man/httpd.8 +@@ -50,7 +50,7 @@ In general, httpd should not be invoked directly, but rather should be invoked v + + .TP + -d \fIserverroot\fR +-Set the initial value for the ServerRoot directive to \fIserverroot\fR\&. This can be overridden by the ServerRoot directive in the configuration file\&. The default is /usr/local/apache2\&. ++Set the initial value for the ServerRoot directive to \fIserverroot\fR\&. This can be overridden by the ServerRoot directive in the configuration file\&. The default is /opt/csw/apache2\&. + .TP + -f \fIconfig\fR + Uses the directives in the file \fIconfig\fR on startup\&. If \fIconfig\fR does not begin with a /, then it is taken to be a path relative to the ServerRoot\&. The default is conf/httpd\&.conf\&. +-- +1.7.3.2 + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dam at opencsw.org Fri Feb 25 22:16:13 2011 From: dam at opencsw.org (Dagobert Michelsen) Date: Fri, 25 Feb 2011 22:16:13 +0100 Subject: [csw-devel] [PATCH] Adding notes about the repository In-Reply-To: <1298632439-631-1-git-send-email-maciej@opencsw.org> References: <1298632439-631-1-git-send-email-maciej@opencsw.org> Message-ID: <50E3488A-8CF8-4F69-892A-CBC88175E25B@opencsw.org> Hi Maciej, looks good, please proceed. Best regards -- Dago Am 25.02.2011 um 12:13 schrieb Maciej Blizinski: > Requires the Id keyword to be set for files: > > svn ps svn:keywords Id .../buildfarm/bin/experimental-footer.inc > svn ps svn:keywords Id .../buildfarm/bin/experimental-head.inc > --- > buildfarm/bin/experimental-footer.inc | 1 + > buildfarm/bin/experimental-head.inc | 7 +++++++ > 2 files changed, 8 insertions(+), 0 deletions(-) > > diff --git a/buildfarm/bin/experimental-footer.inc b/buildfarm/bin/experimental-footer.inc > index dc684c5..ad7647d 100644 > --- a/buildfarm/bin/experimental-footer.inc > +++ b/buildfarm/bin/experimental-footer.inc > @@ -1,3 +1,4 @@ > > > + > > diff --git a/buildfarm/bin/experimental-head.inc b/buildfarm/bin/experimental-head.inc > index 4cff54f..817882a 100644 > --- a/buildfarm/bin/experimental-head.inc > +++ b/buildfarm/bin/experimental-head.inc > @@ -1,4 +1,11 @@ > > + > + > > > OpenCSW Buildfarm Package Versions > -- > 1.7.3.2 > > _______________________________________________ > devel mailing list > devel at lists.opencsw.org > https://lists.opencsw.org/mailman/listinfo/devel From wbonnet at users.sourceforge.net Fri Feb 25 22:56:26 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Fri, 25 Feb 2011 21:56:26 +0000 Subject: [csw-devel] SF.net SVN: gar:[13467] csw/mgar/pkg/cpan/XML-Atom/trunk Message-ID: Revision: 13467 http://gar.svn.sourceforge.net/gar/?rev=13467&view=rev Author: wbonnet Date: 2011-02-25 21:56:26 +0000 (Fri, 25 Feb 2011) Log Message: ----------- cpan/XML-Atom Fix Makefile and upgrade to 0.37 Modified Paths: -------------- csw/mgar/pkg/cpan/XML-Atom/trunk/Makefile csw/mgar/pkg/cpan/XML-Atom/trunk/checksums Modified: csw/mgar/pkg/cpan/XML-Atom/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/XML-Atom/trunk/Makefile 2011-02-25 21:09:21 UTC (rev 13466) +++ csw/mgar/pkg/cpan/XML-Atom/trunk/Makefile 2011-02-25 21:56:26 UTC (rev 13467) @@ -1,5 +1,5 @@ NAME = XML-Atom -VERSION = 0.25 +VERSION = 0.37 CATEGORIES = cpan AUTHOR = MIYAGAWA @@ -9,10 +9,14 @@ XML::Atom implements the feed format as well as a client for the API. endef -DISTFILES += CSWpmxmlatom.gspec CSWpmxmlatom.depend +CATALOGNAME = pm_xml_atom +PACKAGES = CSWpm-xml-atom -DEPENDS += cpan/XML-LibXML cpan/libwww-perl cpan/HTML-Parser -DEPENDS += cpan/Digest-SHA1 cpan/TimeDate cpan/XML-LibXSLT -DEPENDS += cpan/URI +ARCHALL_CSWpm-xml-atom = 1 +LICENSE = README + +RUNTIME_DEP_PKGS = CSWpm-xml-libxml CSWpm-libwww-perl CSWpm-html-parser +RUNTIME_DEP_PKGS += CSWpm-digest-sha1 CSWpm-timedate CSWpm-xml-libxslt CSWpm-uri + include gar/category.mk Modified: csw/mgar/pkg/cpan/XML-Atom/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/XML-Atom/trunk/checksums 2011-02-25 21:09:21 UTC (rev 13466) +++ csw/mgar/pkg/cpan/XML-Atom/trunk/checksums 2011-02-25 21:56:26 UTC (rev 13467) @@ -1,3 +1 @@ -c38edb61c0ce14ff78be38f901375285 download/CSWpmxmlatom.gspec -95ed76a4bd769f40fbded5f56066e92a download/CSWpmxmlatom.depend -6ffe8485517481f30b5a16f4ff677941 download/XML-Atom-0.25.tar.gz +f4cbbb2feb893d42893f000e90464842 XML-Atom-0.37.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Fri Feb 25 23:09:40 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Fri, 25 Feb 2011 22:09:40 +0000 Subject: [csw-devel] SF.net SVN: gar:[13468] csw/mgar/pkg/cpan/XML-Atom/trunk/Makefile Message-ID: Revision: 13468 http://gar.svn.sourceforge.net/gar/?rev=13468&view=rev Author: wbonnet Date: 2011-02-25 22:09:40 +0000 (Fri, 25 Feb 2011) Log Message: ----------- cpan/XML-Atom Fix Makefile and upgrade to 0.37 Modified Paths: -------------- csw/mgar/pkg/cpan/XML-Atom/trunk/Makefile Modified: csw/mgar/pkg/cpan/XML-Atom/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/XML-Atom/trunk/Makefile 2011-02-25 21:56:26 UTC (rev 13467) +++ csw/mgar/pkg/cpan/XML-Atom/trunk/Makefile 2011-02-25 22:09:40 UTC (rev 13468) @@ -16,7 +16,7 @@ LICENSE = README -RUNTIME_DEP_PKGS = CSWpm-xml-libxml CSWpm-libwww-perl CSWpm-html-parser -RUNTIME_DEP_PKGS += CSWpm-digest-sha1 CSWpm-timedate CSWpm-xml-libxslt CSWpm-uri +RUNTIME_DEP_PKGS = CSWpmxmllibxml CSWpmlibwww CSWpmhtmlparser +RUNTIME_DEP_PKGS += CSWpmdigestsha1 CSWpmtimedate CSWpmxmllibxslt CSWpmuri include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Fri Feb 25 23:22:35 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Fri, 25 Feb 2011 22:22:35 +0000 Subject: [csw-devel] SF.net SVN: gar:[13469] csw/mgar/pkg/cpan/XML-Atom/trunk/files Message-ID: Revision: 13469 http://gar.svn.sourceforge.net/gar/?rev=13469&view=rev Author: wbonnet Date: 2011-02-25 22:22:34 +0000 (Fri, 25 Feb 2011) Log Message: ----------- cpan/XML-Atom Fix Makefile and upgrade to 0.37 Removed Paths: ------------- csw/mgar/pkg/cpan/XML-Atom/trunk/files/CSWpmxmlatom.depend csw/mgar/pkg/cpan/XML-Atom/trunk/files/CSWpmxmlatom.gspec Deleted: csw/mgar/pkg/cpan/XML-Atom/trunk/files/CSWpmxmlatom.depend =================================================================== --- csw/mgar/pkg/cpan/XML-Atom/trunk/files/CSWpmxmlatom.depend 2011-02-25 22:09:40 UTC (rev 13468) +++ csw/mgar/pkg/cpan/XML-Atom/trunk/files/CSWpmxmlatom.depend 2011-02-25 22:22:34 UTC (rev 13469) @@ -1,7 +0,0 @@ -P CSWpmdigestsha1 pm_digestsha1 - interface to the SHA-1 Algorithm -P CSWpmhtmlparser pm_htmlparser - HTML parser class -P CSWpmlibwww pm_libwww - a general-purpose Web API for Perl, based on W3C libwww. -P CSWpmtimedate pm_timedate - parse date strings into time values -P CSWpmuri pm_uri - Uniform Resource Identifiers (absolute and relative) -P CSWpmxmllibxml pm_xmllibxml - binding for libxml2 -P CSWpmxmllibxslt pm_xmllibxslt - interface to the gnome libxslt library Deleted: csw/mgar/pkg/cpan/XML-Atom/trunk/files/CSWpmxmlatom.gspec =================================================================== --- csw/mgar/pkg/cpan/XML-Atom/trunk/files/CSWpmxmlatom.gspec 2011-02-25 22:09:40 UTC (rev 13468) +++ csw/mgar/pkg/cpan/XML-Atom/trunk/files/CSWpmxmlatom.gspec 2011-02-25 22:22:34 UTC (rev 13469) @@ -1,7 +0,0 @@ -%var bitname pm_xmlatom -%var pkgname CSWpmxmlatom -%var arch all -%include url file://%{PKGLIB}/csw_cpan.gspec -%copyright -Except where otherwise noted, I is Copyright 2003 Benjamin -Trott, cpan at stupidfool.org. All rights reserved. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Fri Feb 25 23:25:02 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Fri, 25 Feb 2011 22:25:02 +0000 Subject: [csw-devel] SF.net SVN: gar:[13470] csw/mgar/pkg/cpan/XML-AutoWriter/trunk/Makefile Message-ID: Revision: 13470 http://gar.svn.sourceforge.net/gar/?rev=13470&view=rev Author: wbonnet Date: 2011-02-25 22:25:01 +0000 (Fri, 25 Feb 2011) Log Message: ----------- cpan/xml-autowriter Fix Makefile, does not compile yet Modified Paths: -------------- csw/mgar/pkg/cpan/XML-AutoWriter/trunk/Makefile Modified: csw/mgar/pkg/cpan/XML-AutoWriter/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/XML-AutoWriter/trunk/Makefile 2011-02-25 22:22:34 UTC (rev 13469) +++ csw/mgar/pkg/cpan/XML-AutoWriter/trunk/Makefile 2011-02-25 22:25:01 UTC (rev 13470) @@ -10,6 +10,11 @@ functions named after the elements mentioned in the DTD. endef -DISTFILES = $(call admfiles,CSWpmxmlautowriter,depend prototype) +CATALOGNAME = pm_xml_autowriter +PACKAGES = CSWpm-xml-autowriter +ARCHALL_CSWpm-xml-autowriter = 1 + +LICENSE = README + include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Fri Feb 25 23:32:55 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Fri, 25 Feb 2011 22:32:55 +0000 Subject: [csw-devel] SF.net SVN: gar:[13471] csw/mgar/pkg/cpan/XML-Encoding/trunk Message-ID: Revision: 13471 http://gar.svn.sourceforge.net/gar/?rev=13471&view=rev Author: wbonnet Date: 2011-02-25 22:32:55 +0000 (Fri, 25 Feb 2011) Log Message: ----------- cpan/xml-encoding upgrade to 2.08 Modified Paths: -------------- csw/mgar/pkg/cpan/XML-Encoding/trunk/Makefile csw/mgar/pkg/cpan/XML-Encoding/trunk/checksums Removed Paths: ------------- csw/mgar/pkg/cpan/XML-Encoding/trunk/files/CSWpmxmlencoding.depend csw/mgar/pkg/cpan/XML-Encoding/trunk/files/CSWpmxmlencoding.gspec Modified: csw/mgar/pkg/cpan/XML-Encoding/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/XML-Encoding/trunk/Makefile 2011-02-25 22:25:01 UTC (rev 13470) +++ csw/mgar/pkg/cpan/XML-Encoding/trunk/Makefile 2011-02-25 22:32:55 UTC (rev 13471) @@ -1,7 +1,7 @@ NAME = XML-Encoding -VERSION = 1.01 +VERSION = 2.08 CATEGORIES = cpan -AUTHOR = COOPERCL +AUTHOR = SHAY DESCRIPTION = module for parsing XML encoding maps. define BLURB @@ -13,8 +13,13 @@ callback functions push_prefix, pop_prefix, and range_set. endef -DISTFILES += CSWpmxmlencoding.gspec CSWpmxmlencoding.depend +CATALOGNAME = pm_xml_encoding +PACKAGES = CSWpm-xml-encoding -DEPENDS += cpan/XML-Parser +ARCHALL_CSWpm-xml-encoding = 1 +LICENSE = README + +RUNTIM_DEP_PKGS = CSWpmxmlparser + include gar/category.mk Modified: csw/mgar/pkg/cpan/XML-Encoding/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/XML-Encoding/trunk/checksums 2011-02-25 22:25:01 UTC (rev 13470) +++ csw/mgar/pkg/cpan/XML-Encoding/trunk/checksums 2011-02-25 22:32:55 UTC (rev 13471) @@ -1,3 +1 @@ -ff878644f11b5bef9cf1b9ef3cc57936 download/CSWpmxmlencoding.gspec -216480fc0798fb3627ad2e288bbcd56a download/CSWpmxmlencoding.depend -a2ed80f2e1e95de518ca131044dff650 download/XML-Encoding-1.01.tar.gz +21a602a43060d49302c86ca77aa9db33 XML-Encoding-2.08.tar.gz Deleted: csw/mgar/pkg/cpan/XML-Encoding/trunk/files/CSWpmxmlencoding.depend =================================================================== --- csw/mgar/pkg/cpan/XML-Encoding/trunk/files/CSWpmxmlencoding.depend 2011-02-25 22:25:01 UTC (rev 13470) +++ csw/mgar/pkg/cpan/XML-Encoding/trunk/files/CSWpmxmlencoding.depend 2011-02-25 22:32:55 UTC (rev 13471) @@ -1 +0,0 @@ -P CSWpmxmlparser pm_xmlparser - a module for parsing XML documents Deleted: csw/mgar/pkg/cpan/XML-Encoding/trunk/files/CSWpmxmlencoding.gspec =================================================================== --- csw/mgar/pkg/cpan/XML-Encoding/trunk/files/CSWpmxmlencoding.gspec 2011-02-25 22:25:01 UTC (rev 13470) +++ csw/mgar/pkg/cpan/XML-Encoding/trunk/files/CSWpmxmlencoding.gspec 2011-02-25 22:32:55 UTC (rev 13471) @@ -1,9 +0,0 @@ -%var bitname pm_xmlencoding -%var pkgname CSWpmxmlencoding -%var arch all -%include url file://%{PKGLIB}/csw_cpan.gspec -%copyright -Copyright (c) 1998 Clark Cooper -All rights reserved. -This program is free software; you can redistribute it and/or modify it -under the same terms as Perl itself. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Fri Feb 25 23:40:54 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Fri, 25 Feb 2011 22:40:54 +0000 Subject: [csw-devel] SF.net SVN: gar:[13472] csw/mgar/pkg/cpan/XML-GDOME/trunk Message-ID: Revision: 13472 http://gar.svn.sourceforge.net/gar/?rev=13472&view=rev Author: wbonnet Date: 2011-02-25 22:40:54 +0000 (Fri, 25 Feb 2011) Log Message: ----------- cpan/xml-gdome Fix makefile, does not compile yet Modified Paths: -------------- csw/mgar/pkg/cpan/XML-GDOME/trunk/Makefile csw/mgar/pkg/cpan/XML-GDOME/trunk/checksums Removed Paths: ------------- csw/mgar/pkg/cpan/XML-GDOME/trunk/files/CSWpmxmlgdome.depend csw/mgar/pkg/cpan/XML-GDOME/trunk/files/CSWpmxmlgdome.gspec Modified: csw/mgar/pkg/cpan/XML-GDOME/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/XML-GDOME/trunk/Makefile 2011-02-25 22:32:55 UTC (rev 13471) +++ csw/mgar/pkg/cpan/XML-GDOME/trunk/Makefile 2011-02-25 22:40:54 UTC (rev 13472) @@ -9,9 +9,13 @@ accessing XML documents. endef -DISTFILES += CSWpmxmlgdome.gspec CSWpmxmlgdome.depend +CATALOGNAME = pm_xml_gdome +PACKAGES = CSWpm-xml-gdome -DEPENDS += lib/gdome2 -DEPENDS += cpan/XML-SAX cpan/XML-LibXML-Common +ARCHALL_CSWpm-xml-gdome = 1 +LICENSE = README + +RUNTIME_PKG_DEPS = CSWgdome2 CSWpmxmlsax CSWpmxmllibxmlcommon + include gar/category.mk Modified: csw/mgar/pkg/cpan/XML-GDOME/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/XML-GDOME/trunk/checksums 2011-02-25 22:32:55 UTC (rev 13471) +++ csw/mgar/pkg/cpan/XML-GDOME/trunk/checksums 2011-02-25 22:40:54 UTC (rev 13472) @@ -1,3 +1 @@ -97551a61a0d1e2afbf926d32d1cf167e download/CSWpmxmlgdome.gspec -bd97970c6c5c0c0731f7f98de7e838b7 download/CSWpmxmlgdome.depend -01ee59f686f9d409bdc316297942ea55 download/XML-GDOME-0.86.tar.gz +01ee59f686f9d409bdc316297942ea55 XML-GDOME-0.86.tar.gz Deleted: csw/mgar/pkg/cpan/XML-GDOME/trunk/files/CSWpmxmlgdome.depend =================================================================== --- csw/mgar/pkg/cpan/XML-GDOME/trunk/files/CSWpmxmlgdome.depend 2011-02-25 22:32:55 UTC (rev 13471) +++ csw/mgar/pkg/cpan/XML-GDOME/trunk/files/CSWpmxmlgdome.depend 2011-02-25 22:40:54 UTC (rev 13472) @@ -1,2 +0,0 @@ -P CSWpmlibxml2com pm_libxml2com - routines and constants common for XML::LibXML and XML::GDOME -P CSWpmxmlsax pm_xmlsax - Simple API for XML Deleted: csw/mgar/pkg/cpan/XML-GDOME/trunk/files/CSWpmxmlgdome.gspec =================================================================== --- csw/mgar/pkg/cpan/XML-GDOME/trunk/files/CSWpmxmlgdome.gspec 2011-02-25 22:32:55 UTC (rev 13471) +++ csw/mgar/pkg/cpan/XML-GDOME/trunk/files/CSWpmxmlgdome.gspec 2011-02-25 22:40:54 UTC (rev 13472) @@ -1,8 +0,0 @@ -%var bitname pm_xmlgdome -%var pkgname CSWpmxmlgdome -%include url file://%{PKGLIB}/csw_cpan.gspec -%copyright -Copyright (c) 2001, 2002 T.J. Mather. -Copyright 2001, AxKit.com Ltd. All rights reserved. -XML::GDOME is free software; -you may redistribute it and/or modify it under the same terms as Perl itself. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sat Feb 26 01:34:20 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sat, 26 Feb 2011 00:34:20 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[334] utilities Message-ID: Revision: 334 http://opencsw.svn.sourceforge.net/opencsw/?rev=334&view=rev Author: wahwah Date: 2011-02-26 00:34:20 +0000 (Sat, 26 Feb 2011) Log Message: ----------- Renaming .sh to .py before rewrite Added Paths: ----------- utilities/mk_core_list.py Removed Paths: ------------- utilities/mk_core_list.sh Copied: utilities/mk_core_list.py (from rev 332, utilities/mk_core_list.sh) =================================================================== --- utilities/mk_core_list.py (rev 0) +++ utilities/mk_core_list.py 2011-02-26 00:34:20 UTC (rev 334) @@ -0,0 +1,81 @@ +#!/bin/bash + +# $Id$ +# +# This script helps creating a list of core packages, by starting with +# specific packages and adding all their dependencies. + +set -u +set -e + +# The current idea is to keep the list divided by sections, each section +# sorted alphabetically. +core_start_pkgs=( + # Servers + apache2 + bind + exim + mysql5 + postfix + # Interpreters + perl + python + ruby + # Editors + emacs + vim + # Userland + coreutils + elinks + findutils + gawk + gfile + ggrep + gsed + gtar + mc + rsync + screen + sudo + wget +) +outfile="core.txt" +rm -f "${outfile}" tmp + +for catalogname in "${core_start_pkgs[@]}"; do + pkgutil -d --parse --config ~/pkgutil.conf \ + -W "${HOME}/.pkgutil" \ + "${catalogname}" \ + | awk '{print $1}' \ + >> "${outfile}" +done + +# This is what you get when you start coding in shell first. +PY_CODE="import yaml +import logging +# Reading a yaml file is impressively slow +catalogname_by_vendor = yaml.load(open('catalogname_by_vendor.yml', 'r')) +vendor_by_catalogname = {} +for vendor in catalogname_by_vendor: + for catalogname in catalogname_by_vendor[vendor]: + vendor_by_catalogname[catalogname] = vendor +collected_catalognames = [] +with open('${outfile}', 'rb') as in_fd: + for catalogname in in_fd: + catalogname = catalogname.strip() + if not catalogname: continue + if catalogname in vendor_by_catalogname: + vendor = vendor_by_catalogname[catalogname] + collected_catalognames.extend(catalogname_by_vendor[vendor]) + else: + logging.warning('%s not found in vendor_by_catalogname', catalogname) + collected_catalognames.append(catalogname) +with open('tmp', 'w') as out_fd: + out_fd.write('\n'.join(collected_catalognames)) +" +python -c "${PY_CODE}" +mv tmp "${outfile}" + +< "${outfile}" sort | uniq > tmp +mv tmp "${outfile}" +less "${outfile}" Deleted: utilities/mk_core_list.sh =================================================================== --- utilities/mk_core_list.sh 2011-02-25 10:31:09 UTC (rev 333) +++ utilities/mk_core_list.sh 2011-02-26 00:34:20 UTC (rev 334) @@ -1,81 +0,0 @@ -#!/bin/bash - -# $Id$ -# -# This script helps creating a list of core packages, by starting with -# specific packages and adding all their dependencies. - -set -u -set -e - -# The current idea is to keep the list divided by sections, each section -# sorted alphabetically. -core_start_pkgs=( - # Servers - apache2 - bind - exim - mysql5 - postfix - # Interpreters - perl - python - ruby - # Editors - emacs - vim - # Userland - coreutils - elinks - findutils - gawk - gfile - ggrep - gsed - gtar - mc - rsync - screen - sudo - wget -) -outfile="core.txt" -rm -f "${outfile}" tmp - -for catalogname in "${core_start_pkgs[@]}"; do - pkgutil -d --parse --config ~/pkgutil.conf \ - -W "${HOME}/.pkgutil" \ - "${catalogname}" \ - | awk '{print $1}' \ - >> "${outfile}" -done - -# This is what you get when you start coding in shell first. -PY_CODE="import yaml -import logging -# Reading a yaml file is impressively slow -catalogname_by_vendor = yaml.load(open('catalogname_by_vendor.yml', 'r')) -vendor_by_catalogname = {} -for vendor in catalogname_by_vendor: - for catalogname in catalogname_by_vendor[vendor]: - vendor_by_catalogname[catalogname] = vendor -collected_catalognames = [] -with open('${outfile}', 'rb') as in_fd: - for catalogname in in_fd: - catalogname = catalogname.strip() - if not catalogname: continue - if catalogname in vendor_by_catalogname: - vendor = vendor_by_catalogname[catalogname] - collected_catalognames.extend(catalogname_by_vendor[vendor]) - else: - logging.warning('%s not found in vendor_by_catalogname', catalogname) - collected_catalognames.append(catalogname) -with open('tmp', 'w') as out_fd: - out_fd.write('\n'.join(collected_catalognames)) -" -python -c "${PY_CODE}" -mv tmp "${outfile}" - -< "${outfile}" sort | uniq > tmp -mv tmp "${outfile}" -less "${outfile}" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sat Feb 26 01:34:59 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sat, 26 Feb 2011 00:34:59 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[336] buildfarm/bin Message-ID: Revision: 336 http://opencsw.svn.sourceforge.net/opencsw/?rev=336&view=rev Author: wahwah Date: 2011-02-26 00:34:59 +0000 (Sat, 26 Feb 2011) Log Message: ----------- Adding notes about the repository Requires the Id keyword to be set for files: svn ps svn:keywords Id .../buildfarm/bin/experimental-footer.inc svn ps svn:keywords Id .../buildfarm/bin/experimental-head.inc Modified Paths: -------------- buildfarm/bin/experimental-footer.inc buildfarm/bin/experimental-head.inc Modified: buildfarm/bin/experimental-footer.inc =================================================================== --- buildfarm/bin/experimental-footer.inc 2011-02-26 00:34:44 UTC (rev 335) +++ buildfarm/bin/experimental-footer.inc 2011-02-26 00:34:59 UTC (rev 336) @@ -1,3 +1,4 @@ + Modified: buildfarm/bin/experimental-head.inc =================================================================== --- buildfarm/bin/experimental-head.inc 2011-02-26 00:34:44 UTC (rev 335) +++ buildfarm/bin/experimental-head.inc 2011-02-26 00:34:59 UTC (rev 336) @@ -1,4 +1,11 @@ + + OpenCSW Buildfarm Package Versions This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sat Feb 26 01:34:44 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sat, 26 Feb 2011 00:34:44 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[335] utilities Message-ID: Revision: 335 http://opencsw.svn.sourceforge.net/opencsw/?rev=335&view=rev Author: wahwah Date: 2011-02-26 00:34:44 +0000 (Sat, 26 Feb 2011) Log Message: ----------- mk_core_list.py: A Python rewrite Modified Paths: -------------- utilities/mk_core_list.py Added Paths: ----------- utilities/catalogname_by_vendor.json Removed Paths: ------------- utilities/catalogname_by_vendor.yml Added: utilities/catalogname_by_vendor.json =================================================================== --- utilities/catalogname_by_vendor.json (rev 0) +++ utilities/catalogname_by_vendor.json 2011-02-26 00:34:44 UTC (rev 335) @@ -0,0 +1,6138 @@ +{ + "http://www.maier-komor.de/xjobs.html": [ + "xjobs" + ], + "http://www.clearskyinstitute.com/xephem/": [ + "xephem" + ], + "http://www.nlnetlabs.nl/downloads/nsd/": [ + "nsd" + ], + "http://search.cpan.org/~miyagawa/Log-Dispatch-Config": [ + "pm_logdispatchconf" + ], + "http://search.cpan.org/~mlehmann/Convert-UUlib": [ + "pm_convertuulib" + ], + "http://tinyca.sm-zone.net/": [ + "tinyca2" + ], + "http://codespeak.net/lxml/": [ + "py_lxml" + ], + "http://www.ohse.de/uwe/software/lrzsz.html": [ + "lrzsz" + ], + "http://pypi.python.org/packages/source/d/django-sorting/": [ + "py_django_sorting" + ], + "http://www.scala-lang.org/": [ + "scala" + ], + "http://search.cpan.org/~srezic/Tk": [ + "pm_tk" + ], + "http://ftp.gnome.org/pub/GNOME/sources/libsigc++/2.2/": [ + "libsigc++", + "libsigc++_devel" + ], + "http://www.openprinting.org/download/ijs/": [ + "ijs" + ], + "http://www.whiteboard.ne.jp/~admin2/tuntap/source/tuntap/": [ + "tap", + "tun" + ], + "http://www.caliban.org/files/bash/": [ + "bash_completion" + ], + "http://www.isc.org/software/bind": [ + "bind", + "bind_chroot", + "bind_devel", + "bind_utils", + "libbind" + ], + "http://search.cpan.org/~sdp/Lingua-Stem-Fr": [ + "pm_linguastemfr" + ], + "http://alioth.debian.org/projects/libpst/": [ + "libpst" + ], + "http://www.ignavus.net/software.html": [ + "xosd" + ], + "http://search.cpan.org/CPAN/authors/id/W/WA/WADG/": [ + "pm_configinifiles" + ], + "http://search.cpan.org/~robin/PadWalker": [ + "pm_padwalker" + ], + "ftp://ftp.dcs.ed.ac.uk/pub/ajcd/psutils.tar.gz": [ + "psutils" + ], + "http://search.cpan.org/~djkernen/Mail-IMAPClient-2.2.9/": [ + "pm_mailimapclient" + ], + "http://www.corpit.ru/mjt/rbldnsd/": [ + "rbldnsd" + ], + "http://www.logilab.org/project/logilab-astng": [ + "py_logilab_astng" + ], + "ftp://sbcl.sourceforge.net": [ + "sbcl" + ], + "http://www.bacula.org/": [ + "bacula", + "bacula_client", + "bacula_docs", + "bacula_gnome" + ], + "http://search.cpan.org/~clkao/IO-Digest": [ + "pm_iodigest" + ], + "http://trac.edgewall.org/wiki/TracDownload": [ + "trac" + ], + "http://search.cpan.org/~petdance/Module-Starter": [ + "pm_modulestarter" + ], + "http://compression.ca/pbzip2/": [ + "pbzip2" + ], + "http://subtitleripper.sourceforge.net": [ + "subtitleripper" + ], + "http://search.cpan.org/~rclamp/Number-Compare-0.01/": [ + "pm_nbrcompare" + ], + "http://www.kde.org/": [ + "kdesdk", + "kdesdkcommon", + "kdevelop", + "kdevelopcommon" + ], + "http://search.cpan.org/~edavis/Sort-Versions": [ + "pm_sortversions" + ], + "http://search.cpan.org/~philipp/Net-Patricia": [ + "pm_netpatricia" + ], + "http://search.cpan.org/~kmacleod/libxml-perl": [ + "pm_libxmlperl" + ], + "http://apache.cict.fr/commons/validator/binaries/": [ + "commons_validat_doc", + "commons_validator" + ], + "http://magyarispell.sourceforge.net": [ + "aspellhu" + ], + "http://ibm.com/developerworks/opensource/jikes": [ + "jikes" + ], + "http://www.tcsh.org/": [ + "tcsh" + ], + "http://www.reportlab.org/downloads.html#renderPM": [ + "renderpm" + ], + "http://ftp.gnu.org/pub/gnu/binutils/": [ + "binutils" + ], + "http://search.cpan.org/~wrw/Number-Format": [ + "pm_numberformat" + ], + "http://www.jasspa.com": [ + "jasspame" + ], + "http://www.gnupg.org/related_software/gpgme/": [ + "gpgme" + ], + "http://weather.ou.edu/~apw/projects/stress/": [ + "stress" + ], + "http://www.funtoo.org/archive/keychain/": [ + "keychain" + ], + "http://liferea.sourceforge.net/": [ + "liferea" + ], + "http://cinepaint.sourceforge.net/": [ + "cinepaint" + ], + "http://phpldapadmin.sourceforge.net/": [ + "phpldapadmin" + ], + "http://downloads.sourceforge.net/xchm/": [ + "xchm" + ], + "http://code.google.com/p/protobuf/": [ + "libprotobuf6", + "libprotobuf_lite6", + "libprotoc6", + "protobuf", + "protobuf_devel", + "py_protobuf" + ], + "http://meld.sourceforge.net/": [ + "meld" + ], + "http://www.sun.com/software/products/studio/": [ + "stlport" + ], + "http://pfelecan.free.fr/software/emacs_chooser/": [ + "emacs_chooser" + ], + "http://search.cpan.org/CPAN/authors/id/M/MS/MSCHWERN/": [ + "pm_filechdir" + ], + "http://search.cpan.org/~rclamp/Text-vFile-asData": [ + "pm_textvfileasdata" + ], + "http://search.cpan.org/~drolsky/DateTime": [ + "pm_datetime" + ], + "http://search.cpan.org/~abw/AppConfig": [ + "pm_appconfig" + ], + "ftp://ftp.cs.toronto.edu/pub/moraes/jove": [ + "jove" + ], + "http://search.cpan.org/~gnustavo/JIRA-Client": [ + "pm_jiraclient" + ], + "http://code.google.com/p/slack/": [ + "slack" + ], + "http://search.cpan.org/~andk/Devel-Symdump": [ + "pm_develsymdump" + ], + "http://www.while.org.uk/": [ + "vispan" + ], + "http://search.cpan.org/~rclamp/Text-Glob": [ + "pm_textglob" + ], + "http://www.vorbis.com/": [ + "libvorbis" + ], + "http://downloads.sourceforge.net/docbook/": [ + "docbookdsssl", + "docbookxsl", + "docbookxsldoc" + ], + "http://disktype.sourceforge.net/": [ + "disktype" + ], + "http://www.kurnik.org/dictionary/": [ + "aspellpl" + ], + "http://www.ibiblio.org/mc/": [ + "mc" + ], + "http://www.maier-komor.de/mbuffer.html": [ + "mbuffer" + ], + "http://www.darwinsys.com/file/": [ + "gfile", + "libmagic", + "libmagic1", + "libmagic_data", + "libmagic_dev", + "py_libmagic" + ], + "http://downloads.sourceforge.net/mysql-python/": [ + "pymysql" + ], + "http://apache.crihan.fr/dist/apr/": [ + "apr", + "apr_util" + ], + "http://mirrors.kernel.org/gnu/indent/": [ + "indent" + ], + "http://search.cpan.org/~rclamp/Devel-Caller": [ + "pm_develcaller" + ], + "http://www.cs.indiana.edu/~kinzler/xtitle/": [ + "xtitle" + ], + "http://alioth.debian.org/projects/pkg-isocodes/": [ + "iso_codes" + ], + "http://www.lighttpd.net/": [ + "lighttpd" + ], + "http://www.nessus.org": [ + "libnasl", + "nessus", + "nessuslib", + "nessusplugins" + ], + "http://search.cpan.org/~adamk/prefork": [ + "pm_prefork" + ], + "http://search.cpan.org/~flora/FCGI": [ + "pm_fcgi" + ], + "http://www.maxmind.com/app/geolitecountry": [ + "geolitedb" + ], + "http://search.cpan.org/~pvandry/gettext": [ + "pm_localegettext" + ], + "http://www.pyzor.org/": [ + "pyzor" + ], + "http://download.fedora.redhat.com/pub/fedora/linux/core/development/SRPMS/": [ + "logrotate" + ], + "http://djvu.sourceforge.net/": [ + "djvulibre", + "djvulibre_devel", + "djvulibre_rt" + ], + "ftp://ftp.planix.com/pub/mirror/": [ + "trafshow" + ], + "http://www.libspf2.org": [ + "libspf2" + ], + "http://www.ncftp.com/": [ + "ncftp" + ], + "http://ctags.sourceforge.net/": [ + "ectags" + ], + "http://bre.klaki.net/programs/colormake/": [ + "colormake" + ], + "http://ftp.gnome.org/pub/GNOME/sources/pygobject/2.15/": [ + "pygobject" + ], + "http://mrtg-pme.sourceforge.net/": [ + "mrtgpme" + ], + "http://get.bitlbee.org/src/": [ + "bitlbee" + ], + "http://search.cpan.org/~rgarcia/Test-LongString-0.11/": [ + "pm_testlongstr" + ], + "http://www.sane-project.org/": [ + "saneback", + "sanefront" + ], + "ftp://ftp.kde.org/pub/kde/stable/3.3.1/src": [ + "kde_i18n_fa", + "kde_i18n_fi", + "kde_i18n_hr", + "kde_i18n_mn", + "kde_i18n_ms", + "kde_i18n_uz", + "kde_i18n_zhtw" + ], + "http://www.python-ldap.org/": [ + "py_ldap" + ], + "http://expect.nist.gov/": [ + "expect" + ], + "http://dist.codehaus.org/jetty/jetty-6.1.7/": [ + "jetty6", + "jetty6doc" + ], + "http://www.postfix.org": [ + "postfix" + ], + "ftp://ftp.andrew.cmu.edu/pub/mpack": [ + "mpack" + ], + "http://www.imagemagick.org": [ + "imagemagick" + ], + "http://www.phpmyadmin.net": [ + "phpmyadmin" + ], + "http://search.cpan.org/~jmcnamara/OLE-Storage_Lite": [ + "pm_olestoragelite" + ], + "http://search.cpan.org/~chromatic/Test-MockObject": [ + "pm_tstmockobject" + ], + "http://www.netperf.org/netperf/NetperfPage.html": [ + "netperf" + ], + "http://www.swox.com/gmp/": [ + "libgmp" + ], + "http://pywebsvcs.sourceforge.net/": [ + "py_soappy" + ], + "http://search.cpan.org/~eryq/Convert-BinHex": [ + "pm_convertbinhex" + ], + "http://search.cpan.org/~nikip/Authen-PAM": [ + "pm_authenpam" + ], + "http://apache.cict.fr/commons/logging/binaries/": [ + "commons_logging", + "commons_logging_doc" + ], + "http://search.cpan.org/~adamk/YAML": [ + "pm_yaml" + ], + "http://www.imapproxy.org/downloads/": [ + "imapproxy" + ], + "http://www.dillo.org/": [ + "dillo" + ], + "http://www.gnome.org/projects/gnumeric/": [ + "gnumeric" + ], + "http://apache.cict.fr/commons/pool/binaries/": [ + "commons_pool", + "commons_pool_doc" + ], + "http://gtklp.sourceforge.net/": [ + "gtklp" + ], + "http://www.xvid.org/": [ + "libxvidcore", + "libxvidcore_devel" + ], + "http://www.oracle.com/technology/products/berkeley-db/index.html": [ + "berkeleydb43", + "berkeleydb43_devel", + "berkeleydb43_doc" + ], + "http://search.cpan.org/~saper/Net-Pcap": [ + "pm_netpcap" + ], + "http://search.cpan.org/~olaf/Net-DNS": [ + "pm_netdns" + ], + "http://www.ece.uvic.ca/~mdadams/jasper/": [ + "jasper", + "jasperdocs" + ], + "http://search.cpan.org/~muir/Net-Netmask": [ + "pm_netnetmask" + ], + "http://ftp.us.debian.org/debian/pool/main/libp/libpaper/": [ + "libpaper" + ], + "http://zagadka.vm.bytemark.co.uk/magit/": [ + "magit" + ], + "http://search.cpan.org/~sjburges/Gimp-2.2pre1/": [ + "pm_gimp" + ], + "http://www.gnome.org/projects/evolution": [ + "evolution", + "evolution_webcal" + ], + "http://www.remotesensing.org/libtiff/": [ + "tiff" + ], + "http://dev.mysql.com/downloads/connector/odbc/3.51.html": [ + "myodbc" + ], + "http://www.nlnetlabs.nl/projects/ldns/": [ + "ldnsdrill", + "libldns1", + "libldns_devel" + ], + "http://search.cpan.org/~larslund/PDF-Reuse-Barcode": [ + "pm_pdfreusebarcode" + ], + "http://savannah.nongnu.org/projects/spamass-milt": [ + "spamass_milter" + ], + "http://www.mmonit.com/monit/": [ + "monit" + ], + "http://www.pythonware.com/products/pil/": [ + "pil" + ], + "ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof": [ + "lsof" + ], + "http://www.libssh2.org": [ + "libssh2", + "libssh2_devel" + ], + "http://search.cpan.org/~clkao/SVK": [ + "svk" + ], + "http://downloads.sourceforge.net/libdnet/": [ + "libdnet" + ], + "http://www.mysql.com/products/mysql/": [ + "mysql4" + ], + "http://search.cpan.org/~rkobes/ExtUtils-Manifest": [ + "pm_extutilsmft" + ], + "http://savannah.nongnu.org/projects/xforms": [ + "xforms" + ], + "http://www.dict.org/": [ + "dict" + ], + "http://pysqlite.googlecode.com/files/": [ + "pysqlite2" + ], + "http://surfnet.dl.sourceforge.net/sourceforge/nagiosplug/": [ + "nagios_plugins" + ], + "http://www.nano-editor.org/": [ + "nano" + ], + "http://search.cpan.org/~mschilli/Log-Log4perl": [ + "pm_log4perl" + ], + "http://cups.sourceforge.net/xpp/": [ + "xpp" + ], + "http://eterm.org/": [ + "libast" + ], + "http://ftp.gnome.org/pub/GNOME/sources/libgtop": [ + "libgtop" + ], + "http://www.xiph.org/ao/": [ + "libao" + ], + "http://search.cpan.org/~bingos/IPC-Cmd": [ + "pm_ipccmd" + ], + "http://www.balabit.com/downloads/files/eventlog/0.2/": [ + "eventlog" + ], + "http://oriya.sarovar.org/hi-dict.html": [ + "aspellhi" + ], + "http://search.cpan.org/~drolsky/Devel-StackTrace": [ + "pm_devstacktrace" + ], + "http://www.novell.com/products/connector/": [ + "ximian_connector" + ], + "http://www.ivrix.org.il/projects/spell-checker/": [ + "aspellhe" + ], + "http://search.cpan.org/~adamk/Class-Adapter": [ + "pm_classadapter" + ], + "http://search.cpan.org/~mirk/Biblio-EndnoteStyle": [ + "pm_biblioendnotest" + ], + "http://www.pygtk.org": [ + "pygtk" + ], + "http://www.math.utah.edu/~beebe/software/ndiff/": [ + "ndiff" + ], + "http://www.dtek.chalmers.se/groups/dvd/": [ + "ogle" + ], + "http://downloads.sourceforge.net/setoolkit/": [ + "setoolkit" + ], + "http://search.cpan.org/~markov/Object-Realize-Later": [ + "pm_objrealizelater" + ], + "http://selenic.com/mercurial/release/": [ + "mercurial" + ], + "http://search.cpan.org/~joserodr/Schedule-At": [ + "pm_scheduleat" + ], + "http://search.cpan.org/~adamk/Algorithm-Dependency": [ + "pm_algorithmdep" + ], + "http://www.fastcoder.net/~thumper/software/sysadmin/chkconfig/": [ + "chkconfig" + ], + "http://pypi.python.org/pypi/python-graph": [ + "py_graph" + ], + "http://code.google.com/p/namebench": [ + "namebench" + ], + "http://search.cpan.org/~gbarr/Convert-ASN1": [ + "pm_convertasn1" + ], + "http://ftp.gnome.org/pub/GNOME/sources/esound/0.2/": [ + "esound" + ], + "http://josefsson.org/libntlm/": [ + "libntlm" + ], + "http://search.cpan.org/~dschwei/Parse-Syslog": [ + "pm_parsesyslog" + ], + "http://opencsw.org": [ + "gar_devel", + "gnulinks" + ], + "http://www.libmng.com/": [ + "libmng" + ], + "http://imapfilter.hellug.gr/source/": [ + "imapfilter" + ], + "http://libcddb.sourceforge.net/": [ + "libcddb" + ], + "http://www.flightgear.org": [ + "flightgear", + "flightgear_base" + ], + "http://search.cpan.org/~markov/MailTools": [ + "pm_mailtools" + ], + "http://materm.sourceforge.net/": [ + "mrxvt" + ], + "http://search.cpan.org/~bwarfield/GDGraph": [ + "pm_gdgraph" + ], + "http://www.rhythmbox.org": [ + "rhythmbox" + ], + "http://curl.haxx.se": [ + "curl", + "curl_devel", + "curl_rt" + ], + "http://www.whiteboard.ne.jp/admin2/tuntap/": [ + "openvpn" + ], + "http://www.nasm.us/": [ + "nasm" + ], + "http://www.courier-mta.org/authlib/": [ + "courier_auth" + ], + "http://www.jmknoble.net/WindowMaker/wmclock/": [ + "wmclock" + ], + "http://downloads.sourceforge.net/openjade/": [ + "openjade" + ], + "http://libiptcdata.sourceforge.net": [ + "libiptcdata" + ], + "http://www.gnu.org/software/findutils/": [ + "findutils" + ], + "http://www.ex-parrot.com/~pdw/iftop/download/": [ + "iftop" + ], + "https://fedorahosted.org/tmpwatch/": [ + "tmpwatch" + ], + "http://search.cpan.org/~ovid/Sub-Override": [ + "pm_suboverride" + ], + "http://www.icecast.org/": [ + "icecast" + ], + "http://postgrey.schweikert.ch/pub/": [ + "postgrey" + ], + "http://ftp.gnu.org/pub/gnu/gawk": [ + "gawk" + ], + "http://search.cpan.org/~ilyaz/FreezeThaw": [ + "pm_freezethaw" + ], + "http://search.cpan.org/~cfaerber/Net-IDN-Encode": [ + "pm_netidnencode" + ], + "http://www.daa.com.au/~james/software/pygtk/": [ + "gnome_python" + ], + "http://ftp.gnome.org/pub/gnome/sources/gcalctool": [ + "gcalctool" + ], + "http://www.gnu.org/software/texinfo/": [ + "texinfo" + ], + "http://ftp.gnome.org/pub/GNOME/sources/gnome-mime-data": [ + "gnomemime2" + ], + "http://ftp.gnome.org/pub/GNOME/sources/gnome-keyring-manager": [ + "gnomekeyringmgr" + ], + "http://search.cpan.org/~drolsky/DateTime-Format-W3CDTF": [ + "pm_datetimefmtw3tf" + ], + "http://rsync.samba.org/": [ + "rsync" + ], + "http://ftp.gnome.org/pub/GNOME/sources/gnome-session": [ + "gnome_session" + ], + "http://downloads.sourceforge.net/libspiff/": [ + "libxspf4", + "libxspf_devel" + ], + "http://sourceforge.net/projects/rxvt/": [ + "rxvt" + ], + "http://search.cpan.org/~pmqs/Compress-Raw-Bzip2": [ + "pm_compressrawbz2" + ], + "http://www.skencil.org/": [ + "skencil" + ], + "http://search.cpan.org/~esummers/MARC-Charset": [ + "pm_marccharset" + ], + "http://search.cpan.org/~pmqs/IO-Compress-Base": [ + "pm_iocompressbase" + ], + "http://ftp.gnome.org/pub/gnome/sources/gnome-mag": [ + "gnomemag" + ], + "http://burtonini.com/blog/computers/devilspie": [ + "devilspie" + ], + "http://www.pizzashack.org/rssh/": [ + "rssh" + ], + "http://downloads.sourceforge.net/synergy2/": [ + "synergy" + ], + "http://search.cpan.org/~oevans/RADIUS-UserFile": [ + "pm_radiususerfile" + ], + "http://search.cpan.org/~dconway/Class-Std": [ + "pm_classstd" + ], + "http://www.mozilla.org/": [ + "mozilla", + "seamonkey", + "sunbird" + ], + "ftp://ftp.lyx.org/pub/lyx/stable/": [ + "lyx" + ], + "http://www.gnu.org/software/xorriso": [ + "xorriso" + ], + "http://spruce.sourceforge.net/gmime/": [ + "gmime" + ], + "http://projects.gnome.org/libIDL/": [ + "libidl" + ], + "http://search.cpan.org/~gmcharlt/MARC-XML": [ + "pm_marcxml" + ], + "http://www.mailscanner.info": [ + "mailscanner" + ], + "http://downloads.sourceforge.net/asciidoc/": [ + "asciidoc" + ], + "http://cgi.cse.unsw.edu.au/~neilb/source/wiggle/": [ + "wiggle" + ], + "http://ccache.samba.org/": [ + "ccache" + ], + "http://www.scribus.co.uk": [ + "scribus_templates" + ], + "http://freshmeat.net/projects/fio": [ + "fio" + ], + "http://bochs.sourceforge.net/": [ + "bochs" + ], + "http://plib.sourceforge.net": [ + "plib" + ], + "http://mirrors.usc.edu/": [ + "xpm" + ], + "http://search.cpan.org/~kwilliams/Path-Class": [ + "pm_pathclass" + ], + "http://www.cairographics.org": [ + "pycairo" + ], + "http://www.indexdata.com/zebra": [ + "idzebra" + ], + "http://search.cpan.org/~bbb/IO-Multiplex": [ + "pm_iomultiplex" + ], + "http://www.mono-project.com/": [ + "mono", + "xsp" + ], + "http://search.cpan.org/~kgb/ExtUtils-F77": [ + "pm_extutilsf77" + ], + "http://da.speling.org/": [ + "aspellda" + ], + "http://jabberd.jabberstudio.org/1.4/": [ + "jabberd" + ], + "http://borel.slu.edu/crubadan/index.html": [ + "aspellrw", + "aspelltl", + "aspelltn" + ], + "http://search.cpan.org/~mschwern/UNIVERSAL-require": [ + "pm_univrequire" + ], + "http://sudosh2.sf.net": [ + "sudosh2" + ], + "http://www.unbound.net/": [ + "libunbound2", + "unbound", + "unbound_devel", + "unbound_host" + ], + "http://people.ucsc.edu/~jrudd/spamassassin/": [ + "botnet" + ], + "https://trac.eecs.iu-bremen.de/projects/scli/": [ + "scli" + ], + "http://mlterm.sourceforge.net/": [ + "mlterm" + ], + "http://elinks.cz/download/": [ + "elinks" + ], + "http://www.gnu.org/software/libsigsegv/": [ + "libsigsegv", + "libsigsegv0", + "libsigsegv2", + "libsigsegv_devel" + ], + "http://search.cpan.org/~chorny/MLDBM": [ + "pm_mldbm" + ], + "http://www.gnu.org/software/gv/": [ + "gv" + ], + "http://netcat.sourceforge.net/": [ + "netcat" + ], + "http://www.ntp.org/": [ + "ntp" + ], + "http://search.cpan.org/~xern/Lingua-PT-Stemmer": [ + "pm_linguaptstemmer" + ], + "http://www.gnu.org/software/screen/": [ + "screen" + ], + "http://search.cpan.org/~clkao/Algorithm-Annotate": [ + "pm_algorithmannotate" + ], + "http://www.torproject.org": [ + "tor" + ], + "http://www.orcaware.com/orca": [ + "orca", + "orca_web" + ], + "ftp://ftp.gtk.org/pub/babl": [ + "libbabl" + ], + "http://search.cpan.org/~rdf/Clone": [ + "pm_clone" + ], + "http://search.cpan.org/~miker/NetAddr-IP": [ + "pm_netaddrip" + ], + "http://search.cpan.org/~dagolden/ExtUtils-CBuilder": [ + "pm_extutcbuilder" + ], + "http://augeas.net": [ + "augeas", + "py_augeas" + ], + "http://search.cpan.org/~tsch/Cairo": [ + "pm_cairo" + ], + "http://search.cpan.org/~abh/Apache-DBI": [ + "pm_apachedbi" + ], + "http://ftp.gnu.org/non-gnu/cvs/source/feature/1.12.13/": [ + "cvs", + "cvs_feature" + ], + "http://search.cpan.org/~bingos/Module-Loaded": [ + "pm_modloaded" + ], + "http://www.unixodbc.org/": [ + "unixodbc" + ], + "http://search.cpan.org/~shlomif/XML-RSS": [ + "pm_xmlrss" + ], + "http://wvware.sourceforge.net": [ + "libwmf", + "libwmf_devel", + "libwmf_doc", + "libwmf_gtk", + "wmf", + "wmf_fonts" + ], + "http://downloads.sourceforge.net/tardy/": [ + "tardy" + ], + "ftp://ftp.mozilla.org/pub/mozilla.org/thunderbird/releases/2.0.0.23/linux-i686/xpi/": [ + "thunderbird_af", + "thunderbird_be", + "thunderbird_bg", + "thunderbird_ca", + "thunderbird_cs", + "thunderbird_da", + "thunderbird_de", + "thunderbird_el", + "thunderbird_en_gb", + "thunderbird_es_ar", + "thunderbird_es_es", + "thunderbird_eu", + "thunderbird_fi", + "thunderbird_fr", + "thunderbird_ga_ie", + "thunderbird_he", + "thunderbird_hu", + "thunderbird_it", + "thunderbird_ja", + "thunderbird_ko", + "thunderbird_lt", + "thunderbird_mk", + "thunderbird_nb_no", + "thunderbird_nl", + "thunderbird_nn_no", + "thunderbird_pa_in", + "thunderbird_pl", + "thunderbird_pt_br", + "thunderbird_pt_pt", + "thunderbird_ru", + "thunderbird_sk", + "thunderbird_sl", + "thunderbird_sv_se", + "thunderbird_tr", + "thunderbird_uk", + "thunderbird_zh_cn", + "thunderbird_zh_tw" + ], + "http://www.jfc.org.uk/software/lwm.html": [ + "lwm" + ], + "http://phpsysinfo.sourceforge.net": [ + "phpsysinfo" + ], + "http://search.cpan.org/~davecross/Calendar-Simple": [ + "pm_calendarsimp", + "pm_calendarsimple" + ], + "http://www.gnu.org/software/gsl/": [ + "gsl", + "gsl_doc", + "gsl_rt" + ], + "http://search.cpan.org/~rjbs/MIME-Lite": [ + "pm_mimelite" + ], + "http://www.samba.org/": [ + "samba", + "samba_client", + "samba_common", + "samba_doc", + "samba_lib", + "samba_libdev", + "samba_swat", + "samba_wb" + ], + "http://svn.blastwave.org/browser/csw/trunk/utils/pkg_update_watch/files": [ + "pkg_update_watch" + ], + "http://lpr.sourceforge.net": [ + "npadmin" + ], + "http://download.wikimedia.org/mediawiki/1.14/": [ + "mediawiki" + ], + "http://www.htdig.org/": [ + "htdig" + ], + "http://www.gentoo.com/di/": [ + "di" + ], + "http://www.fodder.org/cksfv/": [ + "cksfv" + ], + "http://mcrypt.sourceforge.net/": [ + "libmcrypt" + ], + "http://packages.debian.org/unstable/devel/autoproject": [ + "autoproject" + ], + "http://search.cpan.org/~chartgrp/Chart": [ + "pm_chart" + ], + "http://downloads.sourceforge.net/php-mode/": [ + "php_mode" + ], + "http://www.techrescue.org/xboing/": [ + "xboing" + ], + "http://tinf2.vub.ac.be/~dvermeir/software/dv/nl-aspell/index.html": [ + "aspellnl" + ], + "http://downloads.sourceforge.net/swig/": [ + "swig" + ], + "http://search.cpan.org/~kane/Package-Constants": [ + "pm_pkgconst" + ], + "http://alpha.greenie.net/mgetty/": [ + "mgetty" + ], + "http://www.cs.arizona.edu/icon": [ + "icon" + ], + "http://initd.org/psycopg/tarballs/": [ + "py_psycopg2" + ], + "http://squidguard.org/": [ + "squidguard" + ], + "http://search.cpan.org/~tmtm/Class-Data-Inheritable-0.08/": [ + "pm_clsdtainherit" + ], + "http://search.cpan.org/~ivan/Net-SSH": [ + "pm_netssh" + ], + "http://search.cpan.org/~bigpresh/Pod-Readme": [ + "pm_podreadme" + ], + "http://live.gnome.org/GnomeKeyring": [ + "gnomekeyring" + ], + "http://www.worldforge.org/": [ + "libatlas_c++" + ], + "http://www.reallyslick.com": [ + "rsxs" + ], + "http://perso.wanadoo.fr/remi.vanicat/aspell/": [ + "aspellfr" + ], + "http://fresh.t-systems-sfr.com/unix/src/misc/": [ + "pstree" + ], + "http://www.htmldoc.org": [ + "htmldoc", + "htmldoc_common" + ], + "http://www.68k.org/~michael/audiofile/": [ + "audiofile" + ], + "http://www.libgd.org/releases/": [ + "gd" + ], + "http://search.cpan.org/~mschwern/Test-Simple": [ + "pm_testsimple" + ], + "http://www.gnu.org/software/pth/": [ + "pth" + ], + "http://search.cpan.org/~mlehmann/common-sense": [ + "pm_commonsense" + ], + "http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/2.0.0.23/source/": [ + "thunderbird" + ], + "http://savannah.gnu.org/projects/mailutils/": [ + "mailutils" + ], + "http://search.cpan.org/~jkeiser/PatchReader": [ + "pm_patchreader" + ], + "http://libofx.sourceforge.net/": [ + "libofx", + "libofx_devel", + "libofx_doc", + "libofx_rt" + ], + "http://www.gnu.org/software/osip/osip.html": [ + "libosip2" + ], + "http://www.mldonkey.org/": [ + "mldonkey" + ], + "http://prboom.sourceforge.net/": [ + "prboom" + ], + "http://sourceforge.net/projects/blackboxwm": [ + "bbkeys", + "bbpager", + "blackbox" + ], + "http://search.cpan.org/~dwheeler/Test-Pod": [ + "pm_testpod" + ], + "http://www.zope.org": [ + "zope" + ], + "http://www.libra-aries-books.co.uk/software/rc": [ + "rc" + ], + "http://www.nongnu.org/lzip/lzip.html": [ + "lzip" + ], + "http://search.cpan.org/~gaas/libwww-perl": [ + "pm_libwww" + ], + "http://www.cs.uit.no/~daniels/PingTunnel/": [ + "ptunnel" + ], + "http://www.mesa3d.org": [ + "mesademos" + ], + "http://search.cpan.org/~wadg/GD-Graph3d": [ + "pm_gdgraph3d" + ], + "http://www.zlib.net": [ + "zlib" + ], + "http://swissnet.ai.mit.edu/ftpdir/scm/": [ + "slib" + ], + "http://xfce-goodies.berlios.de/": [ + "xfce_load" + ], + "http://www.nongnu.org/lzip/lzlib.html": [ + "lzlib", + "plzip" + ], + "http://flac.sourceforge.net/": [ + "libflac", + "xmms_flac" + ], + "ftp://ftp.proftpd.org/distrib/source/": [ + "proftpd" + ], + "http://www.tcpdump.org/": [ + "tcpdump" + ], + "http://www.fontconfig.org/release/": [ + "fontconfig" + ], + "http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/pub/libs/": [ + "cgilib" + ], + "http://ftp.gnome.org/pub/GNOME/sources/libglade/0.17/": [ + "libglade" + ], + "http://rospell.sourceforge.net": [ + "aspellro" + ], + "http://python.org/download/releases/2.6.6": [ + "idle", + "libpython2_5_1_0", + "libpython2_6_1_0", + "python", + "python_devel", + "python_tk" + ], + "http://python.org/download/releases/2.6.4": [ + "python_rt", + "python_test" + ], + "http://www.mimedefang.org/index.php/": [ + "mimedefang" + ], + "http://search.cpan.org/~pmqs/BerkeleyDB": [ + "pm_berkeleydb" + ], + "http://search.cpan.org/~cogent/Tree-DAG_Node": [ + "pm_treedagnode" + ], + "http://www.slrn.org/": [ + "slrn" + ], + "http://search.cpan.org/~markstos/CGI-Session": [ + "pm_cgisession" + ], + "http://search.cpan.org/~gaas/MIME-Base64": [ + "pm_mimebase64" + ], + "http://regina-rexx.sourceforge.net": [ + "regina" + ], + "http://search.cpan.org/~abw/Template-GD-2.66/": [ + "pm_templategd" + ], + "http://search.cpan.org/~petdance/": [ + "ack" + ], + "http://www.webdav.org/neon/": [ + "neon", + "neon_devel", + "neon_full" + ], + "http://www.venge.net/monotone/": [ + "monotone" + ], + "http://www.cs.wisc.edu/~ghost/doc/pstotext.htm": [ + "pstotext" + ], + "http://ftp.gnome.org/pub/GNOME/sources/epiphany/": [ + "epiphany" + ], + "http://proxytunnel.sourceforge.net/": [ + "proxytunnel" + ], + "http://www.libsdl.org/projects/SDL_mixer/release/": [ + "sdlmixer" + ], + "http://search.cpan.org/~jesse/HTTP-Server-Simple-Mason-0.09/": [ + "pm_httpsvrmason" + ], + "http://tug.ctan.org/tex-archive/macros/latex/contrib/svninfo/": [ + "tex_svninfo" + ], + "http://cyberelk.net/tim/software/patchutils/": [ + "patchutils" + ], + "http://www.xpilot.org/": [ + "xpilot" + ], + "http://www.bittorrent.com/": [ + "bittorrent" + ], + "http://downloads.sourceforge.net/aide/": [ + "aide" + ], + "http://www.audiocoding.com/": [ + "faad2", + "libfaac" + ], + "http://ftp.gnome.org/pub/GNOME/sources/libsoup/2.26/": [ + "libsoup", + "libsoup2", + "libsoup_devel", + "libsoup_doc" + ], + "http://www.qhull.org/": [ + "qhull", + "qhull_rt" + ], + "http://telugu.sarovar.org/wiki/index.php/Wordlist%20and%20Dictionaries": [ + "aspellte" + ], + "http://openbox.org/": [ + "obconf", + "openbox" + ], + "http://www.reportlab.org/": [ + "reportlab" + ], + "http://gtk-gnutella.sourceforge.net/": [ + "gtkgnutella" + ], + "http://linux.org.mt/projects/spellcheck": [ + "aspellmt" + ], + "http://www.sqlite.org/": [ + "sqlite" + ], + "http://www.eudora.com/qpopper": [ + "qpopper" + ], + "http://search.cpan.org/~sbeck/Date-Manip": [ + "pm_datemanip" + ], + "http://search.cpan.org/~cjm/Text-Wrapper": [ + "pm_textwrap", + "pm_textwrapper" + ], + "http://www.scons.org/": [ + "scons" + ], + "http://www.amanda.org/": [ + "amanda" + ], + "http://search.cpan.org/~sifukurt/Crypt-RC5": [ + "pm_cryptrc5" + ], + "http://www.gnuplot.info/": [ + "gnuplot" + ], + "http://downloads.sourceforge.net/euler/": [ + "euler" + ], + "http://xorg.freedesktop.org/releases/X11R7.5/src/lib/": [ + "cx_libxrender", + "libdmx", + "libdmx_devel", + "libfontenc", + "libfontenc_devel", + "libfs", + "libfs_devel", + "libice", + "libice_devel", + "libsm", + "libsm_devel", + "libx11", + "libx11_devel", + "libxau", + "libxau_devel", + "libxaw", + "libxaw_devel", + "libxcomposite", + "libxcomposite_devel", + "libxcursor", + "libxcursor_devel", + "libxdamage", + "libxdamage_devel", + "libxdmcp", + "libxdmcp_devel", + "libxext", + "libxext_devel", + "libxfixes", + "libxfixes_devel", + "libxfont", + "libxfont_devel", + "libxft2", + "libxft2_devel", + "libxi", + "libxi_devel", + "libxinerama", + "libxinerama_devel", + "libxkbfile", + "libxkbfile_devel", + "libxmu", + "libxmu_devel", + "libxpm", + "libxpm_devel", + "libxrandr", + "libxrandr_devel", + "libxrender", + "libxrender_devel", + "libxres", + "libxres_devel", + "libxscrnsaver", + "libxscrnsaver_devel", + "libxt", + "libxt_devel", + "libxtst", + "libxtst_devel", + "libxv", + "libxv_devel", + "libxvmc", + "libxvmc_devel", + "libxxf86dga", + "libxxf86dga_devel", + "libxxf86vm", + "libxxf86vm_devel", + "xtrans" + ], + "http://pydes.sourceforge.net/": [ + "pydes" + ], + "http://modwsgi.googlecode.com/files/": [ + "ap2_modwsgi" + ], + "http://www.mesa.nl/pub/mpage": [ + "mpage" + ], + "http://ftp.gnu.org/pub/gnu/chess/": [ + "gnuchess" + ], + "http://mtx.opensource-sw.net/": [ + "mtx", + "mtx_contrib" + ], + "http://www.jedsoft.org/": [ + "jed" + ], + "http://wiki.gnuarch.org/moin.cgi/tla_2dtools": [ + "tla_tools" + ], + "http://search.cpan.org/~jhi/String-Approx": [ + "pm_stringapprox" + ], + "http://search.cpan.org/~chorny/Hook-LexWrap": [ + "pm_hooklexwrap" + ], + "http://xmlobject.base-art.net/": [ + "py_xmlobject" + ], + "http://delta.affinix.com/qca/": [ + "qca", + "qca_sasl", + "qca_tls" + ], + "http://www.policyd-weight.org/releases/": [ + "policydweight" + ], + "http://www.loudmouth-project.org": [ + "loudmouth" + ], + "http://www.clex.sk/": [ + "clex" + ], + "ftp://ftp.foolabs.com/pub/xpdf/": [ + "xpdf" + ], + "http://diracvideo.org/": [ + "libschro", + "libschrodevel" + ], + "http://www.trickytools.com/php/sar2rrd.php": [ + "sar2rrd" + ], + "http://downloads.sourceforge.net/bzflag/": [ + "bzflag" + ], + "http://www.povray.org/": [ + "povray" + ], + "http://public.planetmirror.com/pub/irc/clients/unix/": [ + "ircii" + ], + "http://www.pilot-link.org/": [ + "pilotlink" + ], + "http://www.gnu.org/software/autogen/": [ + "autogen", + "autogen_doc", + "autogen_rt" + ], + "http://sourceforge.net/projects/turkce": [ + "aspelltr" + ], + "http://search.cpan.org/~podmaster/HTML-Scrubber": [ + "pm_htmlscrubber" + ], + "http://apache.cict.fr/commons/digester/binaries/": [ + "commons_digester", + "commons_digester_doc" + ], + "ftp://siag.nu/pub/pen/": [ + "pen" + ], + "ftp://ftp.gnupg.org/gcrypt/gnupg/": [ + "gnupg_minimal" + ], + "http://search.cpan.org/~adamk/Config-Tiny": [ + "pm_configtiny" + ], + "http://search.cpan.org/~phred/Apache-Test-1.30/": [ + "pm_apachetst" + ], + "http://www.egenix.com/products/python/mxBase/": [ + "pymxbase" + ], + "http://modeemi.cs.tut.fi/~tuomov/ion/": [ + "ion" + ], + "http://www.xbill.org": [ + "xbill" + ], + "http://download.qballcow.nl/programs/gtodo/": [ + "gtodo" + ], + "http://www.stunnel.org": [ + "stunnel" + ], + "http://eyed3.nicfit.net/releases/": [ + "pyeyed3" + ], + "ftp://ftp.fvwm.org/pub/fvwm/version-2/": [ + "fvwm" + ], + "http://apache.cict.fr/commons/io/binaries/": [ + "commons_io", + "commons_io_doc" + ], + "http://ipaudit.sourceforge.net/": [ + "ipaudit" + ], + "http://psi-im.org/": [ + "psi" + ], + "http://www.gnu.org": [ + "dejagnu" + ], + "http://ispell.source.gr/index_aspell.html": [ + "aspellel" + ], + "http://search.cpan.org/~jenda/Mail-Sender": [ + "pm_mailsender" + ], + "http://www.inlab.de/balance.html": [ + "balance" + ], + "http://ftp.gnome.org/pub/GNOME/sources/atk/1.30/": [ + "libatk", + "libatk_devel" + ], + "http://bgoffice.sourceforge.net/": [ + "aspellbg" + ], + "ftp://ftp.cmf.nrl.navy.mil/pub/kenh/netscape-remote-1.3.tar.Z": [ + "tm_netscape_remote" + ], + "http://pwgen.sourceforge.net": [ + "pwgen" + ], + "http://search.cpan.org/~neely/Data-Serializer": [ + "pm_dataserializer" + ], + "http://www.ossp.org/pkg/lib/mm/": [ + "libmm" + ], + "http://www.linuxprinting.org/foomatic.html": [ + "foomatic_filters" + ], + "http://ftp.porcupine.org/pub/security/": [ + "tcpwrappers" + ], + "http://search.cpan.org/~joesuf/libapreq2": [ + "ap2_modapreq2", + "libapreq2", + "libapreq2_devel", + "pm_apreq2" + ], + "http://search.cpan.org/~smueller/AutoXS-Header": [ + "pm_autoxsheader" + ], + "http://geeqie.sourceforge.net/": [ + "geeqie" + ], + "http://www.irssi.org/": [ + "irssi" + ], + "http://search.cpan.org/~kwitknr/GD-Barcode": [ + "pm_gdbarcode" + ], + "http://libproxy.googlecode.com/files/": [ + "libproxy", + "libproxy_devel", + "libproxy_gnome", + "libproxy_kde", + "py_libproxy" + ], + "http://sites.google.com/a/forestent.com/projects/log4sh": [ + "log4sh" + ], + "http://www.gnome.org/": [ + "gedit", + "glib", + "gnome_theme_extras", + "gnome_themes", + "gtk_engines", + "libbonobo2", + "libbonoboui", + "libglade2", + "libgnome", + "libgnomecanvas", + "libgsf" + ], + "http://www.apsis.ch/pound/": [ + "pound", + "pound2" + ], + "http://search.cpan.org/CPAN/authors/id/C/CL/CLKAO/": [ + "pm_svnsimple" + ], + "http://ovh.dl.sourceforge.net/sourceforge/junit/": [ + "junit", + "junit_doc" + ], + "http://smarteiffel.loria.fr/": [ + "smarteiffel" + ], + "http://ftp.gnome.org/pub/gnome/sources/gok": [ + "gok" + ], + "http://www.geocities.jp/kosako3/oniguruma/": [ + "oniguruma" + ], + "http://search.cpan.org/~msergeant/XML-Parser": [ + "pm_xmlparser" + ], + "http://search.cpan.org/~lhoward/Net-Syslog": [ + "pm_netsyslog" + ], + "http://links.sourceforge.net": [ + "links" + ], + "http://pycurl.sourceforge.net/": [ + "py_curl" + ], + "http://www.windowmaker.org/": [ + "windowmaker" + ], + "http://search.cpan.org/~gaas/MD5-2.03/": [ + "pm_md5" + ], + "http://apache.cict.fr/commons/beanutils/binaries/": [ + "commons_beanutils", + "commons_beanutl_doc" + ], + "http://search.cpan.org/~stbey/Date-Calc": [ + "pm_datecalc" + ], + "http://pypi.python.org/pypi/pylint": [ + "pylint" + ], + "http://downloads.sourceforge.net/dnswalk/": [ + "dnswalk" + ], + "http://log4cpp.sourceforge.net/": [ + "log4cpp" + ], + "http://search.cpan.org/~sprout/Tie-Util": [ + "pm_tieutil" + ], + "http://pypi.python.org/packages/source/x/xlrd/": [ + "py_xlrd" + ], + "http://pyyaml.org/wiki/PyYAML": [ + "py_yaml", + "py_yaml_rt" + ], + "http://cr.yp.to/daemontools.html": [ + "daemontools", + "daemontools_core" + ], + "http://search.cpan.org/~adamk/SMS-Send": [ + "pm_smssend" + ], + "http://www.openal.org": [ + "openal" + ], + "http://search.cpan.org/~drolsky/Params-Validate": [ + "pm_paramsvalidate", + "pm_prmsvldt" + ], + "http://sourceware.org/libffi/": [ + "libffi" + ], + "http://www.gnu.org/software/make/": [ + "gmake" + ], + "http://downloads.sourceforge.net/munin/": [ + "munin_master", + "munin_node" + ], + "http://ftp.gnome.org/pub/GNOME/sources/gnome-desktop": [ + "gnomedesktop" + ], + "http://www.mktemp.org/": [ + "mktemp" + ], + "http://www.gnetlibrary.org/": [ + "libgnet", + "libgnet2", + "libgnet2_doc", + "libgnet2_rt" + ], + "http://www.mrunix.net/webalizer/": [ + "webalizer" + ], + "http://search.cpan.org/~ruz/CSS-Squish-0.07/": [ + "pm_csssquish" + ], + "http://www.gnu.org/software/gnu-arch/": [ + "tla" + ], + "http://borel.slu.edu/crubadan/": [ + "aspellaz", + "aspellfy", + "aspellgd", + "aspellgv", + "aspellky", + "aspellny", + "aspelltk" + ], + "http://dovecot.org/": [ + "dovecot", + "dovecot_devel" + ], + "http://ftp.gnu.org/gnu/aspell/dict/": [ + "aspellaf", + "aspellam", + "aspellar", + "aspellbe", + "aspellbr", + "aspellcs", + "aspellcsb", + "aspellet", + "aspellfa", + "aspellgrc", + "aspellhil", + "aspellhr", + "aspellhsb", + "aspellhy", + "aspellia", + "aspellid", + "aspelllv", + "aspellmi", + "aspellmk", + "aspellms", + "aspellnds", + "aspellqu", + "aspellsl", + "aspellsw", + "aspellvi", + "aspellyi", + "aspellzu" + ], + "http://www.mysql.com/": [ + "mysql4bench", + "mysql4client", + "mysql4devel", + "mysql4rt", + "mysql4test", + "mysql5", + "mysql5client", + "mysql5devel", + "mysql5rt" + ], + "http://hcpnet.free.fr/milter-greylist": [ + "miltergreylist" + ], + "http://git-scm.org/": [ + "git", + "git_completion", + "git_cvs", + "git_devel", + "git_doc", + "git_emacs", + "git_gui", + "git_svn", + "gitk" + ], + "http://www.fftw.org/": [ + "fftw" + ], + "http://n.ethz.ch/student/nevillm/download/libxdg-basedir": [ + "libxdg_basedir" + ], + "http://search.cpan.org/~bingos/Archive-Extract": [ + "pm_archiveextract" + ], + "http://mir2.ovh.net/ftp.apache.org/dist/jakarta/tomcat-5/v5.5.27/bin/": [ + "tomcat5" + ], + "http://www.vanheusden.com/httping/": [ + "httping" + ], + "http://search.cpan.org/~bingos/File-Fetch": [ + "pm_filefetch" + ], + "http://www.gnu.org/software/guile": [ + "guile", + "guilelib12" + ], + "http://search.cpan.org/~ianc/sdf": [ + "pm_sdf" + ], + "http://www.mml.org.ua/": [ + "minimalist" + ], + "http://search.cpan.org/CPAN/authors/id/C/CL/CLEISHMAN/": [ + "pm_cache" + ], + "http://www.gnus.org/dist/": [ + "oortgnus" + ], + "http://www.figlet.org": [ + "figlet" + ], + "http://search.cpan.org/~simonw/Module-Pluggable": [ + "pm_moduleplug" + ], + "http://sysoev.ru/nginx/": [ + "nginx" + ], + "http://ftp.gnome.org/pub/GNOME/sources/gnome-pilot": [ + "gnome_pilot" + ], + "http://search.cpan.org/~knok/File-MMagic/": [ + "pm_filemmagic" + ], + "http://search.cpan.org/~jesse/Module-Versions-Report": [ + "pm_modversrpt" + ], + "http://foremost.sourceforge.net/": [ + "foremost" + ], + "http://search.cpan.org/~cine/Lingua-Stem-Snowball-Da": [ + "pm_linguastemsnoda" + ], + "http://search.cpan.org/~makamaka/JSON": [ + "pm_json" + ], + "http://downloads.sourceforge.net/leafnode/": [ + "leafnode" + ], + "http://www.apache.org/dist/tomcat/tomcat-connectors/jk/source/jk-1.2.25/": [ + "ap2_mod_jk" + ], + "http://nail.sf.net/": [ + "nail" + ], + "http://www.boost.org/": [ + "boost_devel", + "boost_jam", + "boost_rt" + ], + "http://wwwsearch.sourceforge.net/mechanize/": [ + "py_mechanize" + ], + "http://code.google.com/p/boto/": [ + "py_boto" + ], + "http://www.mavetju.org/download/": [ + "dhcping" + ], + "packaged": [ + "berkeleydb", + "berkeleydb4", + "gail", + "rocksndiamonds", + "x11common" + ], + "http://www.lzop.org": [ + "lzop" + ], + "http://mirrors.kernel.org/gnu/libiconv/": [ + "libiconv" + ], + "http://search.cpan.org/~bingos/Archive-Tar": [ + "pm_archivetar" + ], + "ftp://ftp.trolltech.com/qt/source": [ + "qt_gcc" + ], + "http://www.bestpractical.com/rt/": [ + "rt" + ], + "http://packages.debian.org/unstable/admin/tmpreaper": [ + "tmpreaper" + ], + "http://search.cpan.org/~pythian/DBD-Oracle": [ + "pm_dbdoracle", + "pm_dbdoraexplain" + ], + "http://smartmontools.sourceforge.net/": [ + "smartmontools" + ], + "http://code.google.com/p/shunit2/": [ + "shunit2" + ], + "http://chanae.walon.org/walon/ispell.html": [ + "aspellwa" + ], + "http://search.cpan.org/~esm/Net-NIS": [ + "pm_netnis" + ], + "http://www.cups.org/": [ + "cups", + "cups_devel", + "cupsclient", + "cupsd", + "cupsdev", + "cupsdoc", + "libcups", + "libcups2", + "libcupscgi1", + "libcupsdriver1", + "libcupsimage2", + "libcupsmime1", + "libcupsppdc1" + ], + "http://lout.sourceforge.net/": [ + "lout", + "lout_share" + ], + "http://reductivelabs.com/projects/facter": [ + "facter" + ], + "http://search.cpan.org/~cfaerber/Unicode-Stringprep": [ + "pm_unicodestringprep" + ], + "http://search.cpan.org/~drolsky/DateTime-Format-Mail": [ + "pm_datetimefmtmail" + ], + "http://libspectre.freedesktop.org": [ + "libspectre" + ], + "http://cr.yp.to/ucspi-tcp.html": [ + "ucspi_tcp" + ], + "http://www.twobarleycorns.net/": [ + "tkcvs" + ], + "http://www.moshpit.org/pilotmgr/": [ + "pilotmgr" + ], + "http://www.dwheeler.com/sloccount/": [ + "sloccount" + ], + "http://linux.nawebu.cz/wmcliphist/": [ + "wmcliphist" + ], + "http://search.cpan.org/~awrigley/html2text": [ + "pm_html2text" + ], + "http://www.jboss.org": [ + "jboss3", + "jboss4" + ], + "http://www.gnu.org/software/help2man": [ + "help2man" + ], + "http://cmake.org/": [ + "cmake" + ], + "http://search.cpan.org/~abw/Pod-POM": [ + "pm_podpom" + ], + "http://www.pdflib.com/products/": [ + "libpdf6", + "libpdf_java0", + "pdflib_devel", + "pdflib_utils" + ], + "http://www.vorbis.com": [ + "vorbistools" + ], + "ftp://ftp.sudo.ws/pub/sudo/": [ + "sudo", + "sudo_common", + "sudo_ldap" + ], + "http://search.cpan.org/CPAN/authors/id/G/GM/GMPASSOS/": [ + "pm_objmultitype", + "pm_xmlsmart" + ], + "http://www.gnu.org/software/bison/": [ + "bison" + ], + "http://search.cpan.org/~petdance/Test-Pod-Coverage": [ + "pm_testpodcoverage" + ], + "http://bluefish.openoffice.nl/": [ + "bluefish" + ], + "http://www.ribbonsoft.com/qcad.html": [ + "qcad" + ], + "http://search.cpan.org/~snowhare/Lingua-Stem": [ + "pm_linguastem" + ], + "http://ftp.gnome.org/pub/gnome/sources/gnome-system-monitor": [ + "gnomesysmon" + ], + "http://www.gnu.org/software/autoconf/": [ + "autoconf" + ], + "http://www.cpan.org/src": [ + "perl", + "perldoc" + ], + "http://libnids.sourceforge.net/": [ + "libnids" + ], + "http://www.libsdl.org/": [ + "libsdl", + "libsdl_devel" + ], + "http://www.dtek.chalmers.se/groups/dvd/dist/": [ + "oglegui" + ], + "http://ftp.gnome.org/pub/GNOME/sources/yelp": [ + "yelp" + ], + "http://search.cpan.org/~tyemq/Algorithm-Diff": [ + "pm_algorithmdiff" + ], + "http://search.cpan.org/~myself/Shout": [ + "pm_shout" + ], + "http://alioth.debian.org/projects/fortune/": [ + "fortune" + ], + "http://subversion.apache.org/": [ + "ap2_subversion", + "javasvn", + "pm_subversion", + "pythonsvn", + "rbsvn", + "subversion", + "subversion_contrib", + "subversion_devel", + "subversion_tools" + ], + "http://search.cpan.org/~gabor/Text-Format": [ + "pm_textformat" + ], + "ftp://ftp.perens.com/pub/ElectricFence/": [ + "efence" + ], + "http://search.cpan.org/~mgrabnar/File-Tail": [ + "pm_filetail" + ], + "http://search.cpan.org/~adamk/Params-Util": [ + "pm_paramsutil" + ], + "http://search.cpan.org/~ddumont/Config-Augeas": [ + "pm_configaugeas" + ], + "http://helgafell.rhi.hi.is/pub/aspell-is": [ + "aspellis" + ], + "http://www.rarlab.com/rar_add.htm": [ + "unrar" + ], + "http://search.cpan.org/~lds/Crypt-CBC": [ + "pm_cryptcbc" + ], + "http://pari.math.u-bordeaux.fr": [ + "gp2c", + "parigp" + ], + "http://jbig2dec.sourceforge.net/": [ + "jbig2dec" + ], + "https://www.isc.org/software/dhcp": [ + "dhcp", + "dhcp_devel" + ], + "http://www.gnu.org/software/ncurses/ncurses.html": [ + "ncurses", + "terminfo" + ], + "http://web.mit.edu/kerberos/www/": [ + "krb5_admin_server", + "krb5_doc", + "krb5_kdc", + "krb5_lib", + "krb5_lib_dev", + "krb5_user" + ], + "http://search.cpan.org/~mverb/GDTextUtil": [ + "pm_gdtextut" + ], + "http://www.monkey.org/~dugsong/dsniff/beta/": [ + "dsniff" + ], + "http://gborg.postgresql.org/project/libpqxx/": [ + "libpqxx" + ], + "http://linux.thai.net/projects/libthai/": [ + "libthai", + "libthai_devel" + ], + "http://apache.cict.fr/logging/log4j/1.2.15/": [ + "log4j", + "log4j_doc" + ], + "http://search.cpan.org/~rcaputo/Lexical-Persistence": [ + "pm_lexicalpersist" + ], + "http://www.mutt.org": [ + "mutt", + "mutt_base", + "mutt_ncurses", + "mutt_slang" + ], + "http://download.berlios.de/hatari/": [ + "hatari" + ], + "http://www.lcdf.org/gifsicle/": [ + "gifsicle" + ], + "http://search.cpan.org/~capttofu/DBD-mysql": [ + "pm_dbdmysql" + ], + "http://www.x.org/pub/R6.6/tars/": [ + "xvfb" + ], + "http://www.lua.org/ftp/": [ + "lua" + ], + "http://www.unicom.com/sw/xtail/": [ + "xtail" + ], + "http://www.nongnu.org/zutils/zutils.html": [ + "zutils" + ], + "http://libmpeg2.sourceforge.net": [ + "libmpeg2", + "mpeg2dec" + ], + "http://search.cpan.org/~rrwo/Graphics-ColorNames": [ + "pm_graphicscolornm" + ], + "http://search.cpan.org/~vparseval/Unix-Statgrab": [ + "pm_unixstatgrab" + ], + "http://pysvn.tigris.org/": [ + "pysvn" + ], + "http://prefetch.net/code/lastx.c.html": [ + "lastx" + ], + "http://www.manyfish.co.uk/pakchois/": [ + "pakchois" + ], + "http://www.libsdl.org/projects/SDL_image/release/": [ + "sdlimage" + ], + "http://ftp.gnome.org/pub/gnome/sources/gtksourceview": [ + "gtksourceview" + ], + "http://downloads.sourceforge.net/mpg123/": [ + "mpg123" + ], + "http://www.mega-nerd.com/libsndfile/": [ + "libsndfile" + ], + "http://search.cpan.org/~/exiftool": [ + "exiftool" + ], + "http://search.cpan.org/~flora/Module-Signature": [ + "pm_modulesign" + ], + "http://www.adel.nursat.kz/apg/": [ + "apg" + ], + "http://www.lunabase.org/~faber/Vault/software/grap/": [ + "grap" + ], + "http://www.catb.org/~esr/hexdump/": [ + "hexdump" + ], + "http://www.logilab.org/project/logilab-common": [ + "py_logilab_common" + ], + "http://www.opensolaris.org/os/project/tesla/work/powertop": [ + "powertop" + ], + "http://borel.slu.edu/ispell/index.html": [ + "aspellga" + ], + "http://search.cpan.org/~mnooning/Net-Daemon-0.43/": [ + "pm_netdaemon" + ], + "http://search.cpan.org/~khampton/XML-SemanticDiff": [ + "pm_xmlsemdiff" + ], + "http://www.enlightenment.org/": [ + "enlightenment", + "fnlib" + ], + "http://iperf.sourceforge.net/": [ + "iperf" + ], + "ftp://ftp.uu.net/usenet/comp.sources.x/": [ + "spider" + ], + "ftp://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/": [ + "openssh", + "openssh_client" + ], + "http://sourceforge.net/projects/myspellkurdish/": [ + "aspellku" + ], + "http://tmux.sourceforge.net": [ + "tmux" + ], + "http://www.icculus.org/quake2/": [ + "quake2" + ], + "http://www.freedesktop.org/wiki/Software/startup-notification": [ + "startup_notif" + ], + "http://search.cpan.org/~msisk/HTML-TableExtract": [ + "pm_htmltableextract" + ], + "http://www.courier-mta.org/imap/": [ + "courier_imap" + ], + "http://www.fltk.org/": [ + "fltk" + ], + "http://www.oberhumer.com/opensource/lzo/": [ + "lzo" + ], + "http://www.arts-project.org/": [ + "arts" + ], + "http://www.washington.edu/pine/": [ + "pine" + ], + "http://drupal.org/": [ + "drupal" + ], + "http://search.cpan.org/~mharnisch/Unix-Syslog": [ + "pm_unixsyslog" + ], + "http://devnag.sarovar.org/": [ + "tex_vdevnag", + "tex_vdevnag_common" + ], + "http://icu-project.org/": [ + "libicu", + "libicu42", + "libicu46", + "libicu_devel" + ], + "http://www.cs.wisc.edu/~ghost/gsview/": [ + "gsview" + ], + "http://dev.yorhel.nl/ncdu/": [ + "ncdu" + ], + "http://www.inet.no/dante/": [ + "dante", + "libsocks" + ], + "http://www.gnu.org/software/m4/": [ + "gm4" + ], + "http://freshmeat.net/projects/imapsync/": [ + "imapsync" + ], + "http://downloads.sourceforge.net/gts/": [ + "gts" + ], + "http://www.info-zip.org/UnZip.html": [ + "unzip" + ], + "http://mesh.dl.sourceforge.net/sourceforge/nagios/": [ + "nsca", + "send_nsca" + ], + "http://search.cpan.org/~pinyan/File-chmod": [ + "pm_filechmod" + ], + "http://jdbc.postgresql.org/": [ + "postgresqljdbc" + ], + "http://search.cpan.org/~viy/HTML-Template-Pro": [ + "pm_htmltemplatepro" + ], + "http://www.gnu.org/software/tar/": [ + "gtar" + ], + "http://search.cpan.org/~asksh/Snowball-Norwegian": [ + "pm_snowballnorwegian" + ], + "http://search.cpan.org/~mrsam/Net-CIDR": [ + "pm_netcidr" + ], + "http://search.cpan.org/~miyagawa/capitalization": [ + "pm_capitalization" + ], + "http://search.cpan.org/~kjalb/Calendar-CSA-0.8/": [ + "pm_calendar_csa" + ], + "http://www.analog.cx/": [ + "analog" + ], + "http://search.cpan.org/~chorny/Smart-Comments": [ + "pm_smartcomments" + ], + "http://www.squid-cache.org/Versions/v2/2.7/": [ + "squid" + ], + "http://search.cpan.org/~nwclark/PerlIO-gzip": [ + "pm_perliogzip" + ], + "http://search.cpan.org/~chorny/Test-Warn": [ + "pm_testwarn" + ], + "http://www.bitrot.de/plan.html": [ + "plan" + ], + "http://www.schweikhardt.net": [ + "samefile" + ], + "http://devmon.sf.net/": [ + "devmon" + ], + "http://search.cpan.org/~rbow/Date-ICal": [ + "pm_dateical" + ], + "http://www.gnupg.org/related_software/libksba/": [ + "libksba" + ], + "http://xml.apache.org/xalan-j/": [ + "xalanj" + ], + "http://search.cpan.org/~smueller/PAR-Dist": [ + "pm_pardist" + ], + "http://www.rpcurnow.force9.co.uk/mairix/": [ + "mairix" + ], + "http://downloads.sourceforge.net/libmcal/": [ + "libmcal" + ], + "http://www.openmn.org": [ + "aspellmn" + ], + "http://search.cpan.org/~tlinden/Config-General": [ + "pm_configgeneral" + ], + "http://search.cpan.org/~rjbs/Data-UUID": [ + "pm_datauuid" + ], + "http://www.octave.org": [ + "octave" + ], + "http://clisp.cons.org": [ + "clisp" + ], + "http://www.bolthole.com/solaris/pkg-get.html": [ + "pkg_get" + ], + "http://www.nongnu.org/nmh/": [ + "nmh" + ], + "http://www.tcl.tk/": [ + "tcl", + "tk" + ], + "http://fetchmail.berlios.de/": [ + "fetchmail", + "fetchmailconf" + ], + "http://www.mplayerhq.hu/MPlayer/releases/dvdnav/": [ + "libdvdread", + "libdvdread_devel" + ], + "http://saftsack.fs.uni-bayreuth.de/~latex2ht/current/": [ + "latex2html" + ], + "http://homepages.ihug.co.nz/~trmusson/programs.html": [ + "gxmessage" + ], + "http://search.cpan.org/~sprout/CSS-DOM": [ + "pm_cssdom" + ], + "http://ftp.xemacs.org/xemacs/stable/": [ + "xemacs" + ], + "http://ispell-uk.sourceforge.net/": [ + "aspelluk" + ], + "http://search.cpan.org/~nwetters/IP-Country": [ + "pm_ipcountry" + ], + "http://mirrors.kernel.org/gnu/grep/": [ + "ggrep" + ], + "http://xdiskusage.sourceforge.net/": [ + "xdiskusage" + ], + "http://tug.ctan.org/tex-archive/macros/generic/dirtree/": [ + "tex_dirtree" + ], + "http://search.cpan.org/~dougw/Net-CIDR-Lite": [ + "pm_netcidrlite" + ], + "http://www.simgear.org": [ + "simgear" + ], + "http://www.tcpdump.org/release/": [ + "libpcap", + "libpcap_devel" + ], + "http://search.cpan.org/~rjbs/Email-Simple": [ + "pm_emailsimple" + ], + "http://ftp.gnome.org/pub/GNOME/sources/libcroco/0.6/": [ + "libcroco" + ], + "http://code.google.com/p/serf/": [ + "libserf", + "libserf0_0", + "libserf_devel" + ], + "http://havardk.xmms.org/plugins/arts_output/": [ + "xmms_arts" + ], + "http://search.cpan.org/~chromatic/Text-WikiFormat": [ + "pm_textwikifmt", + "pm_textwikiformat" + ], + "http://jetmore.net/john/code/swaks": [ + "swaks" + ], + "http://asg.web.cmu.edu/sasl/": [ + "sasl", + "sasl_gssapi", + "sasl_sql", + "saslauthd" + ], + "http://search.cpan.org/~adamk/DBD-SQLite": [ + "pm_dbdsqlite" + ], + "http://www.clearsilver.net/downloads/": [ + "pyclearsilver" + ], + "http://www.koffice.org/addons": [ + "koffice_addons" + ], + "http://search.cpan.org/~markov/MIME-Types": [ + "pm_mimetypes" + ], + "http://www.inetmsg.com/pub/": [ + "clamavsigs" + ], + "http://www.us.xfce.org/archive/xfce-4.2.3.2/src/": [ + "dbh" + ], + "http://ftp.gnome.org/pub/GNOME/sources/ggv/2.12": [ + "ggv" + ], + "http://search.cpan.org/~sprout/constant-lexical": [ + "pm_constantlexical" + ], + "http://www.gnu.org/software/parallel/": [ + "parallel" + ], + "http://search.cpan.org/~dparis/Crypt-IDEA": [ + "pm_cryptidea" + ], + "http://downloads.sourceforge.net/freeciv/": [ + "freeciv" + ], + "http://hevea.inria.fr/distri/": [ + "hevea" + ], + "http://search.cpan.org/~gaas/Unicode-String": [ + "pm_unicodestring" + ], + "http://sarovar.org/projects/pdftricks/": [ + "tex_pdftricks" + ], + "http://search.cpan.org/~tsch/Gtk2": [ + "pm_gtk2" + ], + "http://search.cpan.org/~mewp/DBD-Sybase": [ + "pm_dbd_sybase_freetds", + "pm_dbd_sybase_ocs" + ], + "http://mir2.ovh.net/ftp.apache.org/dist/jakarta/tomcat-4/v4.1.37/bin/": [ + "tomcat4" + ], + "http://pypi.python.org/pypi/Amara": [ + "py_amara" + ], + "http://www.gnu.org/software/mtools": [ + "mtools" + ], + "http://xml.apache.org/commons/": [ + "xmlcommonsext" + ], + "http://ftp.gnome.org/pub/gnome/sources/gpdf": [ + "gpdf" + ], + "http://downloads.sourceforge.net/enlightenment/": [ + "imlib2", + "imlib2_loaders" + ], + "http://code.google.com/p/shflags/": [ + "shflags" + ], + "http://invisible-island.net/mawk/mawk.html": [ + "mawk" + ], + "http://downloads.sourceforge.net/clusterit/": [ + "clusterit" + ], + "http://search.cpan.org/~jesse/Cache-Simple-TimedExpiry": [ + "pm_cachesmptimexp" + ], + "http://hovland.org/solaris,": [ + "pdadrv" + ], + "http://search.cpan.org/~jesse/Locale-Maketext-Simple": [ + "pm_lclemktxtsimple" + ], + "http://ffmpeg.sourceforge.net/": [ + "ffmpeg" + ], + "ftp://ftp.gnu.org/pub/gnu/kawa/": [ + "kawa" + ], + "http://search.cpan.org/~mpiotr/Text-Iconv": [ + "pm_texticonv" + ], + "http://pkg-config.freedesktop.org": [ + "pkgconfig" + ], + "http://qdbm.sourceforge.net/": [ + "qdbm" + ], + "ftp://ftp.kaybee.org/pub/linux/": [ + "logwatch" + ], + "http://search.cpan.org/~mirk/Net-Z3950-ZOOM": [ + "pm_netz3950zoom" + ], + "http://www.apache.org/dist/httpcomponents/commons-httpclient/binary/": [ + "commons_httpcl_doc", + "commons_httpclient" + ], + "http://search.cpan.org/~gmcharlt/MARC-Record": [ + "pm_marcrecord" + ], + "http://search.cpan.org/~flora/ExtUtils-Depends": [ + "pm_extutilsdepends" + ], + "http://search.cpan.org/~samtregar/HTML-Template": [ + "pm_htmltemplate" + ], + "http://invisible-island.net/diffstat/": [ + "diffstat" + ], + "http://www.gftp.org/": [ + "gftp" + ], + "http://search.cpan.org/~shlomif/IO-Socket-INET6": [ + "pm_iosocketinet6" + ], + "http://mpg321.sourceforge.net/": [ + "mpg321" + ], + "http://www.lis.inpg.fr/realise_au_lis/kicad": [ + "kicad", + "kicadcommon" + ], + "http://xorg.freedesktop.org/releases/individual/proto/": [ + "inputproto", + "kbproto", + "xproto" + ], + "http://procps.sourceforge.net/": [ + "watch" + ], + "http://xml.apache.org/batik/": [ + "batik" + ], + "http://id3lib.sourceforge.net/": [ + "id3lib" + ], + "http://www.stack.nl/~dimitri/doxygen/": [ + "doxygen", + "doxygen_doc" + ], + "http://search.cpan.org/~ovid/HTML-TokeParser-Simple": [ + "pm_htmktokeparser" + ], + "http://geos.refractions.net/": [ + "geos" + ], + "http://www.isc.org/sw/IRRToolSet/": [ + "irrtoolset" + ], + "ftp://ftp.ruby-lang.org/pub/ruby/": [ + "libruby1", + "ruby", + "rubydev", + "rubydoc", + "rubymode", + "rubymode_el", + "rubytk" + ], + "http://www.xfce.org": [ + "xfce", + "xfce_appfinder", + "xfce_calendar", + "xfce_desktop", + "xfce_dtlogin", + "xfce_engine", + "xfce_iconbox", + "xfce_iconthemes", + "xfce_launcher", + "xfce_libs", + "xfce_manager", + "xfce_mixer", + "xfce_panel", + "xfce_plugins", + "xfce_print", + "xfce_session", + "xfce_systray", + "xfce_toys", + "xfce_utils", + "xfce_xffm", + "xfce_xfwm", + "xfce_xfwmthemes" + ], + "http://freedesktop.org/Software/LibXklavier": [ + "libxklavier" + ], + "http://downloads.sourceforge.net/squirrelmail/": [ + "squirrelmail" + ], + "http://search.cpan.org/~ruz/Text-Quoted": [ + "pm_txtquoted" + ], + "http://www.washington.edu/alpine/": [ + "alpine" + ], + "http://search.cpan.org/~rgiersig/Expect-1.21/": [ + "pm_expect" + ], + "http://xerces.apache.org/xerces-j/": [ + "xercesj" + ], + "http://www.mindspring.com/~jamoyers/software/": [ + "colorgcc" + ], + "http://downloads.sourceforge.net/easytag/": [ + "easytag" + ], + "http://downloads.sourceforge.net/project/fprobe/fprobe/1.1/": [ + "fprobe" + ], + "http://search.cpan.org/~dougw/Convert-TNEF": [ + "pm_converttnef" + ], + "http://www.matroska.org/": [ + "libebml", + "libmatroska" + ], + "http://pypi.python.org/pypi/fpconst/": [ + "py_fpconst" + ], + "http://j3e.de/ispell/iroma/": [ + "aspellla" + ], + "http://www.gnu.org/software/diffutils/": [ + "diffutils" + ], + "http://www.gnu.org/software/libtool/": [ + "libltdl3", + "libltdl7", + "libtool", + "libtool_rt" + ], + "http://www.speex.org/": [ + "libspeex" + ], + "ftp://scon155.phys.msu.su/pub/russian/ispell/": [ + "aspellru" + ], + "ftp://ftp.gnome.org/pub/gnome/sources/ORBit/0.5/": [ + "orbit" + ], + "http://search.cpan.org/~abigail/Geography-Countries": [ + "pm_geocountries" + ], + "http://rpm5.org/files/popt/": [ + "libpopt" + ], + "http://oss.oetiker.ch/rrdtool/pub/": [ + "rrdtool" + ], + "ftp://sid.joedog.org/pub/siege/": [ + "siege" + ], + "http://www.gnu.org/software/tetum/dictionaries/spellcheckers.html": [ + "aspelltet" + ], + "http://xmlrpc-c.sourceforge.net": [ + "xmlrpc_c" + ], + "http://sourceforge.net/projects/libunicode": [ + "libunicode" + ], + "http://www.nostatic.org/grip/": [ + "grip" + ], + "http://ficy.sourceforge.net/": [ + "ficy" + ], + "ftp://ftp.uni-frankfurt.de/pub/Mirrors2/gentoo.org/distfiles/": [ + "xbattle" + ], + "http://wput.sourceforge.net": [ + "wput" + ], + "http://www.vim.org/download.php": [ + "gvim", + "vim", + "vimrt" + ], + "http://www.mpfr.org/": [ + "libmpfr" + ], + "http://code.google.com/p/pacparser/": [ + "libpacparser1", + "libpacparser_devel", + "pacparser", + "py_libpacparser" + ], + "http://jonas.nitro.dk/tig/": [ + "tig" + ], + "http://search.cpan.org/~kane/Params-Check": [ + "pm_prmscheck" + ], + "http://www.xdebug.org/files/": [ + "php5_xdebug" + ], + "http://search.cpan.org/~adie/Test-Exception": [ + "pm_tstexcept", + "pm_tstexception" + ], + "http://dvd.sourceforge.net/": [ + "libdvdnav" + ], + "http://lxde.sourceforge.net/gpicview/": [ + "gpicview" + ], + "http://search.cpan.org/~borisz/Geo-IP-PurePerl": [ + "pm_geoippureperl" + ], + "http://dbus.freedesktop.org/releases/dbus-glib/": [ + "dbus_glib", + "dbus_glibdev" + ], + "http://www.xinehq.de/": [ + "gxine", + "libxine", + "xineui" + ], + "http://hg.mozilla.org/mozilla-central/raw-file/default/security/nss/lib/ckfw/builtins/": [ + "ca_certificates" + ], + "http://search.cpan.org/~rbow/Date-Leapyear": [ + "pm_dateleapyear" + ], + "ftp://ftp.akl.lt/ispell-lt/": [ + "aspelllt" + ], + "http://search.cpan.org/~alexmv/App-CLI": [ + "pm_appcli" + ], + "http://ftp.gnome.org/pub/GNOME/sources/pyorbit/2.0/": [ + "pyorbit" + ], + "http://www.research.att.com/sw/download/": [ + "ksh" + ], + "http://search.cpan.org/~dconway/Text-Autoformat": [ + "pm_txtautofmt" + ], + "ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/3.0.14/linux-i686/xpi/": [ + "firefox_l10n_af", + "firefox_l10n_ar", + "firefox_l10n_be", + "firefox_l10n_bg", + "firefox_l10n_bn_in", + "firefox_l10n_ca", + "firefox_l10n_cs", + "firefox_l10n_cy", + "firefox_l10n_da", + "firefox_l10n_de", + "firefox_l10n_el", + "firefox_l10n_en_gb", + "firefox_l10n_eo", + "firefox_l10n_es_ar", + "firefox_l10n_es_es", + "firefox_l10n_et", + "firefox_l10n_eu", + "firefox_l10n_fi", + "firefox_l10n_fr", + "firefox_l10n_fy_nl", + "firefox_l10n_ga_ie", + "firefox_l10n_gl", + "firefox_l10n_gu_in", + "firefox_l10n_he", + "firefox_l10n_hi_in", + "firefox_l10n_hu", + "firefox_l10n_id", + "firefox_l10n_is", + "firefox_l10n_it", + "firefox_l10n_ja", + "firefox_l10n_ka", + "firefox_l10n_kn", + "firefox_l10n_ko", + "firefox_l10n_ku", + "firefox_l10n_lt", + "firefox_l10n_lv", + "firefox_l10n_mk", + "firefox_l10n_mn", + "firefox_l10n_mr", + "firefox_l10n_nb_no", + "firefox_l10n_nl", + "firefox_l10n_nn_no", + "firefox_l10n_oc", + "firefox_l10n_pa_in", + "firefox_l10n_pl", + "firefox_l10n_pt_br", + "firefox_l10n_pt_pt", + "firefox_l10n_ro", + "firefox_l10n_ru", + "firefox_l10n_si", + "firefox_l10n_sk", + "firefox_l10n_sl", + "firefox_l10n_sq", + "firefox_l10n_sr", + "firefox_l10n_sv_se", + "firefox_l10n_te", + "firefox_l10n_th", + "firefox_l10n_tr", + "firefox_l10n_uk", + "firefox_l10n_zh_cn", + "firefox_l10n_zh_tw" + ], + "http://sqlite.org/": [ + "sqlite3", + "sqlite3_devel", + "sqlite3_rt" + ], + "http://www.bolthole.com/solaris/thirdparty/pkgzip.html": [ + "pkgzip" + ], + "http://search.cpan.org/~stbey/Carp-Clan": [ + "pm_carpclan" + ], + "http://downloads.sourceforge.net/mad/": [ + "libid3tag" + ], + "http://mod-ldap.sourceforge.net/": [ + "mod_ldap" + ], + "http://www.mantisbt.org/": [ + "mantis" + ], + "http://search.cpan.org/~cfaerber/IDNA-Punycode": [ + "pm_idnapunycode" + ], + "http://www.openexr.com": [ + "ilmbase", + "ilmbase_devel", + "openexr", + "openexr_devel", + "openexr_doc", + "openexr_rt" + ], + "http://www.kde.org": [ + "arts_gcc", + "kde_gcc", + "kde_gcc_dtlogin", + "kdeaccess_gcc", + "kdeaddons_gcc", + "kdeadmin_gcc", + "kdeartwork_gcc", + "kdebase_gcc", + "kdeedu_gcc", + "kdegames_gcc", + "kdegraphics_gcc", + "kdelibs_gcc", + "kdemultimedia_gcc", + "kdenetwork_gcc", + "kdetoys_gcc", + "kdeutils_gcc", + "quanta" + ], + "http://tiswww.case.edu/php/chet/readline/rltop.html": [ + "readline" + ], + "http://www.t2-project.org/packages/liblockfile.html": [ + "liblockfile" + ], + "http://www.imendio.com/projects/planner": [ + "planner", + "plannerdoc" + ], + "http://search.cpan.org/~lbrocard/Test-Expect-0.30/": [ + "pm_testexpect" + ], + "http://search.cpan.org/~jesse/HTTP-Server-Simple": [ + "pm_httpsvrsimp" + ], + "http://www.micq.org/": [ + "micq" + ], + "http://search.cpan.org/~tsch/Pango": [ + "pm_pango" + ], + "http://libwpd.sourceforge.net/": [ + "libwpd" + ], + "http://search.cpan.org/~bingos/Module-Load-Conditional": [ + "pm_modloadcond" + ], + "http://www.x.org/contrib/applications/": [ + "mgdiff" + ], + "ftp://ftp.hylafax.org/source/": [ + "hylafax" + ], + "http://apache.cict.fr/commons/cli/binaries/": [ + "commons_cli", + "commons_cli_doc" + ], + "http://search.cpan.org/~jaslong/Mail-DKIM": [ + "pm_maildkim" + ], + "http://www.gimp.org/": [ + "gimp", + "gimp_extras", + "gimp_help", + "gimp_i18n", + "gimp_minimal", + "gimplibs", + "gimplibs_doc" + ], + "http://search.cpan.org/~rcaputo/POE-Test-Loops": [ + "pm_poetestloops" + ], + "http://www.conserver.com/": [ + "conserver" + ], + "http://search.cpan.org/~vipul/Digest-Nilsimsa": [ + "pm_digestnilsimsa" + ], + "ftp://ftp.adobe.com/pub/adobe/reader/unix/8.x/8.1.7/enu/": [ + "adobereader" + ], + "http://developers.sun.com/sunstudio/documentation/ss12u1/DistributionREADME.txt": [ + "ss12f95rt" + ], + "http://www.ivtools.org/": [ + "ivtools", + "ivtools_doc" + ], + "http://pytz.sourceforge.net/": [ + "py_tz" + ], + "http://search.cpan.org/~mivkovic/Mail-Sendmail": [ + "pm_mailsendmail" + ], + "https://savannah.nongnu.org/task/?6787": [ + "aspellml" + ], + "http://amsn.sourceforge.net/": [ + "amsn" + ], + "http://search.cpan.org/~cfaerber/Graphics-ColorNames-WWW": [ + "pm_graphicscolornw" + ], + "http://www.greenwoodsoftware.com/less/": [ + "less" + ], + "http://www.scummvm.org": [ + "scummvm" + ], + "http://search.cpan.org/~ruz/DBIx-SearchBuilder-1.51/": [ + "pm_dbixsrchbuilder" + ], + "http://ftp.gnome.org/pub/GNOME/sources/libgail-gnome/": [ + "libgail_gnome" + ], + "http://search.cpan.org/~dconway/Perl6-Export": [ + "pm_perl6export" + ], + "http://downloads.sourceforge.net/bvi/": [ + "bvi" + ], + "ftp://vsftpd.beasts.org/users/cevans/": [ + "vsftpd" + ], + "http://fo.speling.org/": [ + "aspellfo" + ], + "http://search.cpan.org/CPAN/authors/id/B/BB/BBB/": [ + "pm_filenfslock" + ], + "http://mirrors.kernel.org/gnu/gzip/": [ + "gzip", + "gzip_extras" + ], + "http://ftp.gnome.org/pub/gnome/sources/gucharmap": [ + "gucharmap" + ], + "http://sourceforge.net/projects/tnef": [ + "tnef" + ], + "http://search.cpan.org/~rclamp/Pod-Coverage": [ + "pm_podcoverage" + ], + "http://www.mesa3d.org/": [ + "mesalibs" + ], + "http://www.oracle.com/technology/software/products/berkeley-db/db/index.html/": [ + "berkeleydb4_doc" + ], + "http://www.jython.org/": [ + "jython" + ], + "http://downloads.sourceforge.net/parcellite/": [ + "parcellite" + ], + "http://www.tim-mann.org/xboard.html": [ + "xboard" + ], + "http://www.sqlalchemy.org/": [ + "py_sqlalchemy" + ], + "http://search.cpan.org/~bingos/Log-Message-Simple": [ + "pm_logmsgsimple" + ], + "ftp://ftp.berlios.de/pub/smake/": [ + "smake" + ], + "http://downloads.sourceforge.net/nagios/": [ + "nagios", + "nrpe", + "nrpe_plugin" + ], + "http://search.cpan.org/~grantm/XML-SAX": [ + "pm_xmlsax" + ], + "http://rubyforge.org/projects/rubygems/": [ + "rubygems" + ], + "http://software.schmorp.de/pkg/rxvt-unicode.html": [ + "urxvt" + ], + "ftp://ftp.zebra.org/pub/zebra/": [ + "zebra" + ], + "http://www.ex-parrot.com/~chris/driftnet/": [ + "driftnet" + ], + "http://search.cpan.org/~chromatic/UNIVERSAL-can": [ + "pm_universalcan" + ], + "http://liboil.freedesktop.org/": [ + "liboil", + "liboil_devel" + ], + "http://ftp.gnome.org/pub/GNOME/sources/intltool/0.40/": [ + "intltool" + ], + "http://ftp.gnome.org/pub/GNOME/sources/libgnomeprintui": [ + "libgnomeprintui" + ], + "http://home.nyc.rr.com/twopks/olvwm/": [ + "olvwm" + ], + "http://www.rwhois.net/": [ + "rwhois" + ], + "http://search.cpan.org/CPAN/authors/id/R/RB/RBS/": [ + "pm_regexpshellish", + "pm_textdiff" + ], + "http://downloads.sourceforge.net/uriparser/": [ + "liburiparser1", + "liburiparser_devel" + ], + "http://cdrecord.berlios.de/old/private/star.html": [ + "star" + ], + "http://www.gtk.org/~otaylor/kanjipad/": [ + "kanjipad" + ], + "http://search.cpan.org/~dagolden/Sub-Uplevel": [ + "pm_subuplevel" + ], + "http://downloads.sourceforge.net/cpptest/": [ + "libcpptest0", + "libcpptest_devel" + ], + "http://mikmod.raphnet.net/files/": [ + "libmikmod" + ], + "http://www.danga.com/memcached/": [ + "memcached" + ], + "http://search.cpan.org/~scott/Sys-Hostname-Long": [ + "pm_syshostnamelong" + ], + "http://ftp.gnome.org/pub/GNOME/sources/ghex": [ + "ghex" + ], + "http://ftp.gnome.org/pub/GNOME/sources/gnome-spell/": [ + "gnome_spell" + ], + "http://downloads.us.xiph.org/releases/libshout/": [ + "libshout" + ], + "http://search.cpan.org/~jjore/B-Keywords": [ + "pm_bkeywords" + ], + "http://search.cpan.org/~mikewong/XML-Dumper": [ + "pm_xmldumper" + ], + "http://search.cpan.org/~dmuey/File-Copy-Recursive": [ + "pm_filecpyrecurs" + ], + "http://www.xcdroast.org": [ + "xcdroast" + ], + "http://search.cpan.org/~worrall/Net-Analysis": [ + "pm_netanalysis" + ], + "http://search.cpan.org/~jbaker/Apache-Session-1.6/": [ + "pm_apachesess" + ], + "http://search.cpan.org/~msergeant/XML-XPath": [ + "pm_xmlxpath" + ], + "http://rapidsvn.tigris.org/": [ + "libsvncpp3", + "rapidsvn" + ], + "http://tukaani.org/xz/": [ + "lzma", + "xz" + ], + "http://people.suug.ch/~tgr/bmon/": [ + "bmon" + ], + "http://search.cpan.org/~rbs/IPC-Run": [ + "pm_ipcrun" + ], + "http://libexif.sourceforge.net": [ + "libexif" + ], + "http://downloads.sourceforge.net/pnp4nagios/": [ + "pnp" + ], + "ftp://ftp.exim.org/pub/exim/exim4/": [ + "exim" + ], + "http://www.plkr.org/": [ + "plucker" + ], + "http://downloads.sourceforge.net/silvercity/": [ + "silvercity" + ], + "http://www.gnome.org/projects/evince/": [ + "evince" + ], + "http://www.gnu.org/software/ocrad/": [ + "ocrad" + ], + "http://directory.fsf.org/project/chrpath/": [ + "chrpath" + ], + "http://search.cpan.org/~jjore/B-Utils": [ + "pm_butils" + ], + "http://github.com/sam-github/libnet": [ + "libnet", + "libnet1", + "libnet_devel" + ], + "http://www.libsdl.org/projects/SDL_ttf/release/": [ + "sdlttf" + ], + "http://ftp.gnome.org/pub/GNOME/sources/gnome-applets": [ + "gnome_applets" + ], + "http://www.bolthole.com/filter/": [ + "filter" + ], + "http://search.cpan.org/~clkao/PerlIO-via-symlink": [ + "pm_perlioviasym" + ], + "http://ftp.gnome.org/pub/GNOME/sources/gnome-games": [ + "gnome_games" + ], + "http://ftp.gnome.org/pub/GNOME/sources/gtk-doc/1.11/": [ + "gtk_doc" + ], + "http://www.ribbonsoft.com/qcad_library.html": [ + "qcad_library" + ], + "http://search.cpan.org/~spidb/Net-ext": [ + "pm_netinet" + ], + "http://bitbucket.org/haypo/hachoir/wiki/Home": [ + "py_hachoir_core", + "py_hachoir_parser" + ], + "http://code.google.com/apis/gdata/": [ + "py_gdata" + ], + "ftp://ftp.kde.org/pub/kde/stable/amarok/1.4.8/src/": [ + "amarok" + ], + "http://search.cpan.org/~rjbs/Data-OptList": [ + "pm_dataoptlist" + ], + "http://www2.warwick.ac.uk/fac/sci/statistics/staff/academic/firth/software/pdfjam": [ + "pdfjam" + ], + "http://sccs.berlios.de/": [ + "sccs" + ], + "http://www.gnu.org/software/gdb/": [ + "gdb" + ], + "http://alioth.debian.org/projects/minicom/": [ + "minicom" + ], + "http://jocr.sourceforge.net/": [ + "gocr" + ], + "http://lynx.isc.org/release/": [ + "lynx" + ], + "http://www.s-lang.org/": [ + "slang" + ], + "http://search.cpan.org/~rjray/RPC-XML": [ + "pm_rpcxml" + ], + "http://apache.cict.fr/commons/configuration/binaries/": [ + "commons_config", + "commons_config_doc" + ], + "http://utopia.knoware.nl/~hlub/uck/rlwrap/": [ + "rlwrap" + ], + "http://search.cpan.org/~markstos/CGI-Application": [ + "pm_cgiapp" + ], + "http://search.cpan.org/CPAN/authors/id/B/BR/BRADFITZ/": [ + "pm_cachememcached" + ], + "http://frenchmozilla.sourceforge.net/": [ + "firefox_fr" + ], + "http://search.cpan.org/~audreyt/PerlIO-eol": [ + "pm_perlioeol" + ], + "http://search.cpan.org/~gaas/Digest-HMAC": [ + "pm_digesthmac" + ], + "http://people.gnome.org/~veillard/gamin": [ + "gamin" + ], + "http://cybercom.net/~dcoffin/dcraw/": [ + "dcraw" + ], + "http://anjuta.sourceforge.net/": [ + "anjuta" + ], + "http://search.cpan.org/~petdance/HTML-Tagset": [ + "pm_htmltagset" + ], + "http://search.cpan.org/~adamk/Task-Weaken": [ + "pm_taskweaken" + ], + "http://merd.sourceforge.net/pixel/hexedit.html": [ + "hexedit" + ], + "http://www.ijs.si/software/amavisd/": [ + "amavisd_new" + ], + "http://search.cpan.org/~andya/IPC-ShareLite": [ + "pm_ipcshrlite" + ], + "http://www.ditzionariu.org/": [ + "aspellsc" + ], + "http://search.cpan.org/~iroberts/Crypt-OpenSSL-RSA": [ + "pm_osslrsa" + ], + "http://developer.apple.com/darwin/projects/streaming/": [ + "dss" + ], + "http://search.cpan.org/~adamk/Test-NoWarnings": [ + "pm_testnowarnings" + ], + "http://cri.ensmp.fr/~coelho/mod_macro/": [ + "ap2_modmacro" + ], + "http://www.pcre.org": [ + "libpcre0", + "libpcrecpp0", + "libpcreposix0", + "pcre", + "pcre_devel", + "pcre_rt" + ], + "http://search.cpan.org/~adamk/File-Flat": [ + "pm_fileflat" + ], + "http://search.cpan.org/~semantico/Test-XML": [ + "pm_testxml" + ], + "http://www.krasu.ru/soft/chuchelo/": [ + "d4x" + ], + "http://www.freeradius.org/": [ + "freeradius" + ], + "http://search.cpan.org/~rcaputo/POE": [ + "pm_poe" + ], + "http://www.gnu.org/software/gdbm": [ + "gdbm", + "libgdbm3", + "libgdbm_dev" + ], + "http://srm.sourceforge.net/": [ + "srm" + ], + "http://search.cpan.org/~sisyphus/Inline": [ + "pm_inline" + ], + "http://search.cpan.org/~strzelec/Passwd-Unix": [ + "pm_passwdunix" + ], + "http://search.cpan.org/~bzajac/Math-Interpolate": [ + "pm_mathinterpolate" + ], + "http://search.cpan.org/~geoffr/Font-FreeType": [ + "pm_fontfreetype" + ], + "http://www.remotesensing.org/proj": [ + "proj" + ], + "http://search.cpan.org/~rkitover/Net-SSH2": [ + "pm_netssh2" + ], + "http://www.oac.uci.edu/indiv/ehood/tar/": [ + "mhonarc" + ], + "http://www.noah.org/wiki/Pexpect": [ + "py_pexpect" + ], + "http://downloads.sourceforge.net/heirloom/": [ + "mailx" + ], + "http://www.sqlobject.org/": [ + "py_sqlobject" + ], + "http://blogs.sun.com/timc/entry/nicstat_the_solaris_and_linux": [ + "nicstat" + ], + "http://www.vergenet.net/~conrad/software/xsel/download/": [ + "xsel" + ], + "http://search.cpan.org/~eryq/MIME-tools": [ + "pm_mimetools" + ], + "http://search.cpan.org/~jpeacock/version": [ + "pm_version" + ], + "http://search.cpan.org/~gaas/Digest-SHA1": [ + "pm_digestsha1" + ], + "http://search.cpan.org/~dskoll/IO-stringy": [ + "pm_iostringy" + ], + "http://search.cpan.org/~vparseval/Event-Lib": [ + "pm_eventlib" + ], + "http://www.modruby.net/en/index.rbx/eruby/download.html": [ + "eruby" + ], + "http://www.xfig.org": [ + "xfig" + ], + "http://xmlsoft.org/XSLT/": [ + "libxslt", + "libxslt_devel", + "py_libxslt" + ], + "http://search.cpan.org/~shlomif/Error": [ + "pm_error" + ], + "http://metauml.sourceforge.net/": [ + "tex_metauml", + "tex_metaumlman" + ], + "http://search.cpan.org/~hayashi/Term-ReadLine-Gnu": [ + "pm_termreadlineg" + ], + "http://search.cpan.org/~petdance/Carp-Assert-More": [ + "pm_carpassertmore" + ], + "https://trac.eecs.iu-bremen.de/projects/gsnmp/": [ + "gsnmp" + ], + "http://tug.ctan.org/tex-archive/macros/latex/contrib/rcsinfo/": [ + "tex_rcsinfo" + ], + "http://www.libsdl.org/projects/SDL_net/release/": [ + "sdlnet" + ], + "http://ftp.gnome.org/pub/GNOME/sources/nautilus": [ + "nautilus" + ], + "http://dropmix.xs4all.nl/rick/Xsnow/": [ + "xsnow" + ], + "http://www.janabhaaratii.org.in": [ + "aspellmr" + ], + "http://search.cpan.org/~bingos/Module-Load": [ + "pm_modload" + ], + "http://search.cpan.org/~manu/Net-IP": [ + "pm_netip" + ], + "http://gtkspell.sourceforge.net/": [ + "gtkspell" + ], + "http://search.cpan.org/~flora/Net-SSLeay": [ + "pm_netssleay" + ], + "http://packages.debian.org/unstable/utils/unzoo": [ + "unzoo" + ], + "ftp://invisible-island.net/vttest/": [ + "vttest" + ], + "http://search.cpan.org/~drolsky/DateTime-Locale": [ + "pm_datetimelocale" + ], + "http://www.wavpack.com/": [ + "wavpack" + ], + "http://www.gnu.org/software/coreutils": [ + "coreutils" + ], + "http://x3270.sourceforge.net/": [ + "x3270" + ], + "http://search.cpan.org/~maurice/Text-DoubleMetaphone": [ + "pm_textdblmetaphone" + ], + "http://www.erlang.org/": [ + "erlang", + "erlang_devel", + "erlang_doc" + ], + "http://download.pureftpd.org/pub/pure-ftpd/releases/": [ + "pureftpd" + ], + "http://ftp.gnome.org/pub/gnome/sources/gconf-editor": [ + "gconfeditor" + ], + "http://ftp.gnome.org/pub/GNOME/sources/gtkhtml/": [ + "gtkhtml" + ], + "http://search.cpan.org/~ebohlman/XML-Records": [ + "pm_xmlrecords" + ], + "http://www.openldap.org": [ + "openldap", + "openldap_client", + "openldap_devel", + "openldap_rt" + ], + "http://search.cpan.org/~rjbs/IPC-Run3": [ + "pm_ipcrun3" + ], + "http://search.cpan.org/~muir/Time-modules-2006.0814/": [ + "pm_timemods" + ], + "http://www.kill-9.org/": [ + "mbrowse" + ], + "http://ftp.yars.free.net/pub/source/lftp/": [ + "lftp" + ], + "http://freeglut.sourceforge.net/": [ + "freeglut" + ], + "http://www.magnicomp.com/rdist/": [ + "rdist" + ], + "http://oriya.sarovar.org/dictionary.html": [ + "aspellor" + ], + "http://www.pdflib.com/products/more/jpeg2ps.html": [ + "jpeg2ps" + ], + "http://http://www.switch.ch/misc/leinen/snmp/perl/": [ + "pm_snmpsession" + ], + "http://search.cpan.org/~ferreira/Term-Size": [ + "pm_termsize" + ], + "http://radscan.com/nas.html": [ + "nas" + ], + "http://search.cpan.org/~dtown/Net-SNMP": [ + "pm_netsnmp" + ], + "http://gqview.sourceforge.net/": [ + "gqview" + ], + "http://www.tux.org/~bagleyd/xlockmore.html": [ + "xlockmore" + ], + "http://david.schweikert.ch/software/mailgraph/": [ + "mailgraph" + ], + "http://freedesktop.org/Software/shared-mime-info": [ + "shared_mime_info" + ], + "http://search.cpan.org/~dparis/Crypt-Blowfish": [ + "pm_cryptblowfish" + ], + "http://www.bengalinux.org/downloads": [ + "aspellbn" + ], + "http://www.claws-mail.org/plugins.php?section=downloads/": [ + "claws_htmlviewer", + "claws_pdfviewer" + ], + "http://search.cpan.org/~isaac/libapreq": [ + "pm_apachereq" + ], + "http://downloads.sourceforge.net/docutils/": [ + "pydocutils" + ], + "http://search.cpan.org/~rjbs/Email-Date-Format": [ + "pm_emaildateformat" + ], + "http://dbus.freedesktop.org/releases/dbus/": [ + "dbus", + "libdbus", + "libdbusdev" + ], + "http://cdrecord.berlios.de/old/private/cdrecord.html": [ + "cdrtools" + ], + "http://ftp.acc.umu.se/mirror/gnome.org/sources/gtkhtml": [ + "gtkhtml31" + ], + "http://pypi.python.org/pypi/progressbar": [ + "py_progressbar" + ], + "http://search.cpan.org/~bingos/Object-Accessor": [ + "pm_objaccessor" + ], + "http://gmt.soest.hawaii.edu/": [ + "gmt", + "gmt_doc", + "gmtcoast_full", + "gmtcoast_high", + "gmtcoast_low" + ], + "http://search.cpan.org/~gbarr/TimeDate": [ + "pm_timedate" + ], + "http://apache.cict.fr/commons/math/binaries/": [ + "commons_math", + "commons_math_doc" + ], + "http://search.cpan.org/~sburke/HTML-Format": [ + "pm_htmlfmt", + "pm_htmlformat" + ], + "http://search.cpan.org/~drolsky/HTML-Mason": [ + "pm_htmlmason" + ], + "http://search.cpan.org/~robin/Want": [ + "pm_want" + ], + "http://search.cpan.org/~dagolden/ExtUtils-ParseXS": [ + "pm_extutparsexs" + ], + "http://search.cpan.org/~ingy/Spiffy": [ + "pm_spiffy" + ], + "http://www.gnu.org/software/sharutils/": [ + "sharutils" + ], + "http://projects.gnome.org/ORBit2/": [ + "orbit2" + ], + "http://www.snobol4.org/": [ + "csnobol4" + ], + "http://xorg.freedesktop.org/releases/X11R7.5/src/proto/": [ + "x11_applewmproto", + "x11_bigreqsproto", + "x11_compositeproto", + "x11_damageproto", + "x11_dmxproto", + "x11_dri2proto", + "x11_fixesproto", + "x11_fontsproto", + "x11_glproto", + "x11_inputproto", + "x11_kbproto", + "x11_randrproto", + "x11_recordproto", + "x11_renderproto", + "x11_resourceproto", + "x11_scrnsaverproto", + "x11_videoproto", + "x11_windowswmproto", + "x11_xcmiscproto", + "x11_xextproto", + "x11_xf86bigfontproto", + "x11_xf86dgaproto", + "x11_xf86driproto", + "x11_xf86vidmodeproto", + "x11_xineramaproto", + "x11_xproto" + ], + "http://www.eclipse.org/": [ + "eclipse", + "eclipsecmn", + "swtlibs" + ], + "http://liba52.sourceforge.net/files/": [ + "a52dec", + "liba52" + ], + "http://software.schmorp.de/pkg/libev.html": [ + "libev" + ], + "http://mirrors.kernel.org/gnu/recode/": [ + "recode" + ], + "http://www.thangorodrim.net/": [ + "angband" + ], + "http://ftp.gnome.org/pub/GNOME/sources/eel": [ + "eel" + ], + "http://code.google.com/p/python-gflags/": [ + "py_gflags" + ], + "http://search.cpan.org/~sprout/Sub-Delete": [ + "pm_subdelete" + ], + "http://w3m.sourceforge.net/": [ + "w3m" + ], + "http://boinc.berkeley.edu/": [ + "boincclient", + "boincdevel", + "boinclibs", + "boincmanager" + ], + "http://www.gimp.org": [ + "gimp_template" + ], + "http://www.trolltech.com": [ + "qt_docs" + ], + "http://ftp.ibiblio.org/pub/Linux/ALPHA/freetds/stable/": [ + "freetds", + "freetds_doc" + ], + "http://www.cypherpunks.ca/otr/": [ + "otr", + "otrdevel", + "pidginotr" + ], + "http://downloads.sourceforge.net/squidclamav/": [ + "squidclamav" + ], + "http://sourceforge.net/projects/pdftohtml": [ + "pdftohtml" + ], + "http://search.cpan.org/~rclamp/File-Find-Rule-0.30/": [ + "pm_filefindrule" + ], + "http://pychecker.sourceforge.net/": [ + "pychecker" + ], + "http://cdrecord.berlios.de/private/": [ + "pxupgrade" + ], + "http://downloads.sourceforge.net/libdbi/": [ + "libdbi1", + "libdbi_devel" + ], + "http://search.cpan.org/~tsch/Glib": [ + "pm_glib" + ], + "http://awstats.sourceforge.net/": [ + "awstats" + ], + "http://ftp.gnome.org/pub/GNOME/sources/gdk-pixbuf/0.22/": [ + "gdk_pixbuf" + ], + "http://downloads.sourceforge.net/matio/": [ + "libmatio" + ], + "http://search.cpan.org/~drolsky/DateTime-TimeZone": [ + "pm_datetimetz" + ], + "http://invisible-island.net/xterm/": [ + "xterm" + ], + "http://www.xmms.org/": [ + "xmms" + ], + "http://search.cpan.org/~stbey/Bit-Vector": [ + "pm_bitvec" + ], + "http://ftp.gnome.org/pub/gnome/sources/evolution-data-server": [ + "evolution_ds" + ], + "http://www.linux.it/~md/software/": [ + "gwhois" + ], + "http://www.dotproject.net/": [ + "dotproject" + ], + "http://search.cpan.org/~pajas/XML-LibXSLT": [ + "pm_xmllibxslt" + ], + "http://radsite.lbl.gov/radiance/": [ + "radiance" + ], + "http://freshmeat.net/projects/gplbp/": [ + "gplbp" + ], + "http://zed.c3po.it/": [ + "zed" + ], + "http://www.tm.uka.de/~bless/ps2eps": [ + "ps2eps" + ], + "http://search.cpan.org/~dconway/Parse-RecDescent": [ + "pm_parserecdescent" + ], + "http://www.nethack.org/": [ + "nethack" + ], + "http://www.washington.edu/imap/": [ + "imap", + "imap_devel", + "imaprt" + ], + "http://wvware.sourceforge.net/": [ + "wv2" + ], + "http://www.phildev.net/pius/": [ + "pius" + ], + "http://ftp.debian.org/debian/pool/main/f/fakeroot/": [ + "fakeroot" + ], + "http://search.cpan.org/~mkutter/SOAP-Lite": [ + "pm_soaplite" + ], + "http://www.net-snmp.org/": [ + "netsnmp", + "netsnmp_py" + ], + "http://search.cpan.org/~makamaka/Text-CSV": [ + "pm_textcsv" + ], + "http://wordlist.sourceforge.net/": [ + "aspellen" + ], + "http://softastur.org/Aspell": [ + "aspellast" + ], + "http://clpbar.sourceforge.net/": [ + "bar" + ], + "http://www.uni-bremen.de/~kmashrab/uzbek-word-list/": [ + "aspelluz" + ], + "http://www.crummy.com/software/BeautifulSoup/download/": [ + "beautifulsoup" + ], + "http://search.cpan.org/~fdaly/Test-Tester": [ + "pm_testtester" + ], + "http://search.cpan.org/~mnooning/PlRPC": [ + "pm_plrpc" + ], + "http://www.libming.org/": [ + "libming", + "libming_devel", + "libming_rt" + ], + "http://libopenraw.freedesktop.org/download/": [ + "exempi", + "exempi_devel" + ], + "http://www.gnome.org/projects/totem": [ + "totem" + ], + "http://axel.alioth.debian.org/": [ + "axel" + ], + "http://ftp.gnome.org/pub/GNOME/sources/gnome-utils": [ + "gnome_utils" + ], + "http://ibiblio.org/pub/Linux/apps/financial/spreadsheet": [ + "sc" + ], + "http://glade.gnome.org/": [ + "gladegui" + ], + "http://www.frodol.dds.nl/getopt.html": [ + "ggetopt" + ], + "http://icculus.org/neverball/": [ + "neverball" + ], + "http://search.cpan.org/~jesse/Module-Refresh-0.13/": [ + "pm_modrefresh" + ], + "http://search.cpan.org/~smccam/X11-Protocol": [ + "pm_x11protocol" + ], + "http://albumshaper.sourceforge.net/": [ + "albumshaper", + "albumshaper_common" + ], + "http://tiswww.case.edu/php/chet/bash/bashtop.html": [ + "bash" + ], + "http://cdrdao.sourceforge.net/": [ + "cdrdao" + ], + "http://ftp.arl.mil/ftp/pub/ttcp/": [ + "ttcp" + ], + "http://search.cpan.org/~alexmv/Data-ICal": [ + "pm_dataical" + ], + "http://www.chipx86.com/blog/tag/libsexy/": [ + "libsexy", + "libsexy_devel" + ], + "http://www.trolltech.com/products/qt/index.html": [ + "qt" + ], + "http://search.cpan.org/~stevan/Tree-Simple": [ + "pm_treesimple" + ], + "ftp://ftp.imagemagick.org/pub/ImageMagick/delegates/": [ + "libfpx" + ], + "http://code.google.com/p/google-gflags/": [ + "gflags" + ], + "http://search.cpan.org/~abigail/Regexp-Common": [ + "pm_regexpcom", + "pm_regexpcommon" + ], + "http://www.trilon.com/xv/xv.html": [ + "xv" + ], + "http://search.cpan.org/~sburke/Sort-Naturally": [ + "pm_sortnaturally" + ], + "http://www.linux.org/apps/AppId_5192.html": [ + "wmmail" + ], + "http://sourceforge.net/projects/modgssapache": [ + "libfbopenssl" + ], + "http://search.cpan.org/~rclamp/Class-Accessor-Chained-0.01/": [ + "pm_clsaccessorchnd" + ], + "http://www.procmail.org/": [ + "procmail" + ], + "http://www.ijg.org/": [ + "jpeg" + ], + "http://www.nicemice.net/par/": [ + "par" + ], + "http://search.cpan.org/~bobmath/Crypt-CAST5": [ + "pm_cryptcast5" + ], + "http://search.cpan.org/~jmm/Heap": [ + "pm_heap" + ], + "http://search.cpan.org/~tomhughes/IO-Zlib": [ + "pm_iozlib" + ], + "http://www.jpilot.org/": [ + "jpilot" + ], + "http://search.cpan.org/~abw/Template-Toolkit": [ + "pm_tt2", + "pm_tt2common" + ], + "http://search.cpan.org/~dparis/Crypt-DES": [ + "pm_cryptdes" + ], + "http://search.cpan.org/~jmehnle/Mail-SPF": [ + "pm_mailspf" + ], + "http://search.cpan.org/~bricas/MARC-Crosswalk-DublinCore": [ + "pm_marccrosswalkdblc" + ], + "http://search.cpan.org/~jesse/Class-ReturnValue": [ + "pm_classretval" + ], + "http://developer.kde.org/~wheeler/taglib.html": [ + "libtag1", + "libtag_c0", + "taglib", + "taglib_devel", + "taglib_gcc" + ], + "http://search.cpan.org/~petdance/File-Next": [ + "pm_filenext" + ], + "http://search.cpan.org/~bdfoy/Test-Manifest": [ + "pm_tstmanif" + ], + "http://www.webdav.org/cadaver/": [ + "cadaver" + ], + "http://jakarta.apache.org/builds/jakarta-tomcat-connectors/jk2/": [ + "mod_jk2" + ], + "http://tn5250.sourceforge.net": [ + "tn5250" + ], + "http://search.cpan.org/~dland/Crypt-SSLeay": [ + "pm_cryptssleay" + ], + "http://www.sentex.net/~mwandel/jhead/": [ + "jhead" + ], + "http://downloads.sourceforge.net/ftgl/": [ + "ftgl", + "ftgl_devel" + ], + "http://gcc.gnu.org/gcc-2.95/": [ + "gcc2", + "gcc2chill", + "gcc2chillrt", + "gcc2core", + "gcc2corert", + "gcc2g++", + "gcc2g++rt", + "gcc2g77", + "gcc2g77rt", + "gcc2java", + "gcc2javart", + "gcc2objc", + "gcc2objcrt", + "gcc2rt" + ], + "http://httpd.apache.org/": [ + "ap2_prefork", + "ap2_suexec", + "ap2_worker", + "apache2", + "apache2_devel", + "apache2_manual", + "apache2c", + "apache2rt" + ], + "http://www.xs4all.nl/~nijtmans/img.html": [ + "tm_img" + ], + "http://www.gnu.org/software/wdiff/": [ + "wdiff" + ], + "http://ant.apache.org/": [ + "ant", + "antdoc" + ], + "http://search.cpan.org/~mjd/Text-Template": [ + "pm_texttemplate" + ], + "http://reductivelabs.com/projects/puppet": [ + "puppet" + ], + "http://mirrors.kernel.org/gnu/glpk/": [ + "libglpk" + ], + "http://www.rhyolite.com/dcc/": [ + "dcc" + ], + "http://search.cpan.org/~lds/GD": [ + "pm_gd" + ], + "http://ftp.gnome.org/pub/GNOME/sources/eog": [ + "eog" + ], + "http://www.cheetahtemplate.org/": [ + "py_cheetah" + ], + "http://denyhosts.sf.net/": [ + "denyhosts" + ], + "http://arthurdejong.org/svn2cl/": [ + "svn2cl" + ], + "http://www.gtk.org/": [ + "gtk2", + "gtk2_devel", + "gtk2_doc" + ], + "http://search.cpan.org/~cade/Time-Progress": [ + "pm_timeprogress" + ], + "http://search.cpan.org/~chm/PDL": [ + "pm_pdl" + ], + "http://search.cpan.org/~markov/User-Identity": [ + "pm_useridentity" + ], + "http://pcb.sourceforge.net": [ + "pcb" + ], + "http://www.flaterco.com/xtide/": [ + "xtide", + "xtideh", + "xtidew" + ], + "http://www.antlr.org/download/Python/": [ + "py_antlr" + ], + "http://www.softcatala.org/wiki/Projectes/Corrector_ortografic": [ + "aspellca" + ], + "ftp://sources.redhat.com/pub/docbook-tools/new-trials/SOURCES/": [ + "sgmlcommon", + "xmlcommon" + ], + "http://www.cronolog.org/": [ + "cronolog" + ], + "http://www.gnu.org/software/libidn/": [ + "libidn" + ], + "http://live.gnome.org/libgnomeui": [ + "libgnomeui", + "libgnomeui2_0", + "libgnomeui_devel", + "libgnomeui_doc" + ], + "http://search.cpan.org/CPAN/authors/id/G/GR/GRICHTER/": [ + "pm_extutxsbld" + ], + "http://lame.sourceforge.net/": [ + "lame", + "lame_devel", + "lame_mp3x", + "libmp3lame0" + ], + "http://openjade.sourceforge.net/": [ + "opensp", + "opensp_devel", + "opensp_doc", + "opensp_rt" + ], + "http://search.cpan.org/~mlfisher/pmtools": [ + "pmtools" + ], + "http://www.zsh.org": [ + "zsh" + ], + "http://www.gnupg.org/related_software/libraries.en.html": [ + "libgcrypt" + ], + "http://www.libpng.org/pub/png/libpng.html": [ + "png" + ], + "http://search.cpan.org/~ceeshek/CGI-Application-Plugin-LogDispatch": [ + "pm_cgiapplogdisp" + ], + "http://search.cpan.org/~aristotle/XML-Atom-SimpleFeed": [ + "pm_xmlatomsimplefeed" + ], + "http://search.cpan.org/~soenke/String-CRC32": [ + "pm_stringcrc32" + ], + "http://mirror.csclub.uwaterloo.ca/nongnu/quilt/": [ + "quilt", + "quilt_completion", + "quilt_el" + ], + "http://www.lesswatts.org/patches/linux_acpi/": [ + "acpidump" + ], + "http://search.cpan.org/~jswartz/Log-Any": [ + "pm_logany" + ], + "http://ccrma.stanford.edu/software/snd/": [ + "snd" + ], + "http://www.oracle.com/technology/software/products/berkeley-db/db/index.html": [ + "berkeleydb3", + "berkeleydb3_devel", + "berkeleydb3_doc", + "berkeleydb42", + "berkeleydb42_devel", + "berkeleydb42_doc", + "berkeleydb44", + "berkeleydb44_devel", + "berkeleydb44_doc", + "berkeleydb47", + "berkeleydb47_devel", + "berkeleydb47_doc", + "berkeleydb48", + "berkeleydb48_devel", + "berkeleydb48_doc" + ], + "http://search.cpan.org/~chorny/Text-Reform": [ + "pm_txtreform" + ], + "http://search.cpan.org/CPAN/authors/id/A/AD/ADAMK/": [ + "pm_clsautouse" + ], + "http://www.lri.fr/~filliatr/bibtex2html/": [ + "bibtex2html" + ], + "http://search.cpan.org/~umemoto/Socket6": [ + "pm_socket6" + ], + "http://members.dslextreme.com/users/billw/gkrellm/": [ + "gkrellm", + "gkrellmd" + ], + "http://meanwhile.sourceforge.net/": [ + "meanwhile" + ], + "http://search.cpan.org/~autrijus/ExtUtils-AutoInstall": [ + "pm_extutautoinst" + ], + "http://www.kernel.org/pub/linux/utils/util-linux/": [ + "column" + ], + "http://search.cpan.org/~acalpini/Lingua-Stem-It": [ + "pm_linguastemit" + ], + "http://search.cpan.org/~wonko/CGI-Application-Dispatch": [ + "pm_cgiappdisp" + ], + "http://ncu.dl.sourceforge.net/project/cscope/cscope/15.7a/": [ + "cscope" + ], + "http://gcc.gnu.org/": [ + "gcc3", + "gcc3ada", + "gcc3adart", + "gcc3core", + "gcc3corert", + "gcc3g++", + "gcc3g++rt", + "gcc3g77", + "gcc3g77rt", + "gcc3java", + "gcc3javart", + "gcc3objc", + "gcc3objcrt", + "gcc3rt" + ], + "http://www.uio.no/~runekl/dictionary.html": [ + "aspellnb", + "aspellnn" + ], + "http://search.cpan.org/~dapatrick/XML-Stream": [ + "pm_xmlstream" + ], + "http://search.cpan.org/~agrolms/GSSAPI": [ + "pm_gssapi" + ], + "http://www.snort.org/": [ + "snort" + ], + "http://aa-project.sourceforge.net/aalib/": [ + "aalib" + ], + "http://downloads.sourceforge.net/blame/": [ + "blame" + ], + "http://search.cpan.org/~jrogers/Net-Telnet": [ + "pm_nettelnet" + ], + "http://www.bolthole.com/solaris/drivers/": [ + "jsdrv" + ], + "http://search.cpan.org/~chromatic/UNIVERSAL-isa": [ + "pm_universalisa" + ], + "https://www.indexdata.com/yaz": [ + "libyaz4", + "libyaz_devel", + "yaz" + ], + "http://search.cpan.org/~pmqs/IO-Compress": [ + "pm_iocompress" + ], + "http://search.cpan.org/~gbarr/perl-ldap": [ + "pm_ldap" + ], + "http://labix.org/python-dateutil/": [ + "py_dateutil" + ], + "http://search.cpan.org/~horrocks/CGI-SpeedyCGI-2.22/": [ + "pm_speedycgi" + ], + "http://mirrors.kernel.org/gnu/patch/": [ + "gpatch" + ], + "http://nfswatch.sourceforge.net/": [ + "nfswatch" + ], + "http://search.cpan.org/~abw/Class-Singleton": [ + "pm_classsingleton" + ], + "http://www.i-scream.org/libstatgrab/": [ + "libstatgrab" + ], + "http://tidy.sourceforge.net/src/": [ + "htmltidy" + ], + "http://xml.apache.org/xerces-c": [ + "xerces_c" + ], + "http://search.cpan.org/~hmbrand/Text-CSV_XS": [ + "pm_textcsvxs" + ], + "http://qosient.com/argus/": [ + "argus" + ], + "http://ftp.gnome.org/pub/GNOME/sources/dia/0.97/": [ + "dia" + ], + "http://ftp.gnome.org/pub/GNOME/sources/libart_lgpl/2.3/": [ + "libart" + ], + "http://search.cpan.org/~tsch/ExtUtils-PkgConfig": [ + "pm_extutpkgconf" + ], + "http://search.cpan.org/~audreyt/Test-use-ok": [ + "pm_testuseok" + ], + "http://www.fifthplanet.net/goggles.html": [ + "goggles" + ], + "http://genshi.edgewall.org/": [ + "genshi" + ], + "http://www.gtk.org": [ + "gtk" + ], + "http://www.gnu.org/software/automake/": [ + "automake" + ], + "http://icewm.sourceforge.net/": [ + "icewm" + ], + "http://geolite.maxmind.com/download/geoip/api/c/": [ + "geoip", + "geoip_devel" + ], + "https://sourceforge.net/projects/linguistico/": [ + "aspellit" + ], + "http://silcnet.org": [ + "silctoolkit" + ], + "http://www.dirvish.org/": [ + "dirvish" + ], + "www.jasspa.com": [ + "jasspamedede", + "jasspameengb", + "jasspameenus", + "jasspameeses", + "jasspamefifi", + "jasspamefrfr", + "jasspameitit", + "jasspameplpl", + "jasspameptpt", + "jasspameruye", + "jasspameruyo" + ], + "http://ftp.gnome.org/pub/GNOME/sources/control-center": [ + "control_center" + ], + "http://ftp.gnome.org/pub/GNOME/sources/gnome-doc-utils": [ + "gnome_doc_utils" + ], + "http://liblqr.wikidot.com/": [ + "liblqr", + "liblqr_devel" + ], + "http://tofrodos.sourceforge.net/download/": [ + "tofrodos" + ], + "http://search.cpan.org/~jbuhacoff/CGP-CLI": [ + "pm_cgpcli" + ], + "http://downloads.sourceforge.net/wesnoth/": [ + "wesnoth" + ], + "http://search.cpan.org/~fdaly/Test-Deep": [ + "pm_testdeep" + ], + "http://www.lcdf.org/xmahjongg/": [ + "xmahjongg" + ], + "http://aspell.net/": [ + "aspell" + ], + "http://search.cpan.org/~djerius/Expect-Simple-0.03/": [ + "pm_expectsimp" + ], + "http://downloads.sourceforge.net/lasi/": [ + "liblasi" + ], + "http://freeassociation.sourceforge.net/": [ + "libical", + "libical_devel" + ], + "http://www.zlib.net/pigz/": [ + "pigz" + ], + "http://c-ares.haxx.se/": [ + "libcares", + "libcares_devel" + ], + "http://www.maier-komor.de/sysstat.html": [ + "sysstat" + ], + "http://www.cs.purdue.edu/homes/trinkle/RCS/": [ + "rcs" + ], + "http://lftp.yar.ru/": [ + "gnustep_make" + ], + "http://pypi.python.org/packages/source/d/django-filter/": [ + "py_django_filter" + ], + "http://www.gphoto.org/": [ + "gphoto2", + "libgphoto2" + ], + "http://apache.cict.fr/commons/net/binaries/": [ + "commons_net", + "commons_net_doc" + ], + "http://www.gnucash.org/pub/g-wrap/source/": [ + "gwrap" + ], + "http://www.cryptopp.com/": [ + "cryptopp" + ], + "http://www.jedrea.com/chmlib/": [ + "chmlib" + ], + "http://search.cpan.org/~hacker/Net-XMPP": [ + "pm_netxmpp" + ], + "http://www.lilotux.net/~mikael/mcabber/": [ + "mcabber" + ], + "http://www.cs.wisc.edu/~ghost/gsview/epstool.htm": [ + "epstool" + ], + "http://ftp.gnome.org/pub/gnome/sources/gnome-netstatus": [ + "gnome_netstatus" + ], + "http://search.cpan.org/~podmaster/XML-TokeParser": [ + "pm_xmltokeparser" + ], + "http://downloads.sourceforge.net/gdmap/": [ + "gdmap" + ], + "http://search.cpan.org/~dwheeler/Pod-Simple": [ + "pm_podsimple" + ], + "http://www.nedit.org/": [ + "nedit" + ], + "http://search.cpan.org/~gbarr/Authen-SASL": [ + "pm_authensasl" + ], + "http://easynews.dl.sourceforge.net/sourceforge/fltk/": [ + "flphoto" + ], + "http://www.pstoedit.net/": [ + "pstoedit", + "pstoedit_devel", + "pstoedit_rt" + ], + "http://mirrors.kernel.org/gnu/sed/": [ + "gsed" + ], + "http://www.xfig.org/": [ + "transfig" + ], + "http://search.cpan.org/~kane/Term-UI": [ + "pm_termui" + ], + "http://www.wireshark.org/": [ + "wireshark" + ], + "http://www.graphicsmagick.org/": [ + "graphicsmagick" + ], + "http://tuxkart.sourceforge.net": [ + "tuxkart" + ], + "https://fedorahosted.org/releases/x/m/xmlto/": [ + "xmlto" + ], + "http://www.ibiblio.org/pub/mirrors/gnu/ftp/non-gnu/flex/": [ + "flex" + ], + "http://search.cpan.org/~fimm/File-Cat": [ + "pm_filecat" + ], + "http://search.cpan.org/~pryan/Period-1.20/": [ + "pm_timeperiod" + ], + "http://people.ssh.fi/mtr/genscript/": [ + "enscript" + ], + "http://www.ibr.cs.tu-bs.de/projects/scotty/": [ + "scotty" + ], + "http://pkgutil.wikidot.com/": [ + "pkgutil", + "pkgutilplus" + ], + "http://search.cpan.org/~kwilliams/Class-Container": [ + "pm_clscontainer" + ], + "http://search.cpan.org/~tomi/Template-TAL": [ + "pm_templatetal" + ], + "http://www.postgresql.org/": [ + "libpq", + "postgresql", + "postgresqlcontrib" + ], + "http://projects.gnome.org/gconf/": [ + "gconf2" + ], + "http://search.cpan.org/~ilyaz/MP3-Tag": [ + "pm_mp3tag" + ], + "http://namazu.org/": [ + "gnusnamazu", + "namazu" + ], + "http://search.cpan.org/~grantm/XML-Simple": [ + "pm_xmlsimple" + ], + "http://search.cpan.org/~luismunoz/Crypt-PasswdMD5": [ + "pm_cryptpasswdmd5" + ], + "http://gdome2.cs.unibo.it/": [ + "gdome2" + ], + "http://www.clamav.net": [ + "clamav", + "libclam6", + "libclam6_devel" + ], + "http://pypi.python.org/packages/source/d/django-auth-ldap/": [ + "py_django_auth_ldap" + ], + "http://ftp.gnome.org/pub/gnome/sources/bug-buddy": [ + "bugbuddy" + ], + "http://search.cpan.org/~xmath/Sub-Name": [ + "pm_subname" + ], + "http://www.ucarp.org/project/ucarp": [ + "ucarp" + ], + "http://www.oasis-open.org/docbook/sgml/3.0/": [ + "docbookdtds" + ], + "http://search.cpan.org/~adamk/File-Remove": [ + "pm_fileremove" + ], + "http://www.gnu.org/software/gnutls/": [ + "gnutls", + "gnutls_devel", + "libtasn1", + "libtasn1_3", + "libtasn1_devel" + ], @@ Diff output truncated at 100000 characters. @@ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sat Feb 26 12:26:17 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sat, 26 Feb 2011 11:26:17 +0000 Subject: [csw-devel] SF.net SVN: gar:[13473] csw/mgar/pkg/cpan/Crypt-DES_EDE3/trunk Message-ID: Revision: 13473 http://gar.svn.sourceforge.net/gar/?rev=13473&view=rev Author: wbonnet Date: 2011-02-26 11:26:17 +0000 (Sat, 26 Feb 2011) Log Message: ----------- cpan/crypt-des-ede3 initial release Modified Paths: -------------- csw/mgar/pkg/cpan/Crypt-DES_EDE3/trunk/Makefile csw/mgar/pkg/cpan/Crypt-DES_EDE3/trunk/checksums Modified: csw/mgar/pkg/cpan/Crypt-DES_EDE3/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Crypt-DES_EDE3/trunk/Makefile 2011-02-25 22:40:54 UTC (rev 13472) +++ csw/mgar/pkg/cpan/Crypt-DES_EDE3/trunk/Makefile 2011-02-26 11:26:17 UTC (rev 13473) @@ -13,8 +13,14 @@ the encryption/decryption steps. endef -DISTFILES += CSWpmcryptdesede3.gspec CSWpmcryptdesede3.depend -DEPENDS += cpan/Crypt-DES +CATALOGNAME = pm_crypt_des_ede3 +PACKAGES = CSWpm-crypt-des-ede3 +ARCHALL_CSWpm-crypt-des-ede3 = 1 + +LICENSE = README + +RUNTIME_PKG_DEPS = CSWpmcryptdes + include gar/category.mk Modified: csw/mgar/pkg/cpan/Crypt-DES_EDE3/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/Crypt-DES_EDE3/trunk/checksums 2011-02-25 22:40:54 UTC (rev 13472) +++ csw/mgar/pkg/cpan/Crypt-DES_EDE3/trunk/checksums 2011-02-26 11:26:17 UTC (rev 13473) @@ -1,3 +1 @@ -b875d1c5b38fb01812a70c0fc883cc52 download/CSWpmcryptdesede3.gspec -c9bd94e323bc80c4baf8877697c42f9c download/CSWpmcryptdesede3.depend -fde1995efa0735407a5f7c4a4c8147bc download/Crypt-DES_EDE3-0.01.tar.gz +fde1995efa0735407a5f7c4a4c8147bc Crypt-DES_EDE3-0.01.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sat Feb 26 12:26:35 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sat, 26 Feb 2011 11:26:35 +0000 Subject: [csw-devel] SF.net SVN: gar:[13474] csw/mgar/pkg/cpan/Crypt-DES_EDE3/trunk/files Message-ID: Revision: 13474 http://gar.svn.sourceforge.net/gar/?rev=13474&view=rev Author: wbonnet Date: 2011-02-26 11:26:34 +0000 (Sat, 26 Feb 2011) Log Message: ----------- cpan/crypt-des-ede3 initial release Removed Paths: ------------- csw/mgar/pkg/cpan/Crypt-DES_EDE3/trunk/files/CSWpmcryptdesede3.depend csw/mgar/pkg/cpan/Crypt-DES_EDE3/trunk/files/CSWpmcryptdesede3.gspec Deleted: csw/mgar/pkg/cpan/Crypt-DES_EDE3/trunk/files/CSWpmcryptdesede3.depend =================================================================== --- csw/mgar/pkg/cpan/Crypt-DES_EDE3/trunk/files/CSWpmcryptdesede3.depend 2011-02-26 11:26:17 UTC (rev 13473) +++ csw/mgar/pkg/cpan/Crypt-DES_EDE3/trunk/files/CSWpmcryptdesede3.depend 2011-02-26 11:26:34 UTC (rev 13474) @@ -1 +0,0 @@ -P CSWpmcryptdes pm_cryptdes - Perl DES encryption module Deleted: csw/mgar/pkg/cpan/Crypt-DES_EDE3/trunk/files/CSWpmcryptdesede3.gspec =================================================================== --- csw/mgar/pkg/cpan/Crypt-DES_EDE3/trunk/files/CSWpmcryptdesede3.gspec 2011-02-26 11:26:17 UTC (rev 13473) +++ csw/mgar/pkg/cpan/Crypt-DES_EDE3/trunk/files/CSWpmcryptdesede3.gspec 2011-02-26 11:26:34 UTC (rev 13474) @@ -1,7 +0,0 @@ -%var bitname pm_cryptdesede3 -%var pkgname CSWpmcryptdesede3 -%var arch all -%include url file://%{PKGLIB}/csw_cpan.gspec -%copyright -Crypt::DES_EDE3 is Copyright 2001 Benjamin Trott, ben at rhumba.pair.com. All -rights reserved. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sat Feb 26 13:47:58 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sat, 26 Feb 2011 12:47:58 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[337] buildfarm/bin Message-ID: Revision: 337 http://opencsw.svn.sourceforge.net/opencsw/?rev=337&view=rev Author: wahwah Date: 2011-02-26 12:47:58 +0000 (Sat, 26 Feb 2011) Log Message: ----------- Setting Id keyword on experimental html templates. Property Changed: ---------------- buildfarm/bin/experimental-footer.inc buildfarm/bin/experimental-head.inc Property changes on: buildfarm/bin/experimental-footer.inc ___________________________________________________________________ Added: svn:keywords + Id Property changes on: buildfarm/bin/experimental-head.inc ___________________________________________________________________ Added: svn:keywords + Id This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sun Feb 27 01:35:21 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sun, 27 Feb 2011 00:35:21 +0000 Subject: [csw-devel] SF.net SVN: gar:[13475] csw/mgar/gar/v2/lib/python/pkgdb.py Message-ID: Revision: 13475 http://gar.svn.sourceforge.net/gar/?rev=13475&view=rev Author: wahwah Date: 2011-02-27 00:35:21 +0000 (Sun, 27 Feb 2011) Log Message: ----------- pkgdb: Don't warn during catalog creation Modified Paths: -------------- csw/mgar/gar/v2/lib/python/pkgdb.py Modified: csw/mgar/gar/v2/lib/python/pkgdb.py =================================================================== --- csw/mgar/gar/v2/lib/python/pkgdb.py 2011-02-26 11:26:34 UTC (rev 13474) +++ csw/mgar/gar/v2/lib/python/pkgdb.py 2011-02-27 00:35:21 UTC (rev 13475) @@ -537,7 +537,7 @@ print obj.catalogname, obj.basename, obj.md5_sum elif command == 'gen-cat': catrel = 'unstable' - if options.catrel != catrel: + if options.catrel and options.catrel != catrel: logging.warn("Generating the %s catalog.", catrel) if len(args) != 2: raise UsageError("Wrong number of arguments, see usage.") This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sun Feb 27 01:35:54 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sun, 27 Feb 2011 00:35:54 +0000 Subject: [csw-devel] SF.net SVN: gar:[13476] csw/mgar/gar/v2/lib/python/pkgdb.py Message-ID: Revision: 13476 http://gar.svn.sourceforge.net/gar/?rev=13476&view=rev Author: wahwah Date: 2011-02-27 00:35:54 +0000 (Sun, 27 Feb 2011) Log Message: ----------- pkgdb: Control catalogs imported/generated Put some safety measure in place, to avoid generation and importing of wrong catalogs. Signed-off-by: Maciej Blizinski Modified Paths: -------------- csw/mgar/gar/v2/lib/python/pkgdb.py Modified: csw/mgar/gar/v2/lib/python/pkgdb.py =================================================================== --- csw/mgar/gar/v2/lib/python/pkgdb.py 2011-02-27 00:35:21 UTC (rev 13475) +++ csw/mgar/gar/v2/lib/python/pkgdb.py 2011-02-27 00:35:54 UTC (rev 13476) @@ -74,6 +74,14 @@ """ DEFAULT_TEMPLATE_FILENAME = "../lib/python/pkg-review-template.html" +CATALOGS_ALLOWED_TO_GENERATE = frozenset([ + "unstable", + "dublin", + "kiel", +]) +CATALOGS_ALLOWED_TO_BE_IMPORTED = frozenset([ + "current", +]) class Error(Exception): @@ -191,6 +199,9 @@ Imports srv4 files if necessary. """ + if catrel not in CATALOGS_ALLOWED_TO_BE_IMPORTED: + raise UsageError("Catalogs that can be imported: %s" + % CATALOGS_ALLOWED_TO_BE_IMPORTED) catalog_dir = os.path.dirname(catalog_file) # The plan: # - read in the catalog file, and build a md5-filename correspondence @@ -536,9 +547,14 @@ for obj in res: print obj.catalogname, obj.basename, obj.md5_sum elif command == 'gen-cat': - catrel = 'unstable' + catrel = options.catrel or 'dublin' if options.catrel and options.catrel != catrel: logging.warn("Generating the %s catalog.", catrel) + if catrel not in CATALOGS_ALLOWED_TO_GENERATE: + raise UsageError( + "Catalog %s not allowed to be generated from the database. " + "Allowed catalogs are: %s" + % (catrel, CATALOGS_ALLOWED_TO_GENERATE)) if len(args) != 2: raise UsageError("Wrong number of arguments, see usage.") allpkgs_dir, target_dir = args This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sun Feb 27 01:36:27 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sun, 27 Feb 2011 00:36:27 +0000 Subject: [csw-devel] SF.net SVN: gar:[13477] csw/mgar/gar/v2/lib/web/pkgdb_web.py Message-ID: Revision: 13477 http://gar.svn.sourceforge.net/gar/?rev=13477&view=rev Author: wahwah Date: 2011-02-27 00:36:27 +0000 (Sun, 27 Feb 2011) Log Message: ----------- pkgdb: More specific catalog parsing regexes They allow dashes in catalog names. Modified Paths: -------------- csw/mgar/gar/v2/lib/web/pkgdb_web.py Modified: csw/mgar/gar/v2/lib/web/pkgdb_web.py =================================================================== --- csw/mgar/gar/v2/lib/web/pkgdb_web.py 2011-02-27 00:35:54 UTC (rev 13476) +++ csw/mgar/gar/v2/lib/web/pkgdb_web.py 2011-02-27 00:36:27 UTC (rev 13477) @@ -18,7 +18,7 @@ r'/srv4/([0-9a-f]{32})/', 'Srv4Detail', r'/srv4/([0-9a-f]{32})/files/', 'Srv4DetailFiles', r'/catalogs/', 'CatalogList', - r'/catalogs/([^-]+)-([^-]+)-([^-]+)/', 'CatalogDetail', + r'/catalogs/([\w-]+)-(sparc|i386)-(SunOS[^-]+)/', 'CatalogDetail', r'/maintainers/', 'MaintainerList', r'/maintainers/(\d+)/', 'MaintainerDetail', r'/maintainers/(\d+)/checkpkg/', 'MaintainerCheckpkgReport', @@ -27,11 +27,11 @@ r'/catalognames/', 'CatalognameList', r'/catalognames/([^/]+)/', 'Catalogname', r'/error-tags/', 'ErrorTagList', - r'/rest/catalogs/([^/]+)/([^/]+)/([^/]+)/', 'Catalogs', - r'/rest/catalogs/([^/]+)/([^/]+)/([^/]+)/pkgname-by-filename', + r'/rest/catalogs/([\w-]+)-(sparc|i386)-(SunOS[^-]+)/', 'Catalogs', + r'/rest/catalogs/([\w-]+)-(sparc|i386)-(SunOS[^-]+)/pkgname-by-filename', 'PkgnameByFilename', # Query by catalog release, arch, OS release and catalogname - r'/rest/catalogs/([^/]+)/([^/]+)/([^/]+)/catalognames/([^/]+)/', 'Srv4ByCatAndCatalogname', + r'/rest/catalogs/([\w-]+)-(sparc|i386)-(SunOS[^-]+)/catalognames/([^/]+)/', 'Srv4ByCatAndCatalogname', r'/rest/srv4/([0-9a-f]{32})/', 'RestSrv4Detail', ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sun Feb 27 01:36:58 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sun, 27 Feb 2011 00:36:58 +0000 Subject: [csw-devel] SF.net SVN: gar:[13478] csw/mgar/gar/v2/lib/python/uwatch.py Message-ID: Revision: 13478 http://gar.svn.sourceforge.net/gar/?rev=13478&view=rev Author: wahwah Date: 2011-02-27 00:36:58 +0000 (Sun, 27 Feb 2011) Log Message: ----------- uwatch: Add logging module support A lot of code in uwatch needs to be ported to the logging module. Signed-off-by: Maciej Blizinski Modified Paths: -------------- csw/mgar/gar/v2/lib/python/uwatch.py Modified: csw/mgar/gar/v2/lib/python/uwatch.py =================================================================== --- csw/mgar/gar/v2/lib/python/uwatch.py 2011-02-27 00:36:27 UTC (rev 13477) +++ csw/mgar/gar/v2/lib/python/uwatch.py 2011-02-27 00:36:58 UTC (rev 13478) @@ -45,6 +45,7 @@ import MySQLdb import datetime import ConfigParser +import logging from urllib2 import Request, urlopen, URLError from optparse import OptionParser @@ -274,10 +275,13 @@ self._uwatch_pkg_root = None # This member variable is a flag which defines the status of the verbose mode (True : activated) - if args.verbose != None: + logging_level = logging.INFO + if args.verbose is not None: self._verbose = args.verbose + logging_level = logging.DEBUG else: self._verbose = False + logging.basicConfig(level=logging_level) # This member variable defines the value of the version of the package # Current revision is not passed as a separated argument. It is part of the opencsw version number. @@ -726,6 +730,8 @@ # Search the strings matching the regexp passed through command line arguments p = re.compile(self.config.getRegexp()) matches = p.findall(content) + logging.info("CheckUpstreamCommand.execute(): matches=%s", + repr(matches)) # Check if we have found some results if len(matches) == 0: @@ -811,8 +817,15 @@ content = self.UrlContentRetrieve(self.config.getUpstreamURL()) # Search the strings matching the regexp passed through command line arguments - p = re.compile(self.config.getRegexp()) + regex_str = self.config.getRegexp() + p = re.compile(regex_str) matches = p.findall(content) + logging.info("GetUpstreamLatestVersionCommand.execute(): " + "regex=%s", + repr(regex_str)) + logging.info("GetUpstreamLatestVersionCommand.execute(): " + "matches=%s", + repr(matches)) # Check if we have found some results if len(matches) == 0: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sun Feb 27 01:37:30 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sun, 27 Feb 2011 00:37:30 +0000 Subject: [csw-devel] SF.net SVN: gar:[13479] csw/mgar/gar/v2/lib/python/struct_util_test.py Message-ID: Revision: 13479 http://gar.svn.sourceforge.net/gar/?rev=13479&view=rev Author: wahwah Date: 2011-02-27 00:37:29 +0000 (Sun, 27 Feb 2011) Log Message: ----------- checkpkg: MakeCatalognameByPkgname unit test Adding a test for package name with digits. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/struct_util_test.py Modified: csw/mgar/gar/v2/lib/python/struct_util_test.py =================================================================== --- csw/mgar/gar/v2/lib/python/struct_util_test.py 2011-02-27 00:36:58 UTC (rev 13478) +++ csw/mgar/gar/v2/lib/python/struct_util_test.py 2011-02-27 00:37:29 UTC (rev 13479) @@ -75,6 +75,9 @@ # Pluses? Plusen? Plusi? self.assertEqual("libnetcdf_c++5", struct_util.MakeCatalognameByPkgname("CSWlibnetcdf-c++5")) + def testWithDigits(self): + self.assertEqual("libfoo1_1", struct_util.MakeCatalognameByPkgname("CSWlibfoo1-1")) + if __name__ == '__main__': unittest.main() This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sun Feb 27 01:38:19 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sun, 27 Feb 2011 00:38:19 +0000 Subject: [csw-devel] SF.net SVN: gar:[13480] csw/mgar/gar/v2/lib/python Message-ID: Revision: 13480 http://gar.svn.sourceforge.net/gar/?rev=13480&view=rev Author: wahwah Date: 2011-02-27 00:38:18 +0000 (Sun, 27 Feb 2011) Log Message: ----------- uwatch: Cope with numbers in software names e.g. Crypt-DES_EDE3 - don't treat the number 3 as version number. Signed-off-by: Maciej Blizi?\197?\132ski Modified Paths: -------------- csw/mgar/gar/v2/lib/python/uwatch.py csw/mgar/gar/v2/lib/python/uwatch_test.py Added Paths: ----------- csw/mgar/gar/v2/lib/python/testdata/uwatch_regexes_data.py csw/mgar/gar/v2/lib/python/uwatch_regexes_test.py Added: csw/mgar/gar/v2/lib/python/testdata/uwatch_regexes_data.py =================================================================== --- csw/mgar/gar/v2/lib/python/testdata/uwatch_regexes_data.py (rev 0) +++ csw/mgar/gar/v2/lib/python/testdata/uwatch_regexes_data.py 2011-02-27 00:38:18 UTC (rev 13480) @@ -0,0 +1,16720 @@ +regex_list = [{'catalogname': u'9menu', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSW9menu', + 'target_regex': None}, + {'catalogname': u'a2ps', + 'distfiles': u'a2ps-4.13b.tar.gz ', + 'gar_regex': u'a2ps-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWa2ps', + 'target_regex': u'a2ps-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'aalib', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaalib', + 'target_regex': None}, + {'catalogname': u'achievo', + 'distfiles': u'achievo-1.4.3.tar.gz ', + 'gar_regex': u'achievo-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWachievo', + 'target_regex': u'achievo-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'aggregate', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaggregate', + 'target_regex': None}, + {'catalogname': u'amanda', + 'distfiles': u'amanda-3.2.0.tar.gz ', + 'gar_regex': u'amanda-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWamanda', + 'target_regex': u'amanda-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'amarok', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWamarok', + 'target_regex': None}, + {'catalogname': u'amavisd_new', + 'distfiles': u'amavisd-new-2.6.4.tar.gz CSWamavisdnew.cswusergroup CSWamavisdnew.postinstall CSWamavisdnew.preinstall ', + 'gar_regex': u'amavisd-new-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWamavisdnew', + 'target_regex': u'amavisd-new-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'amsn', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWamsn', + 'target_regex': None}, + {'catalogname': u'analog', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWanalog', + 'target_regex': None}, + {'catalogname': u'angband', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWangband', + 'target_regex': None}, + {'catalogname': u'anjuta', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWanjuta', + 'target_regex': None}, + {'catalogname': u'ant', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWant', + 'target_regex': None}, + {'catalogname': u'antdoc', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWantdoc', + 'target_regex': None}, + {'catalogname': u'antiword', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWantiword', + 'target_regex': None}, + {'catalogname': u'ap2_mod_jk', + 'distfiles': u'tomcat-connectors-1.2.30-src.tar.gz CSWap2modjk.gspec CSWap2modjk.depend CSWap2modjk.prototype CSWap2modjk.postinstall CSWap2modjk.preremove CSWap2modjk.space httpd-jk.conf.CSW workers.properties workers.properties.minimal uriworkermap.properties ', + 'gar_regex': u'tomcat-connectors-(\\d+(?:\\.\\d+)*)-src.tar.gz', + 'pkgname': u'CSWap2modjk', + 'target_regex': u'tomcat-connectors-(\\d+(?:\\.\\d+)*)-src.tar.gz'}, + {'catalogname': u'ap2_modapreq2', + 'distfiles': u'libapreq2-2.12.tar.gz ', + 'gar_regex': u'libapreq2-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWap2modapreq2', + 'target_regex': u'libapreq2-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'ap2_modevasive', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWap2modevasive', + 'target_regex': None}, + {'catalogname': u'ap2_modfastcgi', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWap2modfastcgi', + 'target_regex': None}, + {'catalogname': u'ap2_modperl', + 'distfiles': u'mod_perl-2.0.4.tar.gz ', + 'gar_regex': u'mod_perl-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWap2modperl', + 'target_regex': u'mod_perl-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'ap2_modphp5', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWap2modphp5', + 'target_regex': None}, + {'catalogname': u'ap2_modpython', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWap2modpython', + 'target_regex': None}, + {'catalogname': u'ap2_prefork', + 'distfiles': u'httpd-2.2.17.tar.gz config.layout CSWapache2.killproc cswapache2 CSWapache2.preinstall CSWap2worker.postinstall CSWap2worker.preremove update20to22 README.CSW.apache2 README.CSW.ap2_prefork README.CSW.apache2rt ', + 'gar_regex': u'httpd-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWap2prefork', + 'target_regex': u'httpd-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'ap2_subversion', + 'distfiles': u'subversion-1.6.15.tar.bz2 CSWsvn.checkinstall CSWap2svn.postinstall CSWap2svn.preremove httpd-svn.conf.CSW svn_access.conf.CSW fixme.sh ', + 'gar_regex': u'subversion-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWap2svn', + 'target_regex': u'subversion-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'ap2_suexec', + 'distfiles': u'httpd-2.2.17.tar.gz config.layout CSWapache2.killproc cswapache2 CSWapache2.preinstall CSWap2worker.postinstall CSWap2worker.preremove update20to22 README.CSW.apache2 README.CSW.ap2_prefork README.CSW.apache2rt ', + 'gar_regex': u'httpd-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWap2suexec', + 'target_regex': u'httpd-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'ap2_worker', + 'distfiles': u'httpd-2.2.17.tar.gz config.layout CSWapache2.killproc cswapache2 CSWapache2.preinstall CSWap2worker.postinstall CSWap2worker.preremove update20to22 README.CSW.apache2 README.CSW.ap2_prefork README.CSW.apache2rt ', + 'gar_regex': u'httpd-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWap2worker', + 'target_regex': u'httpd-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'apache', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWapache', + 'target_regex': None}, + {'catalogname': u'apache2', + 'distfiles': u'httpd-2.2.17.tar.gz config.layout CSWapache2.killproc cswapache2 CSWapache2.preinstall CSWap2worker.postinstall CSWap2worker.preremove update20to22 README.CSW.apache2 README.CSW.ap2_prefork README.CSW.apache2rt ', + 'gar_regex': u'httpd-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWapache2', + 'target_regex': u'httpd-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'apache2_devel', + 'distfiles': u'httpd-2.2.17.tar.gz config.layout CSWapache2.killproc cswapache2 CSWapache2.preinstall CSWap2worker.postinstall CSWap2worker.preremove update20to22 README.CSW.apache2 README.CSW.ap2_prefork README.CSW.apache2rt ', + 'gar_regex': u'httpd-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWapache2-devel', + 'target_regex': u'httpd-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'apache2_manual', + 'distfiles': u'httpd-2.2.17.tar.gz config.layout CSWapache2.killproc cswapache2 CSWapache2.preinstall CSWap2worker.postinstall CSWap2worker.preremove update20to22 README.CSW.apache2 README.CSW.ap2_prefork README.CSW.apache2rt ', + 'gar_regex': u'httpd-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWapache2-manual', + 'target_regex': u'httpd-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'apache2c', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWapache2c', + 'target_regex': None}, + {'catalogname': u'apache2rt', + 'distfiles': u'httpd-2.2.17.tar.gz config.layout CSWapache2.killproc cswapache2 CSWapache2.preinstall CSWap2worker.postinstall CSWap2worker.preremove update20to22 README.CSW.apache2 README.CSW.ap2_prefork README.CSW.apache2rt ', + 'gar_regex': u'httpd-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWapache2rt', + 'target_regex': u'httpd-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'apg', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWapg', + 'target_regex': None}, + {'catalogname': u'arc', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWarc', + 'target_regex': None}, + {'catalogname': u'archivemail', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWarchivemail', + 'target_regex': None}, + {'catalogname': u'argus', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWargus', + 'target_regex': None}, + {'catalogname': u'armagetron', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWarmagetron', + 'target_regex': None}, + {'catalogname': u'arts', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWarts', + 'target_regex': None}, + {'catalogname': u'arts_gcc', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWartsgcc', + 'target_regex': None}, + {'catalogname': u'aspell', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspell', + 'target_regex': None}, + {'catalogname': u'aspellaf', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellaf', + 'target_regex': None}, + {'catalogname': u'aspellam', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellam', + 'target_regex': None}, + {'catalogname': u'aspellaz', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellaz', + 'target_regex': None}, + {'catalogname': u'aspellbe', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellbe', + 'target_regex': None}, + {'catalogname': u'aspellbg', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellbg', + 'target_regex': None}, + {'catalogname': u'aspellbn', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellbn', + 'target_regex': None}, + {'catalogname': u'aspellbr', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellbr', + 'target_regex': None}, + {'catalogname': u'aspellca', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellca', + 'target_regex': None}, + {'catalogname': u'aspellcs', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellcs', + 'target_regex': None}, + {'catalogname': u'aspellcsb', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellcsb', + 'target_regex': None}, + {'catalogname': u'aspellcy', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellcy', + 'target_regex': None}, + {'catalogname': u'aspellda', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellda', + 'target_regex': None}, + {'catalogname': u'aspellde', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellde', + 'target_regex': None}, + {'catalogname': u'aspellel', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellel', + 'target_regex': None}, + {'catalogname': u'aspellen', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellen', + 'target_regex': None}, + {'catalogname': u'aspelleo', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspelleo', + 'target_regex': None}, + {'catalogname': u'aspelles', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspelles', + 'target_regex': None}, + {'catalogname': u'aspellet', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellet', + 'target_regex': None}, + {'catalogname': u'aspellfa', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellfa', + 'target_regex': None}, + {'catalogname': u'aspellfi', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellfi', + 'target_regex': None}, + {'catalogname': u'aspellfo', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellfo', + 'target_regex': None}, + {'catalogname': u'aspellfr', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellfr', + 'target_regex': None}, + {'catalogname': u'aspellga', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellga', + 'target_regex': None}, + {'catalogname': u'aspellgd', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellgd', + 'target_regex': None}, + {'catalogname': u'aspellgl', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellgl', + 'target_regex': None}, + {'catalogname': u'aspellgv', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellgv', + 'target_regex': None}, + {'catalogname': u'aspellhe', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellhe', + 'target_regex': None}, + {'catalogname': u'aspellhi', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellhi', + 'target_regex': None}, + {'catalogname': u'aspellhil', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellhil', + 'target_regex': None}, + {'catalogname': u'aspellhr', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellhr', + 'target_regex': None}, + {'catalogname': u'aspellhsb', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellhsb', + 'target_regex': None}, + {'catalogname': u'aspellhu', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellhu', + 'target_regex': None}, + {'catalogname': u'aspellia', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellia', + 'target_regex': None}, + {'catalogname': u'aspellid', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellid', + 'target_regex': None}, + {'catalogname': u'aspellis', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellis', + 'target_regex': None}, + {'catalogname': u'aspellit', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellit', + 'target_regex': None}, + {'catalogname': u'aspellku', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellku', + 'target_regex': None}, + {'catalogname': u'aspellla', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellla', + 'target_regex': None}, + {'catalogname': u'aspelllt', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspelllt', + 'target_regex': None}, + {'catalogname': u'aspelllv', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspelllv', + 'target_regex': None}, + {'catalogname': u'aspellmg', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellmg', + 'target_regex': None}, + {'catalogname': u'aspellmi', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellmi', + 'target_regex': None}, + {'catalogname': u'aspellmk', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellmk', + 'target_regex': None}, + {'catalogname': u'aspellmn', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellmn', + 'target_regex': None}, + {'catalogname': u'aspellmr', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellmr', + 'target_regex': None}, + {'catalogname': u'aspellms', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellms', + 'target_regex': None}, + {'catalogname': u'aspellmt', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellmt', + 'target_regex': None}, + {'catalogname': u'aspellnb', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellnb', + 'target_regex': None}, + {'catalogname': u'aspellnds', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellnds', + 'target_regex': None}, + {'catalogname': u'aspellnl', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellnl', + 'target_regex': None}, + {'catalogname': u'aspellnn', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellnn', + 'target_regex': None}, + {'catalogname': u'aspellny', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellny', + 'target_regex': None}, + {'catalogname': u'aspellor', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellor', + 'target_regex': None}, + {'catalogname': u'aspellpa', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellpa', + 'target_regex': None}, + {'catalogname': u'aspellpl', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellpl', + 'target_regex': None}, + {'catalogname': u'aspellpt', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellpt', + 'target_regex': None}, + {'catalogname': u'aspellptbr', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellptbr', + 'target_regex': None}, + {'catalogname': u'aspellptpt', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellptpt', + 'target_regex': None}, + {'catalogname': u'aspellqu', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellqu', + 'target_regex': None}, + {'catalogname': u'aspellro', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellro', + 'target_regex': None}, + {'catalogname': u'aspellru', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellru', + 'target_regex': None}, + {'catalogname': u'aspellrw', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellrw', + 'target_regex': None}, + {'catalogname': u'aspellsc', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellsc', + 'target_regex': None}, + {'catalogname': u'aspellsk', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellsk', + 'target_regex': None}, + {'catalogname': u'aspellsl', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellsl', + 'target_regex': None}, + {'catalogname': u'aspellsv', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellsv', + 'target_regex': None}, + {'catalogname': u'aspellsw', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellsw', + 'target_regex': None}, + {'catalogname': u'aspellta', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellta', + 'target_regex': None}, + {'catalogname': u'aspellte', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellte', + 'target_regex': None}, + {'catalogname': u'aspelltet', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspelltet', + 'target_regex': None}, + {'catalogname': u'aspelltl', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspelltl', + 'target_regex': None}, + {'catalogname': u'aspelltn', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspelltn', + 'target_regex': None}, + {'catalogname': u'aspelltr', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspelltr', + 'target_regex': None}, + {'catalogname': u'aspelluk', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspelluk', + 'target_regex': None}, + {'catalogname': u'aspelluz', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspelluz', + 'target_regex': None}, + {'catalogname': u'aspellvi', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellvi', + 'target_regex': None}, + {'catalogname': u'aspellwa', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellwa', + 'target_regex': None}, + {'catalogname': u'aspellyi', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellyi', + 'target_regex': None}, + {'catalogname': u'aspellzu', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWaspellzu', + 'target_regex': None}, + {'catalogname': u'auctex', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWauctex', + 'target_regex': None}, + {'catalogname': u'audiofile', + 'distfiles': u'audiofile-0.2.7.tar.gz ', + 'gar_regex': u'audiofile-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWaudiofile', + 'target_regex': u'audiofile-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'autoconf', + 'distfiles': u'autoconf-2.68.tar.gz ', + 'gar_regex': u'autoconf-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWautoconf', + 'target_regex': u'autoconf-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'autogen', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWautogen', + 'target_regex': None}, + {'catalogname': u'automake', + 'distfiles': u'automake-1.6.3.tar.gz automake-1.7.9.tar.gz automake-1.8.5.tar.gz automake-1.9.6.tar.gz automake-1.10.3.tar.gz automake-1.11.1.tar.gz CSWautomake.postmsg ', + 'gar_regex': u'', + 'pkgname': u'CSWautomake', + 'target_regex': u''}, + {'catalogname': u'awstats', + 'distfiles': u'awstats-6.9.tar.gz CSWawstats.postinstall ', + 'gar_regex': u'awstats-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWawstats', + 'target_regex': u'awstats-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'bacula', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWbacula', + 'target_regex': None}, + {'catalogname': u'bacula_client', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWbaculaclient', + 'target_regex': None}, + {'catalogname': u'bacula_docs', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWbaculadocs', + 'target_regex': None}, + {'catalogname': u'bacula_gnome', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWbaculagnome', + 'target_regex': None}, + {'catalogname': u'balance', + 'distfiles': u'balance-3.54.tar.gz ', + 'gar_regex': u'balance-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWbalance', + 'target_regex': u'balance-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'bash', + 'distfiles': u'bash-4.1.tar.gz changelog.CSW shells ', + 'gar_regex': u'bash-(\\d+\\.\\d+).tar.gz bash41-(\\d+)', + 'pkgname': u'CSWbash', + 'target_regex': u'bash-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'bash_completion', + 'distfiles': u'bash-completion-1.1.tar.gz pkg-get.completion pkgadd.completion pkgrm.completion pkgutil.completion smf.completion changelog.CSW ', + 'gar_regex': u'bash-completion-(\\d+).tar.gz', + 'pkgname': u'CSWbashcmplt', + 'target_regex': u'bash-completion-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'batik', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWbatik', + 'target_regex': None}, + {'catalogname': u'bbkeys', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWbbkeys', + 'target_regex': None}, + {'catalogname': u'bbpager', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWbbpager', + 'target_regex': None}, + {'catalogname': u'berkeleydb3', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWbdb3', + 'target_regex': None}, + {'catalogname': u'berkeleydb4', + 'distfiles': u'', + 'gar_regex': u'', + 'pkgname': u'CSWbdb4', + 'target_regex': u''}, + {'catalogname': u'berkeleydb43', + 'distfiles': u'db-4.3.29.tar.gz ', + 'gar_regex': u'db-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWbdb43', + 'target_regex': u'db-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'berkeleydb43_devel', + 'distfiles': u'db-4.3.29.tar.gz ', + 'gar_regex': u'db-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWbdb43-devel', + 'target_regex': u'db-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'berkeleydb43_doc', + 'distfiles': u'db-4.3.29.tar.gz ', + 'gar_regex': u'db-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWbdb43-doc', + 'target_regex': u'db-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'berkeleydb44', + 'distfiles': u'db-4.4.20.tar.gz ', + 'gar_regex': u'db-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWbdb44', + 'target_regex': u'db-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'berkeleydb44_devel', + 'distfiles': u'db-4.4.20.tar.gz ', + 'gar_regex': u'db-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWbdb44-devel', + 'target_regex': u'db-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'berkeleydb44_doc', + 'distfiles': u'db-4.4.20.tar.gz ', + 'gar_regex': u'db-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWbdb44-doc', + 'target_regex': u'db-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'berkeleydb4_doc', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWbdb4-doc', + 'target_regex': None}, + {'catalogname': u'bibtex2html', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWbibtex2html', + 'target_regex': None}, + {'catalogname': u'bind', + 'distfiles': u'bind-9.7.2-P3.tar.gz CSWbindchroot.postinstall ', + 'gar_regex': u'(\\d+(?:\\.\\d+)*)', + 'pkgname': u'CSWbind', + 'target_regex': u'(\\d+(?:\\.\\d+)*)'}, + {'catalogname': u'binutils', + 'distfiles': u'binutils-2.20.tar.bz2 ', + 'gar_regex': u'binutils-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWbinutils', + 'target_regex': u'binutils-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'bison', + 'distfiles': u'bison-2.4.3.tar.gz ', + 'gar_regex': u'bison-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWbison', + 'target_regex': u'bison-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'bittorrent', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWbittorrent', + 'target_regex': None}, + {'catalogname': u'blackbox', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWblackbox', + 'target_regex': None}, + {'catalogname': u'blt', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWblt', + 'target_regex': None}, + {'catalogname': u'bluefish', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWbluefish', + 'target_regex': None}, + {'catalogname': u'bmon', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWbmon', + 'target_regex': None}, + {'catalogname': u'bochs', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWbochs', + 'target_regex': None}, + {'catalogname': u'boost_devel', + 'distfiles': u'boost_1_45_0.tar.bz2 ', + 'gar_regex': u'(\\d+(?:\\.\\d+)*)', + 'pkgname': u'CSWboostdevel', + 'target_regex': u'(\\d+(?:\\.\\d+)*)'}, + {'catalogname': u'boost_rt', + 'distfiles': u'boost_1_45_0.tar.bz2 ', + 'gar_regex': u'(\\d+(?:\\.\\d+)*)', + 'pkgname': u'CSWboostrt', + 'target_regex': u'(\\d+(?:\\.\\d+)*)'}, + {'catalogname': u'bzflag', + 'distfiles': u'bzflag-2.0.16.tar.bz2 ', + 'gar_regex': u'bzflag-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWbzflag', + 'target_regex': u'bzflag-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'bzip2', + 'distfiles': u'bzip2-1.0.5.tar.gz ', + 'gar_regex': u'bzip2-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWbzip2', + 'target_regex': u'bzip2-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'cabextract', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWcabex', + 'target_regex': None}, + {'catalogname': u'cadaver', + 'distfiles': u'cadaver-0.23.3.tar.gz CSWcadav.prototype changelog.CSW ', + 'gar_regex': u'cadaver-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWcadav', + 'target_regex': u'cadaver-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'ccache', + 'distfiles': u'ccache-3.0pre1.tar.gz ', + 'gar_regex': u'ccache-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWccache', + 'target_regex': u'ccache-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'cdrdao', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWcdrdao', + 'target_regex': None}, + {'catalogname': u'cdrtools', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWcdrtools', + 'target_regex': None}, + {'catalogname': u'cfengine', + 'distfiles': u'cfengine-2.2.10.tar.gz ', + 'gar_regex': u'cfengine-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWcfengine', + 'target_regex': u'cfengine-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'cgilib', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWcgilib', + 'target_regex': None}, + {'catalogname': u'chkconfig', + 'distfiles': u'chkconfig-1.3.30c.tar.gz CSWalternatives.i.cswalternatives CSWalternatives.r.cswalternatives ', + 'gar_regex': u'chkconfig-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWchkconfig', + 'target_regex': u'chkconfig-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'chmlib', + 'distfiles': u'chmlib-0.40.tar.bz2 ', + 'gar_regex': u'chmlib-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWchmlib', + 'target_regex': u'chmlib-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'cinepaint', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWcinepaint', + 'target_regex': None}, + {'catalogname': u'cksfv', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWcksfv', + 'target_regex': None}, + {'catalogname': u'clamav', + 'distfiles': u'clamav-0.96.5.tar.gz ', + 'gar_regex': u'clamav-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWclamav', + 'target_regex': u'clamav-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'claws_htmlviewer', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWclaws-htmlviewer', + 'target_regex': None}, + {'catalogname': u'claws_mail', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWclaws-mail', + 'target_regex': None}, + {'catalogname': u'claws_mail_devel', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWclaws-mail-devel', + 'target_regex': None}, + {'catalogname': u'claws_pdfviewer', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWclaws-pdfviewer', + 'target_regex': None}, + {'catalogname': u'claws_themes', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWclaws-themes', + 'target_regex': None}, + {'catalogname': u'clearsilver', + 'distfiles': u'clearsilver-0.10.5.tar.gz ', + 'gar_regex': u'clearsilver-(\\d+(?:\\.\\d+)*)', + 'pkgname': u'CSWcs', + 'target_regex': u'clearsilver-(\\d+(?:\\.\\d+)*)'}, + {'catalogname': u'clex', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWclex', + 'target_regex': None}, + {'catalogname': u'cmake', + 'distfiles': u'cmake-2.8.2.tar.gz ', + 'gar_regex': u'(\\d+(?:\\.\\d+)*)', + 'pkgname': u'CSWcmake', + 'target_regex': u'(\\d+(?:\\.\\d+)*)'}, + {'catalogname': u'colordiff', + 'distfiles': u'colordiff-1.0.9.tar.gz ', + 'gar_regex': u'colordiff-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWcolordiff', + 'target_regex': u'colordiff-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'colorgcc', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWcolorgcc', + 'target_regex': None}, + {'catalogname': u'colormake', + 'distfiles': u'colormake-0.2.tar.gz ', + 'gar_regex': u'colormake-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWcolormake', + 'target_regex': u'colormake-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'column', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWcolumn', + 'target_regex': None}, + {'catalogname': u'common', + 'distfiles': u'common-1.4.6,REV=2008.04.28-SunOS5.8-sparc-CSW.pkg ', + 'gar_regex': u'(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWcommon', + 'target_regex': u'(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'commons_beanutils', + 'distfiles': u'commons-beanutils-1.8.2-bin.tar.gz ', + 'gar_regex': u'commons-commons-beanutils-(\\d+(?:\\.\\d+)*)-bin.tar.gz', + 'pkgname': u'CSWajcbeanutils', + 'target_regex': u'commons-commons-beanutils-(\\d+(?:\\.\\d+)*)-bin.tar.gz'}, + {'catalogname': u'commons_beanutl_doc', + 'distfiles': u'commons-beanutils-1.8.2-bin.tar.gz ', + 'gar_regex': u'commons-commons-beanutils-(\\d+(?:\\.\\d+)*)-bin.tar.gz', + 'pkgname': u'CSWajcbeanutilsdoc', + 'target_regex': u'commons-commons-beanutils-(\\d+(?:\\.\\d+)*)-bin.tar.gz'}, + {'catalogname': u'commons_chain', + 'distfiles': u'commons-chain-1.2-bin.tar.gz CSWajcchain.gspec CSWajcchaindoc.gspec ', + 'gar_regex': u'commons-commons-chain-(\\d+(?:\\.\\d+)*)-bin.tar.gz', + 'pkgname': u'CSWajcchain', + 'target_regex': u'commons-commons-chain-(\\d+(?:\\.\\d+)*)-bin.tar.gz'}, + {'catalogname': u'commons_chain_doc', + 'distfiles': u'commons-chain-1.2-bin.tar.gz CSWajcchain.gspec CSWajcchaindoc.gspec ', + 'gar_regex': u'commons-commons-chain-(\\d+(?:\\.\\d+)*)-bin.tar.gz', + 'pkgname': u'CSWajcchaindoc', + 'target_regex': u'commons-commons-chain-(\\d+(?:\\.\\d+)*)-bin.tar.gz'}, + {'catalogname': u'commons_cli', + 'distfiles': u'commons-cli-1.1.tar.gz CSWajccli.gspec CSWajcclidoc.gspec ', + 'gar_regex': u'commons-cli-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWajccli', + 'target_regex': u'commons-cli-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'commons_cli_doc', + 'distfiles': u'commons-cli-1.1.tar.gz CSWajccli.gspec CSWajcclidoc.gspec ', + 'gar_regex': u'commons-cli-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWajcclidoc', + 'target_regex': u'commons-cli-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'commons_codec', + 'distfiles': u'commons-codec-1.3.tar.gz CSWajccodec.gspec CSWajccodecdoc.gspec ', + 'gar_regex': u'commons-codec-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWajccodec', + 'target_regex': u'commons-codec-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'commons_codec_doc', + 'distfiles': u'commons-codec-1.3.tar.gz CSWajccodec.gspec CSWajccodecdoc.gspec ', + 'gar_regex': u'commons-codec-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWajccodecdoc', + 'target_regex': u'commons-codec-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'commons_collect', + 'distfiles': u'commons-collections-3.2.1-bin.tar.gz CSWajccollect.gspec CSWajccollectdoc.gspec ', + 'gar_regex': u'commons-commons-collections-(\\d+(?:\\.\\d+)*)-bin.tar.gz', + 'pkgname': u'CSWajccollect', + 'target_regex': u'commons-commons-collections-(\\d+(?:\\.\\d+)*)-bin.tar.gz'}, + {'catalogname': u'commons_collect_doc', + 'distfiles': u'commons-collections-3.2.1-bin.tar.gz CSWajccollect.gspec CSWajccollectdoc.gspec ', + 'gar_regex': u'commons-commons-collections-(\\d+(?:\\.\\d+)*)-bin.tar.gz', + 'pkgname': u'CSWajccollectdoc', + 'target_regex': u'commons-commons-collections-(\\d+(?:\\.\\d+)*)-bin.tar.gz'}, + {'catalogname': u'commons_config', + 'distfiles': u'commons-configuration-1.6.tar.gz CSWajcconfig.gspec CSWajcconfigdoc.gspec ', + 'gar_regex': u'commons-configuration-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWajcconfig', + 'target_regex': u'commons-configuration-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'commons_config_doc', + 'distfiles': u'commons-configuration-1.6.tar.gz CSWajcconfig.gspec CSWajcconfigdoc.gspec ', + 'gar_regex': u'commons-configuration-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWajcconfigdoc', + 'target_regex': u'commons-configuration-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'commons_digester', + 'distfiles': u'commons-digester-2.0-bin.tar.gz CSWajcdigester.gspec CSWajcdigesterdoc.gspec ', + 'gar_regex': u'commons-digester-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz', + 'pkgname': u'CSWajcdigester', + 'target_regex': u'commons-digester-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz'}, + {'catalogname': u'commons_digester_doc', + 'distfiles': u'commons-digester-2.0-bin.tar.gz CSWajcdigester.gspec CSWajcdigesterdoc.gspec ', + 'gar_regex': u'commons-digester-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz', + 'pkgname': u'CSWajcdigesterdoc', + 'target_regex': u'commons-digester-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz'}, + {'catalogname': u'commons_disco_doc', + 'distfiles': u'commons-discovery-0.4.tar.gz CSWajcdiscovery.gspec CSWajcdiscoverydoc.gspec ', + 'gar_regex': u'commons-discovery-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz', + 'pkgname': u'CSWajcdiscoverydoc', + 'target_regex': u'commons-discovery-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz'}, + {'catalogname': u'commons_discovery', + 'distfiles': u'commons-discovery-0.4.tar.gz CSWajcdiscovery.gspec CSWajcdiscoverydoc.gspec ', + 'gar_regex': u'commons-discovery-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz', + 'pkgname': u'CSWajcdiscovery', + 'target_regex': u'commons-discovery-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz'}, + {'catalogname': u'commons_email', + 'distfiles': u'commons-email-1.1-bin.tar.gz CSWajcemail.gspec CSWajcemaildoc.gspec ', + 'gar_regex': u'commons-email-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz', + 'pkgname': u'CSWajcemail', + 'target_regex': u'commons-email-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz'}, + {'catalogname': u'commons_email_doc', + 'distfiles': u'commons-email-1.1-bin.tar.gz CSWajcemail.gspec CSWajcemaildoc.gspec ', + 'gar_regex': u'commons-email-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz', + 'pkgname': u'CSWajcemaildoc', + 'target_regex': u'commons-email-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz'}, + {'catalogname': u'commons_httpcl_doc', + 'distfiles': u'commons-httpclient-3.1.tar.gz CSWajchttpclient.gspec CSWajchttpcldoc.gspec ', + 'gar_regex': u'commons-httpclient-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz', + 'pkgname': u'CSWajchttpcldoc', + 'target_regex': u'commons-httpclient-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz'}, + {'catalogname': u'commons_httpclient', + 'distfiles': u'commons-httpclient-3.1.tar.gz CSWajchttpclient.gspec CSWajchttpcldoc.gspec ', + 'gar_regex': u'commons-httpclient-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz', + 'pkgname': u'CSWajchttpclient', + 'target_regex': u'commons-httpclient-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz'}, + {'catalogname': u'commons_io', + 'distfiles': u'commons-io-1.4-bin.tar.gz CSWajcio.gspec CSWajciodoc.gspec ', + 'gar_regex': u'commons-io-(\\d+(?:\\.\\d+)*)(?:-bin*).tar.gz', + 'pkgname': u'CSWajcio', + 'target_regex': u'commons-io-(\\d+(?:\\.\\d+)*)(?:-bin*).tar.gz'}, + {'catalogname': u'commons_io_doc', + 'distfiles': u'commons-io-1.4-bin.tar.gz CSWajcio.gspec CSWajciodoc.gspec ', + 'gar_regex': u'commons-io-(\\d+(?:\\.\\d+)*)(?:-bin*).tar.gz', + 'pkgname': u'CSWajciodoc', + 'target_regex': u'commons-io-(\\d+(?:\\.\\d+)*)(?:-bin*).tar.gz'}, + {'catalogname': u'commons_lang', + 'distfiles': u'commons-lang-2.4-bin.tar.gz CSWajclang.gspec CSWajclangdoc.gspec ', + 'gar_regex': u'commons-lang-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz', + 'pkgname': u'CSWajclang', + 'target_regex': u'commons-lang-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz'}, + {'catalogname': u'commons_lang_doc', + 'distfiles': u'commons-lang-2.4-bin.tar.gz CSWajclang.gspec CSWajclangdoc.gspec ', + 'gar_regex': u'commons-lang-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz', + 'pkgname': u'CSWajclangdoc', + 'target_regex': u'commons-lang-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz'}, + {'catalogname': u'commons_logging', + 'distfiles': u'commons-logging-1.1.1-bin.tar.gz CSWajclogging.gspec CSWajcloggingdoc.gspec ', + 'gar_regex': u'commons-logging-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz', + 'pkgname': u'CSWajclogging', + 'target_regex': u'commons-logging-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz'}, + {'catalogname': u'commons_logging_doc', + 'distfiles': u'commons-logging-1.1.1-bin.tar.gz CSWajclogging.gspec CSWajcloggingdoc.gspec ', + 'gar_regex': u'commons-logging-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz', + 'pkgname': u'CSWajcloggingdoc', + 'target_regex': u'commons-logging-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz'}, + {'catalogname': u'commons_math', + 'distfiles': u'commons-math-1.2.tar.gz CSWajcmath.gspec CSWajcmathdoc.gspec ', + 'gar_regex': u'commons-math-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz', + 'pkgname': u'CSWajcmath', + 'target_regex': u'commons-math-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz'}, + {'catalogname': u'commons_math_doc', + 'distfiles': u'commons-math-1.2.tar.gz CSWajcmath.gspec CSWajcmathdoc.gspec ', + 'gar_regex': u'commons-math-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz', + 'pkgname': u'CSWajcmathdoc', + 'target_regex': u'commons-math-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz'}, + {'catalogname': u'commons_net', + 'distfiles': u'commons-net-2.0.tar.gz CSWajcnet.gspec CSWajcnetdoc.gspec ', + 'gar_regex': u'commons-net-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz', + 'pkgname': u'CSWajcnet', + 'target_regex': u'commons-net-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz'}, + {'catalogname': u'commons_net_doc', + 'distfiles': u'commons-net-2.0.tar.gz CSWajcnet.gspec CSWajcnetdoc.gspec ', + 'gar_regex': u'commons-net-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz', + 'pkgname': u'CSWajcnetdoc', + 'target_regex': u'commons-net-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz'}, + {'catalogname': u'commons_pool', + 'distfiles': u'commons-pool-1.5-bin.tar.gz ', + 'gar_regex': u'commons-pool-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz', + 'pkgname': u'CSWajcpool', + 'target_regex': u'commons-pool-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz'}, + {'catalogname': u'commons_pool_doc', + 'distfiles': u'commons-pool-1.5-bin.tar.gz ', + 'gar_regex': u'commons-pool-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz', + 'pkgname': u'CSWajcpooldoc', + 'target_regex': u'commons-pool-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz'}, + {'catalogname': u'commons_primit_doc', + 'distfiles': u'commons-primitives-1.0.tar.gz CSWajcprimitives.gspec CSWajcprimitivesdoc.gspec ', + 'gar_regex': u'commons-primitives-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWajcprimitivesdoc', + 'target_regex': u'commons-primitives-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'commons_primitives', + 'distfiles': u'commons-primitives-1.0.tar.gz CSWajcprimitives.gspec CSWajcprimitivesdoc.gspec ', + 'gar_regex': u'commons-primitives-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWajcprimitives', + 'target_regex': u'commons-primitives-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'commons_upload', + 'distfiles': u'commons-fileupload-1.2.1-bin.tar.gz CSWajcupload.gspec CSWajcuploaddoc.gspec ', + 'gar_regex': u'commons-fileupload-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz', + 'pkgname': u'CSWajcpeupload', + 'target_regex': u'commons-fileupload-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz'}, + {'catalogname': u'commons_upload_doc', + 'distfiles': u'commons-fileupload-1.2.1-bin.tar.gz CSWajcupload.gspec CSWajcuploaddoc.gspec ', + 'gar_regex': u'commons-fileupload-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz', + 'pkgname': u'CSWajcuploaddoc', + 'target_regex': u'commons-fileupload-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz'}, + {'catalogname': u'commons_validat_doc', + 'distfiles': u'commons-validator-1.3.1.tar.gz CSWajcvalidator.gspec CSWajcvalidatordoc.gspec ', + 'gar_regex': u'commons-validator-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz', + 'pkgname': u'CSWajcvalidatordoc', + 'target_regex': u'commons-validator-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz'}, + {'catalogname': u'commons_validator', + 'distfiles': u'commons-validator-1.3.1.tar.gz CSWajcvalidator.gspec CSWajcvalidatordoc.gspec ', + 'gar_regex': u'commons-validator-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz', + 'pkgname': u'CSWajcvalidator', + 'target_regex': u'commons-validator-(\\d+(?:\\.\\d+)*)(-bin*).tar.gz'}, + {'catalogname': u'conserver', + 'distfiles': u'conserver-8.1.7.tar.gz cswconserver ', + 'gar_regex': u'conserver-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWconserver', + 'target_regex': u'conserver-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'courier_auth', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWcourierauth', + 'target_regex': None}, + {'catalogname': u'courier_imap', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWcourierimap', + 'target_regex': None}, + {'catalogname': u'criticalmass', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWcriticalmass', + 'target_regex': None}, + {'catalogname': u'cronolog', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWcronolog', + 'target_regex': None}, + {'catalogname': u'cryptopp', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWcryptopp', + 'target_regex': None}, + {'catalogname': u'cscope', + 'distfiles': u'cscope-15.7a.tar.bz2 ', + 'gar_regex': u'cscope-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWcscope', + 'target_regex': u'cscope-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'csnobol4', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWcsnobol4', + 'target_regex': None}, + {'catalogname': u'cswutils', + 'distfiles': u'COPYING checkpkg checkpkg.8 cpan2pkg createpkg createpkg.8 stagepkg stagepkg.8 stagepkg stagepkg.8 catalog.py checkpkg.py checkpkg2.py checkpkg_lib.py common_constants.py compare_pkgs.py configuration.py database.py dependency_checks.py inspective_package.py ldd_emul.py models.py mute_progressbar.py opencsw.py overrides.py package.py package_checks.py package_stats.py pkgdb.py pkgmap.py pylintrc sharedlib_utils.py shell.py struct_util.py submit_to_newpkgs.py system_pkgmap.py tag.py ', + 'gar_regex': u'', + 'pkgname': u'CSWcswutils', + 'target_regex': u''}, + {'catalogname': u'cups', + 'distfiles': u'cups-1.4.5-source.tar.bz2 CSWcupsclient.preinstall CSWcupsd.preinstall CSWcupsd.postremove client.conf.CSW ', + 'gar_regex': u'cups-(\\d+(?:\\.\\d+)*)-source.tar.bz2', + 'pkgname': u'CSWcups', + 'target_regex': u'cups-(\\d+(?:\\.\\d+)*)-source.tar.bz2'}, + {'catalogname': u'cupsclient', + 'distfiles': u'cups-1.4.5-source.tar.bz2 CSWcupsclient.preinstall CSWcupsd.preinstall CSWcupsd.postremove client.conf.CSW ', + 'gar_regex': u'cups-(\\d+(?:\\.\\d+)*)-source.tar.bz2', + 'pkgname': u'CSWcupsclient', + 'target_regex': u'cups-(\\d+(?:\\.\\d+)*)-source.tar.bz2'}, + {'catalogname': u'cupsd', + 'distfiles': u'cups-1.4.5-source.tar.bz2 CSWcupsclient.preinstall CSWcupsd.preinstall CSWcupsd.postremove client.conf.CSW ', + 'gar_regex': u'cups-(\\d+(?:\\.\\d+)*)-source.tar.bz2', + 'pkgname': u'CSWcupsd', + 'target_regex': u'cups-(\\d+(?:\\.\\d+)*)-source.tar.bz2'}, + {'catalogname': u'cupsdev', + 'distfiles': u'cups-1.4.5-source.tar.bz2 CSWcupsclient.preinstall CSWcupsd.preinstall CSWcupsd.postremove client.conf.CSW ', + 'gar_regex': u'cups-(\\d+(?:\\.\\d+)*)-source.tar.bz2', + 'pkgname': u'CSWcupsdev', + 'target_regex': u'cups-(\\d+(?:\\.\\d+)*)-source.tar.bz2'}, + {'catalogname': u'cupsdoc', + 'distfiles': u'cups-1.4.5-source.tar.bz2 CSWcupsclient.preinstall CSWcupsd.preinstall CSWcupsd.postremove client.conf.CSW ', + 'gar_regex': u'cups-(\\d+(?:\\.\\d+)*)-source.tar.bz2', + 'pkgname': u'CSWcupsdoc', + 'target_regex': u'cups-(\\d+(?:\\.\\d+)*)-source.tar.bz2'}, + {'catalogname': u'curl', + 'distfiles': u'curl-7.21.2.tar.bz2 libcurl.so.3.0.0.s libcurl.so.2.0.2.s libcurl.so.3.0.0.i libcurl.so.2.0.2.i curlbuild.h ', + 'gar_regex': u'curl-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWcurl', + 'target_regex': u'curl-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'curlrt', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWcurlrt', + 'target_regex': None}, + {'catalogname': u'cvs', + 'distfiles': u'cvs-1.12.13.tar.bz2 ', + 'gar_regex': u'(\\d+(?:\\.\\d+)*)', + 'pkgname': u'CSWcvs', + 'target_regex': u'(\\d+(?:\\.\\d+)*)'}, + {'catalogname': u'cvs_feature', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWcvs-feature', + 'target_regex': None}, + {'catalogname': u'cyrus_imapd', + 'distfiles': u'cyrus-imapd-2.3.16.tar.gz CSWcyrusimapd.preinstall CSWcyrusimapd.checkinstall cyrus_imapd.changelog.CSW README.CSW services cswcyrus cswcyrus.xml imapd.conf cyrus.conf cyrus_imapd_utils.changelog.CSW pm_cyrus.changelog.CSW compile_et et_c.awk et_h.awk install-upgrade ', + 'gar_regex': u'cyrus-imapd-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWcyrusimapd', + 'target_regex': u'cyrus-imapd-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'cyrus_imapd_utils', + 'distfiles': u'cyrus-imapd-2.3.16.tar.gz CSWcyrusimapd.preinstall CSWcyrusimapd.checkinstall cyrus_imapd.changelog.CSW README.CSW services cswcyrus cswcyrus.xml imapd.conf cyrus.conf cyrus_imapd_utils.changelog.CSW pm_cyrus.changelog.CSW compile_et et_c.awk et_h.awk install-upgrade ', + 'gar_regex': u'cyrus-imapd-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWcyrusimapdutils', + 'target_regex': u'cyrus-imapd-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'daemontools', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWdaemontools', + 'target_regex': None}, + {'catalogname': u'daemontools_core', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWdaemontools-core', + 'target_regex': None}, + {'catalogname': u'dante', + 'distfiles': u'dante-1.2.1.tar.gz ', + 'gar_regex': u'dante-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWdante', + 'target_regex': u'dante-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'dbh', + 'distfiles': u'dbh-1.0.24.tar.gz dbh-1.0.24.tar.gz\t ', + 'gar_regex': u'dbh-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWdbh', + 'target_regex': u'dbh-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'dbus', + 'distfiles': u'dbus-1.3.1.tar.gz CSWdbus.preinstall cswdbus ', + 'gar_regex': u'dbus-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWdbus', + 'target_regex': u'dbus-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'dbus_glib', + 'distfiles': u'dbus-glib-0.86.tar.gz ', + 'gar_regex': u'dbus-glib-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWdbusglib', + 'target_regex': u'dbus-glib-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'dbus_glibdev', + 'distfiles': u'dbus-glib-0.86.tar.gz ', + 'gar_regex': u'dbus-glib-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWdbusglibdev', + 'target_regex': u'dbus-glib-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'dcc', + 'distfiles': u'dcc-1.3.127.tar.Z ', + 'gar_regex': u'dcc-(\\d+(?:\\.\\d+)*).tar.Z', + 'pkgname': u'CSWdcc', + 'target_regex': u'dcc-(\\d+(?:\\.\\d+)*).tar.Z'}, + {'catalogname': u'dcraw', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWdcraw', + 'target_regex': None}, + {'catalogname': u'ddd', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWddd', + 'target_regex': None}, + {'catalogname': u'dejagnu', + 'distfiles': u'dejagnu-1.4.4.tar.gz ', + 'gar_regex': u'dejagnu-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWdejagnu', + 'target_regex': u'dejagnu-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'desktop_file_utils', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWdskutl', + 'target_regex': None}, + {'catalogname': u'devmon', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWdevmon', + 'target_regex': None}, + {'catalogname': u'dhcp', + 'distfiles': u'dhcp-4.2.0-P2.tar.gz ', + 'gar_regex': u'(dhcp-\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWdhcp', + 'target_regex': u'(dhcp-\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'dia', + 'distfiles': u'dia-0.97.tar.bz2 ', + 'gar_regex': u'dia-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWdia', + 'target_regex': u'dia-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'dialog', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWdialog', + 'target_regex': None}, + {'catalogname': u'dict', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWdict', + 'target_regex': None}, + {'catalogname': u'diffstat', + 'distfiles': u'diffstat-1.54.tgz ', + 'gar_regex': u'diffstat-(\\d+(?:\\.\\d+)*).tgz', + 'pkgname': u'CSWdiffstat', + 'target_regex': u'diffstat-(\\d+(?:\\.\\d+)*).tgz'}, + {'catalogname': u'diffutils', + 'distfiles': u'diffutils-3.0.tar.gz ', + 'gar_regex': u'diffutils-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWdiffutils', + 'target_regex': u'diffutils-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'dillo', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWdillo', + 'target_regex': None}, + {'catalogname': u'dirvish', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWdirvish', + 'target_regex': None}, + {'catalogname': u'disktype', + 'distfiles': u'disktype-9.tar.gz disktype.1 ', + 'gar_regex': u'disktype-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWdisktype', + 'target_regex': u'disktype-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'distcc', + 'distfiles': u'distcc-3.1.tar.bz2 ', + 'gar_regex': u'distcc-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWdistcc', + 'target_regex': u'distcc-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'djvulibre', + 'distfiles': u'djvulibre-3.5.22.tar.gz ', + 'gar_regex': u'(\\d+(?:\\.\\d+)*)', + 'pkgname': u'CSWdjvulibre', + 'target_regex': u'(\\d+(?:\\.\\d+)*)'}, + {'catalogname': u'dnstracer', + 'distfiles': u'dnstracer-1.9.tar.gz ', + 'gar_regex': u'dnstracer-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWdnstracer', + 'target_regex': u'dnstracer-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'dnswalk', + 'distfiles': u'dnswalk-2.0.2.tar.gz COPYING ', + 'gar_regex': u'dnswalk-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWdnswalk', + 'target_regex': u'dnswalk-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'dotproject', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWdotproject', + 'target_regex': None}, + {'catalogname': u'dovecot', + 'distfiles': u'dovecot-1.2.16.tar.gz ', + 'gar_regex': u'dovecot-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWdovecot', + 'target_regex': u'dovecot-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'dovecot_devel', + 'distfiles': u'dovecot-1.2.16.tar.gz ', + 'gar_regex': u'dovecot-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWdovecot-devel', + 'target_regex': u'dovecot-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'dovecot_sieve', + 'distfiles': u'dovecot-1.2.16.tar.gz ', + 'gar_regex': u'dovecot-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWdovecot-sieve', + 'target_regex': u'dovecot-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'doxygen', + 'distfiles': u'doxygen-1.7.3.src.tar.gz ', + 'gar_regex': u'doxygen-(\\d+(?:\\.\\d+)*).src.tar.gz', + 'pkgname': u'CSWdoxygen', + 'target_regex': u'doxygen-(\\d+(?:\\.\\d+)*).src.tar.gz'}, + {'catalogname': u'driftnet', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWdriftnet', + 'target_regex': None}, + {'catalogname': u'drupal', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWdrupal', + 'target_regex': None}, + {'catalogname': u'dsniff', + 'distfiles': u'dsniff-2.4b1.tar.gz ', + 'gar_regex': u'dsniff-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWdsniff', + 'target_regex': u'dsniff-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'easytag', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWeasytag', + 'target_regex': None}, + {'catalogname': u'eclipse', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWeclipse', + 'target_regex': None}, + {'catalogname': u'ectags', + 'distfiles': u'ctags-5.8.tar.gz ', + 'gar_regex': u'(\\d+(?:\\.\\d+)*)', + 'pkgname': u'CSWectags', + 'target_regex': u'(\\d+(?:\\.\\d+)*)'}, + {'catalogname': u'eel', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWeel', + 'target_regex': None}, + {'catalogname': u'efence', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWefence', + 'target_regex': None}, + {'catalogname': u'elinks', + 'distfiles': u'elinks-0.11.7.tar.bz2 CSWelinks.prototype changelog.CSW ', + 'gar_regex': u'elinks-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWelinks', + 'target_regex': u'elinks-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'emacs', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWemacs', + 'target_regex': None}, + {'catalogname': u'emacs_bin_common', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWemacsbincommon', + 'target_regex': None}, + {'catalogname': u'emacs_chooser', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWemacschooser', + 'target_regex': None}, + {'catalogname': u'emacs_common', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWemacscommon', + 'target_regex': None}, + {'catalogname': u'emacs_el', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWemacsel', + 'target_regex': None}, + {'catalogname': u'emacs_gtk', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWemacsgtk', + 'target_regex': None}, + {'catalogname': u'emacs_nox', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWemacsnox', + 'target_regex': None}, + {'catalogname': u'emacs_template', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWemacstemplate', + 'target_regex': None}, + {'catalogname': u'emacscalc', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWemacscalc', + 'target_regex': None}, + {'catalogname': u'enigma', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWenigma', + 'target_regex': None}, + {'catalogname': u'enlightenment', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWenlightenment', + 'target_regex': None}, + {'catalogname': u'enlightenment_dt', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWenlightenment-dt', + 'target_regex': None}, + {'catalogname': u'enscript', + 'distfiles': u'enscript-1.6.4.tar.gz ', + 'gar_regex': u'enscript-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWenscript', + 'target_regex': u'enscript-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'epstool', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWepstool', + 'target_regex': None}, + {'catalogname': u'eruby', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWeruby', + 'target_regex': None}, + {'catalogname': u'esound', + 'distfiles': u'esound-0.2.41.tar.bz2 ', + 'gar_regex': u'esound-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWesound', + 'target_regex': u'esound-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'espgs', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWespgs', + 'target_regex': None}, + {'catalogname': u'eventlog', + 'distfiles': u'eventlog_0.2.9.tar.gz ', + 'gar_regex': u'eventlog-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWeventlog', + 'target_regex': u'eventlog-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'evince', + 'distfiles': u'evince-2.24.2.tar.gz ', + 'gar_regex': u'evince-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWevince', + 'target_regex': u'evince-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'evolution_ds', + 'distfiles': u'evolution-data-server-2.28.2.tar.bz2 ', + 'gar_regex': u'evolution-data-server-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWevolution-ds', + 'target_regex': u'evolution-data-server-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'exiftool', + 'distfiles': u'Image-ExifTool-8.31.tar.gz COPYING ', + 'gar_regex': u'Image-ExifTool-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWexiftool', + 'target_regex': u'Image-ExifTool-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'exim', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWexim', + 'target_regex': None}, + {'catalogname': u'exmh', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWexmh', + 'target_regex': None}, + {'catalogname': u'expat', + 'distfiles': u' expat-1.95.8.tar.gz expat-2.0.1.tar.gz CSWexpat.gspec ', + 'gar_regex': u'(\\d+(?:\\.\\d+)*)', + 'pkgname': u'CSWexpat', + 'target_regex': u'(\\d+(?:\\.\\d+)*)'}, + {'catalogname': u'expect', + 'distfiles': u'expect.tar.gz expect.m4 license ', + 'gar_regex': u'expect-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWexpect', + 'target_regex': u'expect-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'faad2', + 'distfiles': u'faad2-2.7.tar.bz2 ', + 'gar_regex': u'faac-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWfaad2', + 'target_regex': u'faac-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'facter', + 'distfiles': u'facter-1.5.7.tar.gz ', + 'gar_regex': u'facter-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWfacter', + 'target_regex': u'facter-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'fakeroot', + 'distfiles': u'fakeroot_1.12.4.tar.gz ', + 'gar_regex': u'fakeroot-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWfakeroot', + 'target_regex': u'fakeroot-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'fam', + 'distfiles': u'fam-2.7.0.tar.gz ', + 'gar_regex': u'fam-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWfam', + 'target_regex': u'fam-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'fetchmail', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWfetchmail', + 'target_regex': None}, + {'catalogname': u'fetchmailconf', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWfetchmailconf', + 'target_regex': None}, + {'catalogname': u'ffmpeg', + 'distfiles': u'ffmpeg-0.5.tar.bz2 ', + 'gar_regex': u'ffmpeg-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWffmpeg', + 'target_regex': u'ffmpeg-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'fftw2', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWfftw2', + 'target_regex': None}, + {'catalogname': u'ficy', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWficy', + 'target_regex': None}, + {'catalogname': u'figlet', + 'distfiles': u'figlet222.tar.gz contributed.tar.gz international.tar.gz ms-dos.tar.gz ', + 'gar_regex': u'figlet(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWfiglet', + 'target_regex': u'figlet(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'fileutils', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgfile', + 'target_regex': None}, + {'catalogname': u'filter', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWfilter', + 'target_regex': None}, + {'catalogname': u'findutils', + 'distfiles': u'findutils-4.4.2.tar.gz CSWfindutils.postinstall ', + 'gar_regex': u'findutils-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWfindutils', + 'target_regex': u'findutils-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'firefox', + 'distfiles': u'firefox-3.0.18-source.tar.bz2 CSWfirefox.postremove CSWfirefox.postinstall autoconf.mk.diff firefox.diff firefox.dist.bin.diff ', + 'gar_regex': u'"(\\d+(?:\\.\\d+)*)/', + 'pkgname': u'CSWfirefox', + 'target_regex': u'"(\\d+(?:\\.\\d+)*)/'}, + {'catalogname': u'firefox_fr', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWfirefox-fr', + 'target_regex': None}, + {'catalogname': u'flex', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWflex', + 'target_regex': None}, + {'catalogname': u'flex_new', + 'distfiles': u'flex-2.5.35.tar.bz2 ', + 'gar_regex': u'', + 'pkgname': u'CSWflex-new', + 'target_regex': u''}, + {'catalogname': u'flightgear', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWflightgear', + 'target_regex': None}, + {'catalogname': u'flightgear_base', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWflightgearbase', + 'target_regex': None}, + {'catalogname': u'flowtools', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWflowtools', + 'target_regex': None}, + {'catalogname': u'flphoto', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWflphoto', + 'target_regex': None}, + {'catalogname': u'fltk', + 'distfiles': u'fltk-1.1.10-source.tar.gz ', + 'gar_regex': u'fltk-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWfltk', + 'target_regex': u'fltk-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'fluxbox', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWfluxbox', + 'target_regex': None}, + {'catalogname': u'fluxbox_dtlogin', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWfluxbox-dtlogin', + 'target_regex': None}, + {'catalogname': u'fnlib', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWfnlib', + 'target_regex': None}, + {'catalogname': u'fontconfig', + 'distfiles': u'fontconfig-2.8.0.tar.gz CSWfconfig.postinstall ', + 'gar_regex': u'fontconfig-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWfconfig', + 'target_regex': u'fontconfig-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'foremost', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWforemost', + 'target_regex': None}, + {'catalogname': u'fortune', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWfortune', + 'target_regex': None}, + {'catalogname': u'fox', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWfox', + 'target_regex': None}, + {'catalogname': u'foxrt', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWfoxrt', + 'target_regex': None}, + {'catalogname': u'fping', + 'distfiles': u'fping.tar.gz ', + 'gar_regex': u'', + 'pkgname': u'CSWfping', + 'target_regex': u''}, + {'catalogname': u'fprobe', + 'distfiles': u'fprobe-1.1.tar.bz2 ', + 'gar_regex': u'fprobe-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWfprobe', + 'target_regex': u'fprobe-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'freeciv', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWfreeciv', + 'target_regex': None}, + {'catalogname': u'freeglut', + 'distfiles': u'freeglut-2.6.0.tar.gz ', + 'gar_regex': u'freeglut-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWfreeglut', + 'target_regex': u'freeglut-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'freetds', + 'distfiles': u'freetds-0.82.tar.gz ', + 'gar_regex': u'freetds-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWfreetds', + 'target_regex': u'freetds-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'freetds_doc', + 'distfiles': u'freetds-0.82.tar.gz ', + 'gar_regex': u'freetds-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWfreetdsdoc', + 'target_regex': u'freetds-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'freetype', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWfreetype', + 'target_regex': None}, + {'catalogname': u'freetype2', + 'distfiles': u'freetype-2.4.2.tar.bz2 ', + 'gar_regex': u'(\\d+(?:\\.\\d+)*)', + 'pkgname': u'CSWftype2', + 'target_regex': u'(\\d+(?:\\.\\d+)*)'}, + {'catalogname': u'fribidi', + 'distfiles': u'fribidi-0.19.2.tar.gz ', + 'gar_regex': u'fribidi-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWfribidi', + 'target_regex': u'fribidi-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'fvwm', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWfvwm', + 'target_regex': None}, + {'catalogname': u'fwbuilder', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWfwbuilder', + 'target_regex': None}, + {'catalogname': u'gadu', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWlibgadu', + 'target_regex': None}, + {'catalogname': u'gail', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgail', + 'target_regex': None}, + {'catalogname': u'gal', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgal', + 'target_regex': None}, + {'catalogname': u'gal2', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgal2', + 'target_regex': None}, + {'catalogname': u'gawk', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgawk', + 'target_regex': None}, + {'catalogname': u'gbc', + 'distfiles': u'bc-1.06.tar.gz ', + 'gar_regex': u'bc-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWgbc', + 'target_regex': u'bc-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'gcalctool', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcalctool', + 'target_regex': None}, + {'catalogname': u'gcc2', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc2', + 'target_regex': None}, + {'catalogname': u'gcc2chill', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc2chill', + 'target_regex': None}, + {'catalogname': u'gcc2chillrt', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc2chillrt', + 'target_regex': None}, + {'catalogname': u'gcc2core', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc2core', + 'target_regex': None}, + {'catalogname': u'gcc2corert', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc2corert', + 'target_regex': None}, + {'catalogname': u'gcc2g++', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc2g++', + 'target_regex': None}, + {'catalogname': u'gcc2g++rt', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc2g++rt', + 'target_regex': None}, + {'catalogname': u'gcc2g77', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc2g77', + 'target_regex': None}, + {'catalogname': u'gcc2g77rt', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc2g77rt', + 'target_regex': None}, + {'catalogname': u'gcc2java', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc2java', + 'target_regex': None}, + {'catalogname': u'gcc2javart', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc2javart', + 'target_regex': None}, + {'catalogname': u'gcc2objc', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc2objc', + 'target_regex': None}, + {'catalogname': u'gcc2objcrt', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc2objcrt', + 'target_regex': None}, + {'catalogname': u'gcc2rt', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc2rt', + 'target_regex': None}, + {'catalogname': u'gcc3', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc3', + 'target_regex': None}, + {'catalogname': u'gcc3ada', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc3ada', + 'target_regex': None}, + {'catalogname': u'gcc3adart', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc3adart', + 'target_regex': None}, + {'catalogname': u'gcc3core', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc3core', + 'target_regex': None}, + {'catalogname': u'gcc3corert', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc3corert', + 'target_regex': None}, + {'catalogname': u'gcc3g++', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc3g++', + 'target_regex': None}, + {'catalogname': u'gcc3g++rt', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc3g++rt', + 'target_regex': None}, + {'catalogname': u'gcc3g77', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc3g77', + 'target_regex': None}, + {'catalogname': u'gcc3g77rt', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc3g77rt', + 'target_regex': None}, + {'catalogname': u'gcc3java', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc3java', + 'target_regex': None}, + {'catalogname': u'gcc3javart', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc3javart', + 'target_regex': None}, + {'catalogname': u'gcc3objc', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc3objc', + 'target_regex': None}, + {'catalogname': u'gcc3objcrt', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc3objcrt', + 'target_regex': None}, + {'catalogname': u'gcc3rt', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc3rt', + 'target_regex': None}, + {'catalogname': u'gcc4ada', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc4ada', + 'target_regex': None}, + {'catalogname': u'gcc4adart', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc4adart', + 'target_regex': None}, + {'catalogname': u'gcc4core', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc4core', + 'target_regex': None}, + {'catalogname': u'gcc4corert', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc4corert', + 'target_regex': None}, + {'catalogname': u'gcc4g++', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc4g++', + 'target_regex': None}, + {'catalogname': u'gcc4g++rt', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc4g++rt', + 'target_regex': None}, + {'catalogname': u'gcc4g95', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc4g95', + 'target_regex': None}, + {'catalogname': u'gcc4g95rt', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc4g95rt', + 'target_regex': None}, + {'catalogname': u'gcc4java', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc4java', + 'target_regex': None}, + {'catalogname': u'gcc4javart', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc4javart', + 'target_regex': None}, + {'catalogname': u'gcc4objc', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc4objc', + 'target_regex': None}, + {'catalogname': u'gcc4objcrt', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgcc4objcrt', + 'target_regex': None}, + {'catalogname': u'gconf2', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgconf2', + 'target_regex': None}, + {'catalogname': u'gd', + 'distfiles': u'gd-2.0.35.tar.bz2 ', + 'gar_regex': u'gd-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWgd', + 'target_regex': u'gd-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'gdb', + 'distfiles': u'gdb-6.8.tar.bz2 ', + 'gar_regex': u'gdb-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWgdb', + 'target_regex': u'gdb-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'gdbm', + 'distfiles': u'gdbm-1.8.3.tar.gz ', + 'gar_regex': u'gdbm-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWgdbm', + 'target_regex': u'gdbm-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'gdk_pixbuf', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgdkpixbuf', + 'target_regex': None}, + {'catalogname': u'gdm', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgdm', + 'target_regex': None}, + {'catalogname': u'gdome2', + 'distfiles': u'gdome2-0.8.1.tar.gz ', + 'gar_regex': u'gdome2-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWgdome2', + 'target_regex': u'gdome2-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'gedit', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgedit', + 'target_regex': None}, + {'catalogname': u'gengetopt', + 'distfiles': u'gengetopt-2.22.4.tar.gz ', + 'gar_regex': u'gengetopt-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWgengetopt', + 'target_regex': u'gengetopt-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'geos', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgeos', + 'target_regex': None}, + {'catalogname': u'gftp', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgftp', + 'target_regex': None}, + {'catalogname': u'ggetopt', + 'distfiles': u'getopt-1.1.4.tar.gz ', + 'gar_regex': u'getopt-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWggetopt', + 'target_regex': u'getopt-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'ggettext', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWggettext', + 'target_regex': None}, + {'catalogname': u'ggettextdoc', + 'distfiles': u'gettext-0.18.1.1.tar.gz ', + 'gar_regex': u'gettext-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWggettextdoc', + 'target_regex': u'gettext-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'ggrep', + 'distfiles': u'grep-2.7.tar.xz ', + 'gar_regex': u'grep-(\\d+(?:\\.\\d+)*).tar.xz', + 'pkgname': u'CSWggrep', + 'target_regex': u'grep-(\\d+(?:\\.\\d+)*).tar.xz'}, + {'catalogname': u'ggv', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWggv', + 'target_regex': None}, + {'catalogname': u'ghex', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWghex', + 'target_regex': None}, + {'catalogname': u'ghostscript', + 'distfiles': u'ghostscript-8.70.tar.bz2 ', + 'gar_regex': u'(\\d+(?:\\.\\d+)*)', + 'pkgname': u'CSWgs', + 'target_regex': u'(\\d+(?:\\.\\d+)*)'}, + {'catalogname': u'gifsicle', + 'distfiles': u'gifsicle-1.59.tar.gz ', + 'gar_regex': u'gifsicle-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWgifsicle', + 'target_regex': u'gifsicle-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'gimp', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgimp', + 'target_regex': None}, + {'catalogname': u'gimp_extras', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgimpextras', + 'target_regex': None}, + {'catalogname': u'gimp_help', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgimphelp', + 'target_regex': None}, + {'catalogname': u'gimp_template', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgimptemplate', + 'target_regex': None}, + {'catalogname': u'gimplibs', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgimplibs', + 'target_regex': None}, + {'catalogname': u'gimpprint', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgimpprint', + 'target_regex': None}, + {'catalogname': u'gkermit', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgkermit', + 'target_regex': None}, + {'catalogname': u'gkrellm', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgkrellm', + 'target_regex': None}, + {'catalogname': u'gkrellmd', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgkrellmd', + 'target_regex': None}, + {'catalogname': u'gl117', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgl117', + 'target_regex': None}, + {'catalogname': u'gladegui', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgladegui', + 'target_regex': None}, + {'catalogname': u'glib', + 'distfiles': u' glib-1.2.10.tar.gz glib-1.3.15.tar.gz ', + 'gar_regex': u'glib-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWglib', + 'target_regex': u'glib-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'glib2', + 'distfiles': u'glib-2.25.10.tar.bz2 ', + 'gar_regex': u'glib-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWglib2', + 'target_regex': u'glib-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'gm4', + 'distfiles': u'm4-1.4.15.tar.gz ', + 'gar_regex': u'm4-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWgm4', + 'target_regex': u'm4-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'gmake', + 'distfiles': u'make-3.82.tar.gz ', + 'gar_regex': u'make-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWgmake', + 'target_regex': u'make-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'gmime', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgmime', + 'target_regex': None}, + {'catalogname': u'gnome_icon_theme', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgnomeicontheme', + 'target_regex': None}, + {'catalogname': u'gnome_menus', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgnomemenus', + 'target_regex': None}, + {'catalogname': u'gnome_panel', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgnomepanel', + 'target_regex': None}, + {'catalogname': u'gnome_spell', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgnomespell', + 'target_regex': None}, + {'catalogname': u'gnomedesktop', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgnomedesktop', + 'target_regex': None}, + {'catalogname': u'gnomekeyring', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgnomekeyring', + 'target_regex': None}, + {'catalogname': u'gnomevfs2', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgnomevfs2', + 'target_regex': None}, + {'catalogname': u'gnucash', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgnucash', + 'target_regex': None}, + {'catalogname': u'gnucashcommon', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgnucashcommon', + 'target_regex': None}, + {'catalogname': u'gnuchess', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWchss', + 'target_regex': None}, + {'catalogname': u'gnulinks', + 'distfiles': u'COPYING ', + 'gar_regex': u'', + 'pkgname': u'CSWgnulinks', + 'target_regex': u''}, + {'catalogname': u'gnumeric', + 'distfiles': u'gnumeric-1.9.5.tar.gz ', + 'gar_regex': u'gnumeric-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWgnumeric', + 'target_regex': u'gnumeric-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'gnupg', + 'distfiles': u'gnupg-1.4.11.tar.bz2 ', + 'gar_regex': u'(\\d+(?:\\.\\d+)*)', + 'pkgname': u'CSWgnupg', + 'target_regex': u'(\\d+(?:\\.\\d+)*)'}, + {'catalogname': u'gnupg_minimal', + 'distfiles': u'gnupg-1.4.9.tar.bz2 ', + 'gar_regex': u'(\\d+(?:\\.\\d+)*)', + 'pkgname': u'CSWgnupgminimal', + 'target_regex': u'(\\d+(?:\\.\\d+)*)'}, + {'catalogname': u'gnuplot', + 'distfiles': u'gnuplot-4.4.2.tar.gz ', + 'gar_regex': u'gnuplot-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWgnuplot', + 'target_regex': u'gnuplot-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'gnusnamazu', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgnusnamazu', + 'target_regex': None}, + {'catalogname': u'gnustep_make', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgsmake', + 'target_regex': None}, + {'catalogname': u'gnutls', + 'distfiles': u'gnutls-2.10.4.tar.bz2 ', + 'gar_regex': u'gnutls-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWgnutls', + 'target_regex': u'gnutls-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'gocr', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgocr', + 'target_regex': None}, + {'catalogname': u'gp2c', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgp2c', + 'target_regex': None}, + {'catalogname': u'gpdf', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgpdf', + 'target_regex': None}, + {'catalogname': u'gperf', + 'distfiles': u'gperf-3.0.4.tar.gz ', + 'gar_regex': u'gperf-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWgperf', + 'target_regex': u'gperf-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'gpgme', + 'distfiles': u'gpgme-1.1.8.tar.bz2 CSWgpgme.gspec ', + 'gar_regex': u'-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWgpgme', + 'target_regex': u'-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'gphoto2', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgphoto2', + 'target_regex': None}, + {'catalogname': u'gplbp', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgplbp', + 'target_regex': None}, + {'catalogname': u'gqview', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgqview', + 'target_regex': None}, + {'catalogname': u'grap', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgrap', + 'target_regex': None}, + {'catalogname': u'graphicsmagick', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgraphicsmagick', + 'target_regex': None}, + {'catalogname': u'graphviz', + 'distfiles': u'graphviz-2.26.3.tar.gz CSWgraphviz.postinstall CSWgraphvizgd.postinstall CSWgraphvizgd.postuninstall CSWgraphvizdevil.postinstall CSWgraphvizdevil.postuninstall ', + 'gar_regex': u'graphviz-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWgraphvis', + 'target_regex': u'graphviz-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'graphviz2', + 'distfiles': u'graphviz-2.26.3.tar.gz CSWgraphviz.postinstall CSWgraphvizgd.postinstall CSWgraphvizgd.postuninstall CSWgraphvizdevil.postinstall CSWgraphvizdevil.postuninstall ', + 'gar_regex': u'graphviz-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWgraphviz2', + 'target_regex': u'graphviz-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'groff', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgroff', + 'target_regex': None}, + {'catalogname': u'gsed', + 'distfiles': u'sed-4.2.1.tar.gz ', + 'gar_regex': u'sed-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWgsed', + 'target_regex': u'sed-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'gsfonts', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgsfonts', + 'target_regex': None}, + {'catalogname': u'gsl', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgsl', + 'target_regex': None}, + {'catalogname': u'gsnmp', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgsnmp', + 'target_regex': None}, + {'catalogname': u'gstplugins', + 'distfiles': u'gst-plugins-base-0.10.26.tar.gz ', + 'gar_regex': u'gst-plugins-base-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWgstplugins', + 'target_regex': u'gst-plugins-base-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'gstplugins_bad', + 'distfiles': u'gst-plugins-bad-0.10.20.tar.gz ', + 'gar_regex': u'gst-plugins-bad-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWgstpluginsbad', + 'target_regex': u'gst-plugins-bad-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'gstplugins_good', + 'distfiles': u'gst-plugins-good-0.10.18.tar.gz ', + 'gar_regex': u'gst-plugins-good-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWgstpluginsgood', + 'target_regex': u'gst-plugins-good-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'gstplugins_ugly', + 'distfiles': u'gst-plugins-ugly-0.10.13.tar.gz ', + 'gar_regex': u'gst-plugins-ugly-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWgstpluginsugly', + 'target_regex': u'gst-plugins-ugly-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'gstreamer', + 'distfiles': u'gstreamer-0.10.26.tar.gz ', + 'gar_regex': u'gstreamer-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWgstreamer', + 'target_regex': u'gstreamer-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'gsview', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgsview', + 'target_regex': None}, + {'catalogname': u'gtar', + 'distfiles': u'tar-1.25.tar.gz ', + 'gar_regex': u'tar-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWgtar', + 'target_regex': u'tar-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'gtk', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgtk', + 'target_regex': None}, + {'catalogname': u'gtk2', + 'distfiles': u'gtk+-2.18.9.tar.bz2 CSWgtk2.postinstall ', + 'gar_regex': u'', + 'pkgname': u'CSWgtk2', + 'target_regex': u''}, + {'catalogname': u'gtkgnutella', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgtkgnutella', + 'target_regex': None}, + {'catalogname': u'gtkhtml', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgtkhtml', + 'target_regex': None}, + {'catalogname': u'gtkhtml31', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgtkhtml31', + 'target_regex': None}, + {'catalogname': u'gtklp', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgtklp', + 'target_regex': None}, + {'catalogname': u'gtkmm2', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgtkmm2', + 'target_regex': None}, + {'catalogname': u'gtkpod', + 'distfiles': u'gtkpod-0.99.14.tar.gz ', + 'gar_regex': u'gtkpod-(\\d+(?:\\.\\d+)*)', + 'pkgname': u'CSWgtkpod', + 'target_regex': u'gtkpod-(\\d+(?:\\.\\d+)*)'}, + {'catalogname': u'gtksourceview', + 'distfiles': u'gtksourceview-2.9.3.tar.bz2 ', + 'gar_regex': u'gtksourceview-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWgtksourceview', + 'target_regex': u'gtksourceview-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'gtkspell', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgtkspell', + 'target_regex': None}, + {'catalogname': u'gtodo', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgtodo', + 'target_regex': None}, + {'catalogname': u'guile', + 'distfiles': u'guile-1.8.7.tar.gz ', + 'gar_regex': u'guile-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWguile', + 'target_regex': u'guile-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'guilelib12', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWguilelib12', + 'target_regex': None}, + {'catalogname': u'gv', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgv', + 'target_regex': None}, + {'catalogname': u'gvim', + 'distfiles': u'vim-7.3.tar.bz2 gvim.desktop COPYING ', + 'gar_regex': u'', + 'pkgname': u'CSWgvim', + 'target_regex': u''}, + {'catalogname': u'gwhois', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgwhois', + 'target_regex': None}, + {'catalogname': u'gwrap', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWgwrap', + 'target_regex': None}, + {'catalogname': u'gzip', + 'distfiles': u'gzip-1.4.tar.gz ', + 'gar_regex': u'gzip-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWgzip', + 'target_regex': u'gzip-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'hatari', + 'distfiles': u'hatari-1.3.1.tar.bz2 ', + 'gar_regex': u'hatari-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWhatari', + 'target_regex': u'hatari-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'hexdump', + 'distfiles': u'hexdump-1.6.tar.gz ', + 'gar_regex': u'hexdump-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWhexdump', + 'target_regex': u'hexdump-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'hexedit', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWhexedit', + 'target_regex': None}, + {'catalogname': u'hobbit', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWhobbit', + 'target_regex': None}, + {'catalogname': u'hobbit_client', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWhobbitc', + 'target_regex': None}, + {'catalogname': u'hpijs', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWhpijs', + 'target_regex': None}, + {'catalogname': u'htmltidy', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWhtmltidy', + 'target_regex': None}, + {'catalogname': u'httping', + 'distfiles': u'httping-1.4.1.tgz ', + 'gar_regex': u'httping-(\\d+(?:\\.\\d+)*).tgz', + 'pkgname': u'CSWhttping', + 'target_regex': u'httping-(\\d+(?:\\.\\d+)*).tgz'}, + {'catalogname': u'hugs', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWhugs', + 'target_regex': None}, + {'catalogname': u'hylafax', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWhylafax', + 'target_regex': None}, + {'catalogname': u'hypermail', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWhypermail', + 'target_regex': None}, + {'catalogname': u'icewm', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWicewm', + 'target_regex': None}, + {'catalogname': u'icon', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWicon', + 'target_regex': None}, + {'catalogname': u'id3lib', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWid3lib', + 'target_regex': None}, + {'catalogname': u'idle', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWidle', + 'target_regex': None}, + {'catalogname': u'iftop', + 'distfiles': u'iftop-0.17.tar.gz ', + 'gar_regex': u'iftop-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWiftop', + 'target_regex': u'iftop-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'ijs', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWijs', + 'target_regex': None}, + {'catalogname': u'imagemagick', + 'distfiles': u'ImageMagick-6.6.0-9.tar.bz2 ', + 'gar_regex': u'ImageMagick-((\\d+(?:\\.\\d+)*)-(\\d+)?).tar.bz2', + 'pkgname': u'CSWimagemagick', + 'target_regex': u'ImageMagick-((\\d+(?:\\.\\d+)*)-(\\d+)?).tar.bz2'}, + {'catalogname': u'imap', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWimap', + 'target_regex': None}, + {'catalogname': u'imap_devel', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWimap-devel', + 'target_regex': None}, + {'catalogname': u'imapfilter', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWimapfilter', + 'target_regex': None}, + {'catalogname': u'imapproxy', + 'distfiles': u'up-imapproxy-1.2.7.tar.gz imapproxy.conf changelog.CSW README.CSW cswimapproxy cswimapproxy.xml ', + 'gar_regex': u'up-imapproxy-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWimapproxy', + 'target_regex': u'up-imapproxy-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'imaprt', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWimaprt', + 'target_regex': None}, + {'catalogname': u'imapsync', + 'distfiles': u'imapsync-1.267.tgz CSWimapsync.gspec ', + 'gar_regex': u'-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWimapsync', + 'target_regex': u'-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'imlib', + 'distfiles': u'imlib-1.9.15.tar.bz2 ', + 'gar_regex': u'imlib-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWimlib', + 'target_regex': u'imlib-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'imlib2', + 'distfiles': u'imlib2-1.4.4.tar.bz2 ', + 'gar_regex': u'imlib2-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWimlib2', + 'target_regex': u'imlib2-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'indent', + 'distfiles': u'indent-2.2.10.tar.gz ', + 'gar_regex': u'indent-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWindent', + 'target_regex': u'indent-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'intltool', + 'distfiles': u'intltool-0.40.6.tar.gz ', + 'gar_regex': u'intltool-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWintltool', + 'target_regex': u'intltool-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'ion', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWion', + 'target_regex': None}, + {'catalogname': u'iozone', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWiozone', + 'target_regex': None}, + {'catalogname': u'ipaudit', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWipaudit', + 'target_regex': None}, + {'catalogname': u'ircii', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWircii', + 'target_regex': None}, + {'catalogname': u'irrtoolset', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWirrtoolset', + 'target_regex': None}, + {'catalogname': u'irssi', + 'distfiles': u'irssi-0.8.15.tar.gz ', + 'gar_regex': u'irssi-(\\d+(?:\\.\\d+)*).tar.gz', + 'pkgname': u'CSWirssi', + 'target_regex': u'irssi-(\\d+(?:\\.\\d+)*).tar.gz'}, + {'catalogname': u'isaexec', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWisaexec', + 'target_regex': None}, + {'catalogname': u'ivtools', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWivtools', + 'target_regex': None}, + {'catalogname': u'ivtools_doc', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWivtoolsdoc', + 'target_regex': None}, + {'catalogname': u'jabberd', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWjabberd', + 'target_regex': None}, + {'catalogname': u'jasper', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWjasper', + 'target_regex': None}, + {'catalogname': u'jasperdocs', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWjasperdocs', + 'target_regex': None}, + {'catalogname': u'javasvn', + 'distfiles': u'subversion-1.6.15.tar.bz2 CSWsvn.checkinstall CSWap2svn.postinstall CSWap2svn.preremove httpd-svn.conf.CSW svn_access.conf.CSW fixme.sh ', + 'gar_regex': u'subversion-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWjavasvn', + 'target_regex': u'subversion-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'jbig2dec', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWjbig2dec', + 'target_regex': None}, + {'catalogname': u'jbigkit', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWjbigkit', + 'target_regex': None}, + {'catalogname': u'jboss3', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWjboss3', + 'target_regex': None}, + {'catalogname': u'jboss4', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWjboss4', + 'target_regex': None}, + {'catalogname': u'jdicts', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWjdicts', + 'target_regex': None}, + {'catalogname': u'jed', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWjed', + 'target_regex': None}, + {'catalogname': u'jhead', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWjhead', + 'target_regex': None}, + {'catalogname': u'jikes', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWjikes', + 'target_regex': None}, + {'catalogname': u'joe', + 'distfiles': u'joe-3.7.tar.gz ', + 'gar_regex': u'joe-(\\d+(?:\\.\\d+)*)', + 'pkgname': u'CSWjoe', + 'target_regex': u'joe-(\\d+(?:\\.\\d+)*)'}, + {'catalogname': u'jove', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWjove', + 'target_regex': None}, + {'catalogname': u'jpeg', + 'distfiles': u'jpegsrc.v7.tar.gz ', + 'gar_regex': u'jpeg-(\\d+(?:\\.\\d+)*).tar.bz2', + 'pkgname': u'CSWjpeg', + 'target_regex': u'jpeg-(\\d+(?:\\.\\d+)*).tar.bz2'}, + {'catalogname': u'jpeg2ps', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWjpeg2ps', + 'target_regex': None}, + {'catalogname': u'jpilot', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWjpilot', + 'target_regex': None}, + {'catalogname': u'jsdrv', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWjsdrv', + 'target_regex': None}, + {'catalogname': u'junit', + 'distfiles': u'junit4.5.zip CSWjunit.gspec CSWjunitdoc.gspec ', + 'gar_regex': u'junit(\\d+(?:\\.\\d+)*)', + 'pkgname': u'CSWjunit', + 'target_regex': u'junit(\\d+(?:\\.\\d+)*)'}, + {'catalogname': u'junit_doc', + 'distfiles': u'junit4.5.zip CSWjunit.gspec CSWjunitdoc.gspec ', + 'gar_regex': u'junit(\\d+(?:\\.\\d+)*)', + 'pkgname': u'CSWjunitdoc', + 'target_regex': u'junit(\\d+(?:\\.\\d+)*)'}, + {'catalogname': u'jython', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWjython', + 'target_regex': None}, + {'catalogname': u'kanjipad', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkpad', + 'target_regex': None}, + {'catalogname': u'kde_gcc', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdegcc', + 'target_regex': None}, + {'catalogname': u'kde_gcc_dtlogin', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdegccdtlogin', + 'target_regex': None}, + {'catalogname': u'kde_i18n_af', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18naf', + 'target_regex': None}, + {'catalogname': u'kde_i18n_ar', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nar', + 'target_regex': None}, + {'catalogname': u'kde_i18n_bg', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nbg', + 'target_regex': None}, + {'catalogname': u'kde_i18n_bn', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nbn', + 'target_regex': None}, + {'catalogname': u'kde_i18n_bs', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nbs', + 'target_regex': None}, + {'catalogname': u'kde_i18n_ca', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nca', + 'target_regex': None}, + {'catalogname': u'kde_i18n_cs', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18ncs', + 'target_regex': None}, + {'catalogname': u'kde_i18n_cy', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18ncy', + 'target_regex': None}, + {'catalogname': u'kde_i18n_da', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nda', + 'target_regex': None}, + {'catalogname': u'kde_i18n_de', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nde', + 'target_regex': None}, + {'catalogname': u'kde_i18n_el', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nel', + 'target_regex': None}, + {'catalogname': u'kde_i18n_en_gb', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nenGB', + 'target_regex': None}, + {'catalogname': u'kde_i18n_eo', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18neo', + 'target_regex': None}, + {'catalogname': u'kde_i18n_es', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nes', + 'target_regex': None}, + {'catalogname': u'kde_i18n_et', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18net', + 'target_regex': None}, + {'catalogname': u'kde_i18n_eu', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18neu', + 'target_regex': None}, + {'catalogname': u'kde_i18n_fa', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nfa', + 'target_regex': None}, + {'catalogname': u'kde_i18n_fi', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nfi', + 'target_regex': None}, + {'catalogname': u'kde_i18n_fr', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nfr', + 'target_regex': None}, + {'catalogname': u'kde_i18n_fy', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nfy', + 'target_regex': None}, + {'catalogname': u'kde_i18n_ga', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nga', + 'target_regex': None}, + {'catalogname': u'kde_i18n_he', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nhe', + 'target_regex': None}, + {'catalogname': u'kde_i18n_hi', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nhi', + 'target_regex': None}, + {'catalogname': u'kde_i18n_hr', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nhr', + 'target_regex': None}, + {'catalogname': u'kde_i18n_hsb', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nhsb', + 'target_regex': None}, + {'catalogname': u'kde_i18n_hu', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nhu', + 'target_regex': None}, + {'catalogname': u'kde_i18n_is', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nis', + 'target_regex': None}, + {'catalogname': u'kde_i18n_it', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nit', + 'target_regex': None}, + {'catalogname': u'kde_i18n_ja', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nja', + 'target_regex': None}, + {'catalogname': u'kde_i18n_lt', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nlt', + 'target_regex': None}, + {'catalogname': u'kde_i18n_mk', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nmk', + 'target_regex': None}, + {'catalogname': u'kde_i18n_mn', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nmn', + 'target_regex': None}, + {'catalogname': u'kde_i18n_ms', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nms', + 'target_regex': None}, + {'catalogname': u'kde_i18n_nb', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nnb', + 'target_regex': None}, + {'catalogname': u'kde_i18n_nds', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nnds', + 'target_regex': None}, + {'catalogname': u'kde_i18n_nl', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nnl', + 'target_regex': None}, + {'catalogname': u'kde_i18n_nn', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nnn', + 'target_regex': None}, + {'catalogname': u'kde_i18n_pa', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18npa', + 'target_regex': None}, + {'catalogname': u'kde_i18n_pl', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18npl', + 'target_regex': None}, + {'catalogname': u'kde_i18n_pt', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18npt', + 'target_regex': None}, + {'catalogname': u'kde_i18n_pt_br', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nptBR', + 'target_regex': None}, + {'catalogname': u'kde_i18n_ro', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nro', + 'target_regex': None}, + {'catalogname': u'kde_i18n_ru', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nru', + 'target_regex': None}, + {'catalogname': u'kde_i18n_se', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nse', + 'target_regex': None}, + {'catalogname': u'kde_i18n_sk', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nsk', + 'target_regex': None}, + {'catalogname': u'kde_i18n_sl', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nsl', + 'target_regex': None}, + {'catalogname': u'kde_i18n_sr', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nsr', + 'target_regex': None}, + {'catalogname': u'kde_i18n_sr_latn', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nsrlatn', + 'target_regex': None}, + {'catalogname': u'kde_i18n_sv', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nsv', + 'target_regex': None}, + {'catalogname': u'kde_i18n_ta', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nta', + 'target_regex': None}, + {'catalogname': u'kde_i18n_tg', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18ntg', + 'target_regex': None}, + {'catalogname': u'kde_i18n_tr', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18ntr', + 'target_regex': None}, + {'catalogname': u'kde_i18n_uk', + 'distfiles': None, + 'gar_regex': None, + 'pkgname': u'CSWkdei18nuk', + 'target_regex': None}, + {'catalogname': u'kde_i18n_uz', + 'distfiles': None, @@ Diff output truncated at 100000 characters. @@ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sun Feb 27 13:42:39 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sun, 27 Feb 2011 12:42:39 +0000 Subject: [csw-devel] SF.net SVN: gar:[13481] csw/mgar/pkg/lighttpd/trunk Message-ID: Revision: 13481 http://gar.svn.sourceforge.net/gar/?rev=13481&view=rev Author: wahwah Date: 2011-02-27 12:42:39 +0000 (Sun, 27 Feb 2011) Log Message: ----------- lighttpd: Work around the linking problem Modified Paths: -------------- csw/mgar/pkg/lighttpd/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/lighttpd/trunk/files/0001-Work-around-linking-problem-buffer.c.patch Modified: csw/mgar/pkg/lighttpd/trunk/Makefile =================================================================== --- csw/mgar/pkg/lighttpd/trunk/Makefile 2011-02-27 00:38:18 UTC (rev 13480) +++ csw/mgar/pkg/lighttpd/trunk/Makefile 2011-02-27 12:42:39 UTC (rev 13481) @@ -1,3 +1,4 @@ +# $Id$ NAME = lighttpd VERSION = 1.4.28 CATEGORIES = devel @@ -17,4 +18,6 @@ MASTER_SITES = http://download.lighttpd.net/lighttpd/releases-1.4.x/ DISTFILES = $(NAME)-$(VERSION).tar.gz +PATCHFILES += 0001-Work-around-linking-problem-buffer.c.patch + include gar/category.mk Added: csw/mgar/pkg/lighttpd/trunk/files/0001-Work-around-linking-problem-buffer.c.patch =================================================================== --- csw/mgar/pkg/lighttpd/trunk/files/0001-Work-around-linking-problem-buffer.c.patch (rev 0) +++ csw/mgar/pkg/lighttpd/trunk/files/0001-Work-around-linking-problem-buffer.c.patch 2011-02-27 12:42:39 UTC (rev 13481) @@ -0,0 +1,27 @@ +From 98e846e18d3269a596aa1badf8e612947d33387c Mon Sep 17 00:00:00 2001 +From: Maciej Blizinski +Date: Sun, 27 Feb 2011 13:39:51 +0100 +Subject: [PATCH] Work around linking problem (buffer.c) + +--- + configure | 2 + + src/configparser.c | 240 +++++++++++++++++++++++----------------------- + src/mod_ssi_exprparser.c | 56 ++++++------ + 3 files changed, 149 insertions(+), 149 deletions(-) + +diff --git a/configure b/configure +index 3320daa..0bbc9be 100755 +--- a/configure ++++ b/configure +@@ -5423,6 +5423,8 @@ case $host_os in + *darwin*|*cygwin*|*aix*|*mingw* ) NO_RDYNAMIC=yes;; + * ) NO_RDYNAMIC=no;; + esac ++# It's the case on Solaris too ++NO_RDYNAMIC=yes + if test x$NO_RDYNAMIC = xyes; then + NO_RDYNAMIC_TRUE= + NO_RDYNAMIC_FALSE='#' +-- +1.7.3.2 + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sun Feb 27 14:18:14 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sun, 27 Feb 2011 13:18:14 +0000 Subject: [csw-devel] SF.net SVN: gar:[13482] csw/mgar/pkg/lighttpd/trunk/Makefile Message-ID: Revision: 13482 http://gar.svn.sourceforge.net/gar/?rev=13482&view=rev Author: wahwah Date: 2011-02-27 13:18:13 +0000 (Sun, 27 Feb 2011) Log Message: ----------- lighttpd: Work around sendfilev64 symbol issue Modified Paths: -------------- csw/mgar/pkg/lighttpd/trunk/Makefile Modified: csw/mgar/pkg/lighttpd/trunk/Makefile =================================================================== --- csw/mgar/pkg/lighttpd/trunk/Makefile 2011-02-27 12:42:39 UTC (rev 13481) +++ csw/mgar/pkg/lighttpd/trunk/Makefile 2011-02-27 13:18:13 UTC (rev 13482) @@ -17,7 +17,7 @@ MASTER_SITES = http://download.lighttpd.net/lighttpd/releases-1.4.x/ DISTFILES = $(NAME)-$(VERSION).tar.gz - +EXTRA_LDFLAGS = -lsendfile PATCHFILES += 0001-Work-around-linking-problem-buffer.c.patch include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 27 17:29:46 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 27 Feb 2011 16:29:46 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[338] web/wordpresscsw Message-ID: Revision: 338 http://opencsw.svn.sourceforge.net/opencsw/?rev=338&view=rev Author: wbonnet Date: 2011-02-27 16:29:46 +0000 (Sun, 27 Feb 2011) Log Message: ----------- Add Statistics generation under web tree Added Paths: ----------- web/wordpresscsw/tools/ web/wordpresscsw/tools/statistics/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 27 17:44:57 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 27 Feb 2011 16:44:57 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[339] web/wordpresscsw/tools/statistics Message-ID: Revision: 339 http://opencsw.svn.sourceforge.net/opencsw/?rev=339&view=rev Author: wbonnet Date: 2011-02-27 16:44:57 +0000 (Sun, 27 Feb 2011) Log Message: ----------- Add Statistics generation under web tree Added Paths: ----------- web/wordpresscsw/tools/statistics/db-common.php web/wordpresscsw/tools/statistics/db-config.php.sample web/wordpresscsw/tools/statistics/monthlyPackageCount.php web/wordpresscsw/tools/statistics/monthlyPackageCreationUpdate.php Copied: web/wordpresscsw/tools/statistics/db-common.php (from rev 321, utilities/packagesStatistics/tools/db-common.php) =================================================================== --- web/wordpresscsw/tools/statistics/db-common.php (rev 0) +++ web/wordpresscsw/tools/statistics/db-common.php 2011-02-27 16:44:57 UTC (rev 339) @@ -0,0 +1,310 @@ +dbName = DB_SCHEMA; + $this->dbHost = DB_HOST; + $this->dbUser = DB_USER; + $this->dbPassword = DB_PASSWORD; + } + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Connect to database + // + // ----------------------------------------------------------------------------------------------------------------------- + function connect() { + + // Connect to database + $this->linkDB = mysql_connect($this->dbHost, $this->dbUser, $this->dbPassword) + or die("Unable to connect to db : " . mysql_error()); + + // Select default database + $this->dbCnx = mysql_select_db($this->dbName, $this->linkDB); + if (!$this->dbCnx) { + die ('Unable to use database ' . $this->dbName . ' : ' . mysql_error()); + } + } + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Disconnect from database + // + // ----------------------------------------------------------------------------------------------------------------------- + function disconnect() { + mysql_close($this->linkDB); + } + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Query execution + // + // ----------------------------------------------------------------------------------------------------------------------- + function execQuery($sqlQuery) { + + // Execute the query + $this->result = mysql_query(utf8_encode($sqlQuery), $this->linkDB); + + // Check results. Display query and error + if (!$this->result) { + $message = 'Invalid query : ' . mysql_error() . "\n"; + $message .= 'Query used : ' . $sqlQuery; + die($message); + } + } + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Increase the number of download for a given package + // + // ----------------------------------------------------------------------------------------------------------------------- + function increasePackageDownloadCounter($packageName, $packageOsVersion, $packageArch, $targetOsVersion, $packageSource, $columnName) { + + // Get the current date components + $currentDay = date('d'); // Retrieve current day + $currentMonth = date('m'); // Retrieve current month + $currentYear = date('Y'); // Retrieve current year + + // Check that the package exist in the catalog. This is used to prevent from being polluted by non existing packages + $sqlQuery = "select ID_PKG from PKG_STATS_PACKAGES where PKG_CATALOGNAME = '" . mysql_real_escape_string($packageName) . "'" ; + + // Execute the query to retrieve the row to update + $this->execQuery($sqlQuery); + + // Check if there is a result, if no return because this package does not exist + if (! $row = mysql_fetch_array($this->result)) { +echo "Package $packageName does not exist
      "; + return; + } + + // Define the query used to retrieve the packages from the database + $sqlQuery = "select ID_DWN, $columnName from PKG_STATS_DOWNLOADS where DWN_YEAR = '$currentYear' and DWN_MONTH = '$currentMonth' " ; + $sqlQuery .= "and DWN_DAY = '$currentDay' and DWN_NAME = '" . mysql_real_escape_string($packageName) . "' " ; + $sqlQuery .= "and DWN_ARCH = '" . mysql_real_escape_string($packageArch) . "' " ; + $sqlQuery .= "and DWN_PKG_OS_VERSION = '" . mysql_real_escape_string($packageOsVersion) . "' " ; + $sqlQuery .= "and DWN_TARGET_OS_VERSION = '" . mysql_real_escape_string($targetOsVersion) . "' " ; + $sqlQuery .= "and DWN_SOURCE = '" . mysql_real_escape_string($packageSource) . "' " ; + + // Execute the query to retrieve the row to update + $this->execQuery($sqlQuery); + + // Check if there is a result + if ($row = mysql_fetch_array($this->result)) { + // Yes there is a record, thus update it + $id = $row[0]; // Retrieve the id of the record + $downloadCount = $row[1]; // Retrieve the current counter value + + $downloadCount++; // Increment download count + + // Generate the query used to update the record + $sqlQuery = "update PKG_STATS_DOWNLOADS set $columnName = '$downloadCount' where ID_DWN = '$id'"; + + // Execute the query + $this->execQuery($sqlQuery); + + } else { + + // No row means no resultats, thus we need to insert a record in the database + $sqlQuery = "insert into PKG_STATS_DOWNLOADS (DWN_NAME, DWN_PKG_OS_VERSION, DWN_TARGET_OS_VERSION, DWN_SOURCE, DWN_ARCH, DWN_YEAR, DWN_MONTH, DWN_DAY, $columnName ) "; + $sqlQuery .= " values ('" . mysql_real_escape_string($packageName) . "', '" ; + $sqlQuery .= mysql_real_escape_string($packageOsVersion) . "', '" ; + $sqlQuery .= mysql_real_escape_string($targetOsVersion) . "', '" ; + $sqlQuery .= mysql_real_escape_string($packageSource) . "', '" ; + $sqlQuery .= mysql_real_escape_string($packageArch) . "', " ; + $sqlQuery .= "'$currentYear', '$currentMonth', '$currentDay', 1)" ; + + // Execute the query + $this->execQuery($sqlQuery); + } + } + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Increase the number of installation for a given package "because it was directly downloaded" + // + // ----------------------------------------------------------------------------------------------------------------------- + function increasePackageSelectCounter($packageName, $packageOsVersion, $packageArch, $targetOsVersion, $packageSource) { + + // Call the function that will modify data in the db with the name of the column to inc + // Define the query used to retrieve the packages from the database + $this->increasePackageDownloadCounter($packageName, $packageOsVersion, $packageArch, $targetOsVersion, $packageSource, "DWN_SELECT_COUNT"); + } + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Increase the number of installation for a given package "because it was a dependency" + // + // ----------------------------------------------------------------------------------------------------------------------- + function increasePackageFetchCounter($packageName, $packageOsVersion, $packageArch, $targetOsVersion, $packageSource) { + + // Call the function that will modify data in the db with the name of the column to inc + // Define the query used to retrieve the packages from the database + $this->increasePackageDownloadCounter($packageName, $packageOsVersion, $packageArch, $targetOsVersion, $packageSource, "DWN_FETCH_COUNT"); + } + + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Increase the number of download from a given mirror + // + // ----------------------------------------------------------------------------------------------------------------------- + function increaseMirrorDownloadCounter($mirrorName, $mirrorArch, $mirrorOsVersion, $mirrorSource) { + + // Get the current date components + $currentDay = date('d'); // Retrieve current day + $currentMonth = date('m'); // Retrieve current month + $currentYear = date('Y'); // Retrieve current year + + // Define the query used to retrieve the packages from the database + $sqlQuery = "select ID_MIR, MIR_COUNT from PKG_STATS_MIRRORS where MIR_YEAR = '$currentYear' "; + $sqlQuery .= "and MIR_MONTH = '$currentMonth' " ; + $sqlQuery .= "and MIR_DAY = '$currentDay' " ; + $sqlQuery .= "and MIR_URL = '" . mysql_real_escape_string($mirrorName) . "' " ; + $sqlQuery .= "and MIR_ARCH = '" . mysql_real_escape_string($mirrorArch) . "' " ; + $sqlQuery .= "and MIR_SOURCE = '" . mysql_real_escape_string($mirrorSource) . "' " ; + $sqlQuery .= "and MIR_OS_VERSION = '" . mysql_real_escape_string($mirrorOsVersion) . "' " ; + + // Execute the query to retrieve the row to update + $this->execQuery($sqlQuery); + + // Check if there is a result + if ($row = mysql_fetch_array($this->result)) { + // Yes there is a record, thus update it + $id = $row[0]; // Retrieve the id of the record + $downloadCount = $row[1]; // Retrieve the current counter value + + $downloadCount++; // Increment download count + + // Generate the query used to update the record + $sqlQuery = "update PKG_STATS_MIRRORS set MIR_COUNT = '$downloadCount' where ID_MIR = '$id'"; + + // Execute the query + $this->execQuery($sqlQuery); + + } else { + + // No row means no resultats, thus we need to insert a record in the database + $sqlQuery = "insert into PKG_STATS_MIRRORS (MIR_URL, MIR_YEAR, MIR_MONTH, MIR_DAY, MIR_COUNT, "; + $sqlQuery .= "MIR_ARCH, MIR_SOURCE, MIR_OS_VERSION ) "; + $sqlQuery .= " values ('" . mysql_real_escape_string($mirrorName) ."', "; + $sqlQuery .= "'$currentYear', '$currentMonth', '$currentDay', 1," ; + $sqlQuery .= "'" . mysql_real_escape_string($mirrorArch) ."'," ; + $sqlQuery .= "'" . mysql_real_escape_string($mirrorSource) ."'," ; + $sqlQuery .= "'" . mysql_real_escape_string($mirrorOsVersion) ."')" ; + + // Execute the query + $this->execQuery($sqlQuery); + } + } + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Get the monthly number of packages creations and updates for the last 12 rolling months + // + // ----------------------------------------------------------------------------------------------------------------------- + function getMonthlyPackageCreationAndUpdateOverLastYear() { + + // Initialize the variables + $statCreationUpdate = array(); // array of data that will be returned to caller + $statIndex = 0; // current index + + // Define the query used to retrieve the packages from the database + $sqlQuery = "select STAT_CREATION_COUNT, STAT_UPDATE_COUNT, STAT_MONTH, STAT_YEAR from PKG_STATS_STATISTICS order by id_stat desc limit 0,12;" ; + + // Execute the query to retrieve the row to update + $this->execQuery($sqlQuery); + + // Check if there is a result + while ($row = mysql_fetch_array($this->result)) { + $statCreationUpdate[$statIndex++] = $row; // Yes there is a record, thus copy it to the array + } + + return $statCreationUpdate ; + } + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Get the monthly number of available packages for the last 12 rolling months + // + // ----------------------------------------------------------------------------------------------------------------------- + function getMonthlyPackageCountOverLastYear() { + + // Initialize the variables + $statCreationUpdate = array(); // array of data that will be returned to caller + $statIndex = 0; // current index + + // Define the query used to retrieve the packages from the database + $sqlQuery = "select STAT_PACKAGE_COUNT, STAT_MONTH, STAT_YEAR from PKG_STATS_STATISTICS order by id_stat desc limit 0,12;" ; + + // Execute the query to retrieve the row to update + $this->execQuery($sqlQuery); + + // Check if there is a result + while ($row = mysql_fetch_array($this->result)) { + $statCreationUpdate[$statIndex++] = $row; // Yes there is a record, thus copy it to the array + } + + return $statCreationUpdate ; + } +} +?> Copied: web/wordpresscsw/tools/statistics/db-config.php.sample (from rev 321, utilities/packagesStatistics/tools/db-config.php) =================================================================== --- web/wordpresscsw/tools/statistics/db-config.php.sample (rev 0) +++ web/wordpresscsw/tools/statistics/db-config.php.sample 2011-02-27 16:44:57 UTC (rev 339) @@ -0,0 +1,42 @@ + Copied: web/wordpresscsw/tools/statistics/monthlyPackageCount.php (from rev 321, utilities/packagesStatistics/tools/monthlyPackageCount.php) =================================================================== --- web/wordpresscsw/tools/statistics/monthlyPackageCount.php (rev 0) +++ web/wordpresscsw/tools/statistics/monthlyPackageCount.php 2011-02-27 16:44:57 UTC (rev 339) @@ -0,0 +1,88 @@ +setAntiAliasing(FALSE); + + $group = new PlotGroup; + $group->grid->setType(Line::DASHED); + + $group->setPadding(40, NULL, 20, NULL); + + $group->axis->left->setLabelNumber(8); + $group->axis->left->setLabelPrecision(1); + $group->axis->left->setTickStyle(Tick::OUT); + + // Statistics array population + $statPackage = array(); // Initialize the number of packages array + + // Create the DAO object + $statDAO = new mysqlDAO(); + + // Connect to database + $statDAO->connect(); + + // Retrieve the statistics from the database + $stats = $statDAO->getMonthlyPackageCountOverLastYear(); + + // Disconnect from database + $statDAO->disconnect(); + + for ($idxCounter = 11 ; $idxCounter >= 0 ; $idxCounter--) { // Loop used to copy data + $statPackage[$idxCounter] = $stats[11 - $idxCounter][0]; // into the creation array + } + + $plot = new LinePlot($statPackage); + + $plot->label->setFont(new Tuffy(7)); + $plot->label->setPadding(1, 1, 1, 1); + $plot->label->setCallbackFunction("labelFormat"); + $plot->label->setBackgroundColor( + new Color(227, 223, 241, 15) + ); + $plot->setColor(new Green()); + $plot->setFillColor(new LightGreen(80)); + + $plot->mark->setType(Mark::CIRCLE); + $plot->mark->setFill(new MidGreen); + $plot->mark->setSize(6); + + $group->legend->add($plot, "Number of available packages", Legend::MARK); + $group->legend->setPosition(0.35, 0.15); + $group->add($plot); + + $x = array(NULL, NULL, NULL, 10, 12, 14, 18, 26, 42); + + $group->axis->bottom->label->setCallbackFunction('setMonth'); + $group->axis->left->label->setCallbackFunction('setNumber'); + + $graph->add($group); + + $graph->draw(); + +?> Copied: web/wordpresscsw/tools/statistics/monthlyPackageCreationUpdate.php (from rev 321, utilities/packagesStatistics/tools/monthlyPackageCreationUpdate.php) =================================================================== --- web/wordpresscsw/tools/statistics/monthlyPackageCreationUpdate.php (rev 0) +++ web/wordpresscsw/tools/statistics/monthlyPackageCreationUpdate.php 2011-02-27 16:44:57 UTC (rev 339) @@ -0,0 +1,139 @@ +setAntiAliasing(FALSE); + + $group = new PlotGroup; + $group->setSpace(5, 5, 5, 0); + $group->setPadding(40, 20); + + $group->axis->left->setLabelPrecision(0); + + $colors = array( + new Color(80, 105, 190, 10), + new Color(105, 190, 80, 10) + ); + + $darkColor = array( + new Color(40, 55, 120, 10), + new Color(55, 120, 40, 10) + ); + + $axis = array( + Plot::LEFT, + ); + + $group->axis->left->setColor($darkColor[0]); + $group->axis->left->label->setColor($darkColor[0]); + + $group->setBackgroundGradient( + new LinearGradient( + new Color(225, 225, 225), + new Color(255, 255, 255), + 0 + ) + ); + + // Statistics array population + $statCreation = array(); // Initialize the creation data array + $statUpdate = array(); // Initialize the update data array + + // Create the DAO object + $statDAO = new mysqlDAO(); + + // Connect to database + $statDAO->connect(); + + // Retrieve the statistics from the database + $stats = $statDAO->getMonthlyPackageCreationAndUpdateOverLastYear(); + + // Disconnect from database + $statDAO->disconnect(); + + for ($idxCounter = 11 ; $idxCounter >= 0 ; $idxCounter--) { // Loop used to copy data + $statCreation[$idxCounter] = $stats[11 - $idxCounter][0]; // into the creation array + $statUpdate[$idxCounter] = $stats[11 - $idxCounter][1]; // into the update array + } + + // Add the "creations" serie on the graphic + $plot = new BarPlot($statCreation, 1, 2); + $plot->barBorder->setColor(new Color(0, 0, 0, 30)); + + $plot->setBarPadding(0.1, 0.1); + $plot->setBarSpace(5); + + $plot->barShadow->setSize(2); + $plot->barShadow->setPosition(Shadow::RIGHT_TOP); + $plot->barShadow->setColor(new Color(180, 180, 180, 10)); + $plot->barShadow->smooth(TRUE); + + $plot->label->set($statCreation); + $plot->label->move(0, -6); + $plot->label->setFont(new Tuffy(7)); + $plot->label->setAngle(0); + $plot->label->setAlign(NULL, Label::TOP); + $plot->label->setPadding(3, 1, 0, 6); + $plot->label->setCallbackFunction("labelFormat"); + + $plot->setBarColor($colors[0]); + $plot->setYAxis($axis[0]); + + $group->legend->add($plot, "Packages creations", Legend::BACKGROUND); + $group->legend->setPosition(0.30, 0.15); + $group->legend->shadow->smooth(TRUE); + + $group->add($plot); + + // Add the "updates" serie on the graphic + $plot = new BarPlot($statUpdate, 2, 2); + $plot->barBorder->setColor(new Color(0, 0, 0, 30)); + + $plot->setBarPadding(0.1, 0.1); + $plot->setBarSpace(5); + + $plot->barShadow->setSize(2); + $plot->barShadow->setPosition(Shadow::RIGHT_TOP); + $plot->barShadow->setColor(new Color(180, 180, 180, 10)); + $plot->barShadow->smooth(TRUE); + + $plot->label->set($statUpdate); + $plot->label->move(0, -6); + $plot->label->setFont(new Tuffy(7)); + $plot->label->setAngle(0); + $plot->label->setAlign(NULL, Label::TOP); + $plot->label->setPadding(3, 1, 0, 6); + $plot->label->setCallbackFunction("labelFormat"); + + $plot->setBarColor($colors[1]); + $plot->setYAxis($axis[0]); + + $group->legend->add($plot, "Packages updates", Legend::BACKGROUND); + $group->add($plot); + + $group->axis->bottom->label->setCallbackFunction('setMonth'); + + $graph->add($group); + $graph->draw(); +?> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 27 17:53:31 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 27 Feb 2011 16:53:31 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[340] web/wordpresscsw/tools/statistics Message-ID: Revision: 340 http://opencsw.svn.sourceforge.net/opencsw/?rev=340&view=rev Author: wbonnet Date: 2011-02-27 16:53:31 +0000 (Sun, 27 Feb 2011) Log Message: ----------- Add Artichow lib Added Paths: ----------- web/wordpresscsw/tools/statistics/Artichow/ web/wordpresscsw/tools/statistics/Artichow/AntiSpam.class.php web/wordpresscsw/tools/statistics/Artichow/Artichow.cfg.php web/wordpresscsw/tools/statistics/Artichow/BarPlot.class.php web/wordpresscsw/tools/statistics/Artichow/Component.class.php web/wordpresscsw/tools/statistics/Artichow/Graph.class.php web/wordpresscsw/tools/statistics/Artichow/Image.class.php web/wordpresscsw/tools/statistics/Artichow/LinePlot.class.php web/wordpresscsw/tools/statistics/Artichow/MathPlot.class.php web/wordpresscsw/tools/statistics/Artichow/Pattern.class.php web/wordpresscsw/tools/statistics/Artichow/Pie.class.php web/wordpresscsw/tools/statistics/Artichow/Plot.class.php web/wordpresscsw/tools/statistics/Artichow/ScatterPlot.class.php web/wordpresscsw/tools/statistics/Artichow/cache/ web/wordpresscsw/tools/statistics/Artichow/common.php web/wordpresscsw/tools/statistics/Artichow/font/ web/wordpresscsw/tools/statistics/Artichow/font/Tuffy.ttf web/wordpresscsw/tools/statistics/Artichow/font/TuffyBold.ttf web/wordpresscsw/tools/statistics/Artichow/font/TuffyBoldItalic.ttf web/wordpresscsw/tools/statistics/Artichow/font/TuffyItalic.ttf web/wordpresscsw/tools/statistics/Artichow/images/ web/wordpresscsw/tools/statistics/Artichow/images/book.png web/wordpresscsw/tools/statistics/Artichow/images/error.png web/wordpresscsw/tools/statistics/Artichow/images/errors/ web/wordpresscsw/tools/statistics/Artichow/images/errors/missing-anti-aliasing.png web/wordpresscsw/tools/statistics/Artichow/images/errors/missing-gd2.png web/wordpresscsw/tools/statistics/Artichow/images/paperclip.png web/wordpresscsw/tools/statistics/Artichow/images/star.png web/wordpresscsw/tools/statistics/Artichow/inc/ web/wordpresscsw/tools/statistics/Artichow/inc/Axis.class.php web/wordpresscsw/tools/statistics/Artichow/inc/Border.class.php web/wordpresscsw/tools/statistics/Artichow/inc/Color.class.php web/wordpresscsw/tools/statistics/Artichow/inc/Driver.class.php web/wordpresscsw/tools/statistics/Artichow/inc/Font.class.php web/wordpresscsw/tools/statistics/Artichow/inc/Gradient.class.php web/wordpresscsw/tools/statistics/Artichow/inc/Grid.class.php web/wordpresscsw/tools/statistics/Artichow/inc/Label.class.php web/wordpresscsw/tools/statistics/Artichow/inc/Legend.class.php web/wordpresscsw/tools/statistics/Artichow/inc/Mark.class.php web/wordpresscsw/tools/statistics/Artichow/inc/Math.class.php web/wordpresscsw/tools/statistics/Artichow/inc/Shadow.class.php web/wordpresscsw/tools/statistics/Artichow/inc/Text.class.php web/wordpresscsw/tools/statistics/Artichow/inc/Tick.class.php web/wordpresscsw/tools/statistics/Artichow/inc/Tools.class.php web/wordpresscsw/tools/statistics/Artichow/inc/drivers/ web/wordpresscsw/tools/statistics/Artichow/inc/drivers/gd.class.php web/wordpresscsw/tools/statistics/Artichow/inc/drivers/ming.class.php web/wordpresscsw/tools/statistics/Artichow/patterns/ web/wordpresscsw/tools/statistics/Artichow/patterns/BarDepth.php web/wordpresscsw/tools/statistics/Artichow/patterns/LightLine.php Added: web/wordpresscsw/tools/statistics/Artichow/AntiSpam.class.php =================================================================== --- web/wordpresscsw/tools/statistics/Artichow/AntiSpam.class.php (rev 0) +++ web/wordpresscsw/tools/statistics/Artichow/AntiSpam.class.php 2011-02-27 16:53:31 UTC (rev 340) @@ -0,0 +1,224 @@ +string = (string)$string; + + } + + /** + * Create a random string + * + * @param int $length String length + * @return string String created + */ + public function setRand($length) { + + $length = (int)$length; + + $this->string = ''; + + $letters = 'aAbBCDeEFgGhHJKLmMnNpPqQRsStTuVwWXYZz2345679'; + $number = strlen($letters); + + for($i = 0; $i < $length; $i++) { + $this->string .= $letters{mt_rand(0, $number - 1)}; + } + + return $this->string; + + } + + /** + * Set noise on image + * + * @param int $nois Noise intensity (from 0 to 10) + */ + public function setNoise($noise) { + if($noise < 0) { + $noise = 0; + } + if($noise > 10) { + $noise = 10; + } + $this->noise = (int)$noise; + } + + /** + * Save string value in session + * You can use check() to verify the value later + * + * @param string $qName A name that identify the anti-spam image + */ + public function save($qName) { + $this->session(); + $session = 'artichow_'.(string)$qName; + $_SESSION[$session] = $this->string; + } + + /** + * Verify user entry + * + * @param string $qName A name that identify the anti-spam image + * @param string $value User-defined value + * @param bool $case TRUE for case insensitive check, FALSE for case sensitive check ? (default to TRUE) + * @return bool TRUE if the value is correct, FALSE otherwise + */ + public function check($qName, $value, $case = TRUE) { + + $this->session(); + + $session = 'artichow_'.(string)$qName; + + return ( + array_key_exists($session, $_SESSION) === TRUE and + $case ? + (strtolower($_SESSION[$session]) === strtolower((string)$value)) : + ($_SESSION[$session] === (string)$value) + ); + + } + + /** + * Draw image + */ + public function draw() { + + $fonts = array( + 'Tuffy', + 'TuffyBold', + 'TuffyItalic', + 'TuffyBoldItalic' + ); + + $sizes = array(12, 12.5, 13, 13.5, 14, 15, 16, 17, 18, 19); + + $widths = array(); + $heights = array(); + $texts = array(); + + // Set up a temporary driver to allow font size calculations... + $this->setSize(10, 10); + $driver = $this->getDriver(); + + for($i = 0; $i < strlen($this->string); $i++) { + + $fontKey = array_rand($fonts); + $sizeKey = array_rand($sizes); + + $font = new awTTFFont( + $fonts[$fontKey], $sizes[$sizeKey] + ); + + $text = new awText( + $this->string{$i}, + $font, + NULL, + mt_rand(-15, 15) + ); + + $widths[] = $driver->getTextWidth($text); + $heights[] = $driver->getTextHeight($text); + $texts[] = $text; + + } + + // ... and get rid of it. + $this->driver = NULL; + + $width = array_sum($widths); + $height = array_max($heights); + + $totalWidth = $width + 10 + count($texts) * 10; + $totalHeight = $height + 20; + + $this->setSize($totalWidth, $totalHeight); + + $this->create(); + + for($i = 0; $i < strlen($this->string); $i++) { + + $this->driver->string( + $texts[$i], + new awPoint( + 5 + array_sum(array_slice($widths, 0, $i)) + $widths[$i] / 2 + $i * 10, + 10 + ($height - $heights[$i]) / 2 + ) + ); + + } + + $this->drawNoise($totalWidth, $totalHeight); + + $this->send(); + + } + + protected function drawNoise($width, $height) { + + $points = $this->noise * 30; + $color = new awColor(0, 0, 0); + + for($i = 0; $i < $points; $i++) { + $this->driver->point( + $color, + new awPoint( + mt_rand(0, $width), + mt_rand(0, $height) + ) + ); + } + + } + + protected function session() { + + // Start session if needed + if(!session_id()) { + session_start(); + } + + } + +} + +registerClass('AntiSpam'); +?> Property changes on: web/wordpresscsw/tools/statistics/Artichow/AntiSpam.class.php ___________________________________________________________________ Added: svn:executable + * Added: web/wordpresscsw/tools/statistics/Artichow/Artichow.cfg.php =================================================================== --- web/wordpresscsw/tools/statistics/Artichow/Artichow.cfg.php (rev 0) +++ web/wordpresscsw/tools/statistics/Artichow/Artichow.cfg.php 2011-02-27 16:53:31 UTC (rev 340) @@ -0,0 +1,85 @@ + \ No newline at end of file Property changes on: web/wordpresscsw/tools/statistics/Artichow/Artichow.cfg.php ___________________________________________________________________ Added: svn:executable + * Added: web/wordpresscsw/tools/statistics/Artichow/BarPlot.class.php =================================================================== --- web/wordpresscsw/tools/statistics/Artichow/BarPlot.class.php (rev 0) +++ web/wordpresscsw/tools/statistics/Artichow/BarPlot.class.php 2011-02-27 16:53:31 UTC (rev 340) @@ -0,0 +1,364 @@ +label = new awLabel; + + $this->barPadding = new awSide(0.08, 0.08, 0, 0); + $this->barShadow = new awShadow(awShadow::RIGHT_TOP); + $this->barBorder = new awBorder; + + $this->setValues($values); + + $this->identifier = (int)$identifier; + $this->number = (int)$number; + $this->depth = (int)$depth; + + $this->move = new awSide; + + // Hide vertical grid + $this->grid->hideVertical(TRUE); + + } + + /** + * Change bars padding + * This method is not compatible with awBarPlot::setBarPadding() + * + * @param float $left Left padding (between 0 and 1) + * @param float $right Right padding (between 0 and 1) + */ + public function setBarPadding($left = NULL, $right = NULL) { + $this->barPadding->set($left, $right); + } + + /** + * Change bars size + * This method is not compatible with awBarPlot::setBarPadding() + * + * @param int $width Bars size (between 0 and 1) + */ + public function setBarSize($size) { + $padding = (1 - $size) / 2; + $this->barPadding->set($padding, $padding); + } + + /** + * Move bars + * + * @param int $x + * @param int $y + */ + public function move($x, $y) { + $this->move->set($x, NULL, $y, NULL); + } + + /** + * Change bars space + * + * @param int $space Space in pixels + */ + public function setBarSpace($space) { + $this->barSpace = (int)$space; + } + + /** + * Change line background color + * + * @param awColor $color + */ + public function setBarColor(awColor $color) { + $this->barBackground = $color; + } + + /** + * Change line background gradient + * + * @param awGradient $gradient + */ + public function setBarGradient(awGradient $gradient) { + $this->barBackground = $gradient; + } + + /** + * Get the line thickness + * + * @return int + */ + public function getLegendLineThickness() { + } + + /** + * Get the line type + * + * @return int + */ + public function getLegendLineStyle() { + } + + /** + * Get the color of line + * + * @return Color + */ + public function getLegendLineColor() { + } + + /** + * Get the background color or gradient of an element of the component + * + * @return Color, Gradient + */ + public function getLegendBackground() { + return $this->barBackground; + } + + /** + * Get a mark object + * + * @return Mark + */ + public function getLegendMark() { + } + + public function drawComponent(awDriver $driver, $x1, $y1, $x2, $y2, $aliasing) { + + $count = count($this->datay); + $max = $this->getRealYMax(NULL); + $min = $this->getRealYMin(NULL); + + // Find zero for bars + if($this->xAxisZero and $min <= 0 and $max >= 0) { + $zero = 0; + } else if($max < 0) { + $zero = $max; + } else { + $zero = $min; + } + + // Get base position + $zero = awAxis::toPosition($this->xAxis, $this->yAxis, new awPoint(0, $zero)); + + // Distance between two values on the graph + $distance = $this->xAxis->getDistance(0, 1); + + // Compute paddings + $leftPadding = $this->barPadding->left * $distance; + $rightPadding = $this->barPadding->right * $distance; + + $padding = $leftPadding + $rightPadding; + $space = $this->barSpace * ($this->number - 1); + + $barSize = ($distance - $padding - $space) / $this->number; + $barPosition = $leftPadding + $barSize * ($this->identifier - 1); + + for($key = 0; $key < $count; $key++) { + + $value = $this->datay[$key]; + + if($value !== NULL) { + + $position = awAxis::toPosition( + $this->xAxis, + $this->yAxis, + new awPoint($key, $value) + ); + + $barStart = $barPosition + ($this->identifier - 1) * $this->barSpace + $position->x; + $barStop = $barStart + $barSize; + + $t1 = min($zero->y, $position->y); + $t2 = max($zero->y, $position->y); + + if(round($t2 - $t1) == 0) { + continue; + } + + $p1 = new awPoint( + round($barStart) + $this->depth + $this->move->left, + round($t1) - $this->depth + $this->move->top + ); + + $p2 = new awPoint( + round($barStop) + $this->depth + $this->move->left, + round($t2) - $this->depth + $this->move->top + ); + + $this->drawBar($driver, $p1, $p2); + + } + + } + + // Draw labels + foreach($this->datay as $key => $value) { + + if($value !== NULL) { + + $position = awAxis::toPosition( + $this->xAxis, + $this->yAxis, + new awPoint($key, $value) + ); + + $point = new awPoint( + $barPosition + ($this->identifier - 1) * $this->barSpace + $position->x + $barSize / 2 + 1 + $this->depth, + $position->y - $this->depth + ); + + $this->label->draw($driver, $point, $key); + + } + + } + + } + + public function getXAxisNumber() { + return count($this->datay) + 1; + } + // ?a bidouille ? fond ici ! + public function getXMax() { + return array_max($this->datax) + 1; + } + + public function getXCenter() { + return TRUE; + } + + protected function drawBar(awDriver $driver, awPoint $p1, awPoint $p2) { + + // Draw shadow + $this->barShadow->draw( + $driver, + $p1, + $p2, + awShadow::OUT + ); + + if(abs($p2->y - $p1->y) > 1) { + + $this->barBorder->rectangle( + $driver, + $p1, + $p2 + ); + + if($this->barBackground !== NULL) { + + $size = $this->barBorder->visible() ? 1 : 0; + + $b1 = $p1->move($size, $size); + $b2 = $p2->move(-1 * $size, -1 * $size); + + // Draw background + $driver->filledRectangle( + $this->barBackground, + new awLine($b1, $b2) + ); + + } + + } + } + +} + +registerClass('BarPlot'); +?> Property changes on: web/wordpresscsw/tools/statistics/Artichow/BarPlot.class.php ___________________________________________________________________ Added: svn:executable + * Added: web/wordpresscsw/tools/statistics/Artichow/Component.class.php =================================================================== --- web/wordpresscsw/tools/statistics/Artichow/Component.class.php (rev 0) +++ web/wordpresscsw/tools/statistics/Artichow/Component.class.php 2011-02-27 16:53:31 UTC (rev 340) @@ -0,0 +1,415 @@ +components = array(); + } + + /** + * Add a component to the group + * + * @param awComponent $component A component + */ + public function add(awComponent $component) { + $this->components[] = $component; + } + +} + +registerClass('ComponentGroup', TRUE); + +abstract class awComponent { + + /** + * Component driver + * + * @var Driver + */ + protected $driver; + + /** + * Component width + * + * @var float + */ + public $width = 1.0; + + /** + * Component height + * + * @var float + */ + public $height = 1.0; + + /** + * Position X of the center the graph (from 0 to 1) + * + * @var float + */ + public $x = 0.5; + + /** + * Position Y of the center the graph (from 0 to 1) + * + * @var float + */ + public $y = 0.5; + + /** + * Component absolute width (in pixels) + * + * + * @var int + */ + public $w; + + /** + * Component absolute height (in pixels) + * + * + * @var int + */ + public $h; + + /** + * Left-top corner Y position + * + * @var float + */ + public $top; + + /** + * Left-top corner X position + * + * @var float + */ + public $left; + + /** + * Component background color + * + * @var Color + */ + protected $background; + + /** + * Component padding + * + * @var Side + */ + protected $padding; + + /** + * Component space + * + * @var Side + */ + protected $space; + + /** + * Component title + * + * @var Label + */ + public $title; + + /** + * Adjust automatically the component ? + * + * @var bool + */ + protected $auto = TRUE; + + /** + * Legend + * + * @var Legend + */ + public $legend; + + /** + * Build the component + */ + public function __construct() { + + // Component legend + $this->legend = new awLegend(); + + $this->padding = new awSide(25, 25, 25, 25); + $this->space = new awSide(0, 0, 0, 0); + + // Component title + $this->title = new awLabel( + NULL, + new awTuffy(10), + NULL, + 0 + ); + $this->title->setAlign(awLabel::CENTER, awLabel::TOP); + + } + + /** + * Adjust automatically the component ? + * + * @param bool $auto + */ + public function auto($auto) { + $this->auto = (bool)$auto; + } + + /** + * Change the size of the component + * + * @param int $width Component width (from 0 to 1) + * @param int $height Component height (from 0 to 1) + */ + public function setSize($width, $height) { + + $this->width = (float)$width; + $this->height = (float)$height; + + } + + /** + * Change the absolute size of the component + * + * @param int $w Component width (in pixels) + * @param int $h Component height (in pixels) + */ + public function setAbsSize($w, $h) { + + $this->w = (int)$w; + $this->h = (int)$h; + + } + + /** + * Change component background color + * + * @param awColor $color (can be null) + */ + public function setBackgroundColor($color) { + if($color === NULL or $color instanceof awColor) { + $this->background = $color; + } + } + + /** + * Change component background gradient + * + * @param awGradient $gradient (can be null) + */ + public function setBackgroundGradient($gradient) { + if($gradient === NULL or $gradient instanceof awGradient) { + $this->background = $gradient; + } + } + + /** + * Change component background image + * + * @param awImage $image (can be null) + */ + public function setBackgroundImage($image) { + if($image === NULL or $image instanceof awImage) { + $this->background = $image; + } + } + + /** + * Return the component background + * + * @return Color, Gradient + */ + public function getBackground() { + return $this->background; + } + + /** + * Change component padding + * + * @param int $left Padding in pixels (NULL to keep old value) + * @param int $right Padding in pixels (NULL to keep old value) + * @param int $top Padding in pixels (NULL to keep old value) + * @param int $bottom Padding in pixels (NULL to keep old value) + */ + public function setPadding($left = NULL, $right = NULL, $top = NULL, $bottom = NULL) { + $this->padding->set($left, $right, $top, $bottom); + } + + /** + * Change component space + * + * @param float $left Space in % (NULL to keep old value) + * @param float $right Space in % (NULL to keep old value) + * @param float $bottom Space in % (NULL to keep old value) + * @param float $top Space in % (NULL to keep old value) + */ + public function setSpace($left = NULL, $right = NULL, $bottom = NULL, $top = NULL) { + $this->space->set($left, $right, $bottom, $top); + } + + /** + * Change the absolute position of the component on the graph + * + * @var int $x Left-top corner X position + * @var int $y Left-top corner Y position + */ + public function setAbsPosition($left, $top) { + + $this->left = (int)$left; + $this->top = (int)$top; + + } + + /** + * Set the center of the component + * + * @param int $x Position X of the center of the component + * @param int $y Position Y of the center of the component + */ + public function setCenter($x, $y) { + + $this->x = (float)$x; + $this->y = (float)$y; + + } + + /** + * Get component coords with its padding + * + * @return array Coords of the component + */ + public function getPosition() { + + // Get component coords + $x1 = $this->padding->left; + $y1 = $this->padding->top; + $x2 = $this->w - $this->padding->right; + $y2 = $this->h - $this->padding->bottom; + + return array($x1, $y1, $x2, $y2); + + } + + /** + * Init the drawing of the component + */ + public function init(awDriver $driver) { + + // Set component background + $background = $this->getBackground(); + + if($background !== NULL) { + + $p1 = new awPoint(0, 0); + $p2 = new awPoint($this->w - 1, $this->h - 1); + + if($background instanceof awImage) { + + $driver->copyImage( + $background, + $p1, + $p2 + ); + + } else { + + $driver->filledRectangle( + $background, + new awLine($p1, $p2) + ); + + } + + } + } + + /** + * Finalize the drawing of the component + */ + public function finalize(awDriver $driver) { + + // Draw component title + $point = new awPoint( + $this->w / 2, + $this->padding->top - 8 + ); + $this->title->draw($driver, $point); + + // Draw legend + $this->legend->draw($driver); + + } + + /** + * Draw the grid around your component + * + * @param Driver A driver + * @return array Coords for the component + */ + abstract public function drawEnvelope(awDriver $driver); + + /** + * Draw the component on the graph + * Component should be drawed into specified coords + * + * @param Driver A driver + * @param int $x1 + * @param int $y1 + * @param int $x2 + * @param int $y2 + * @param bool $aliasing Use anti-aliasing to draw the component ? + */ + abstract public function drawComponent(awDriver $driver, $x1, $y1, $x2, $y2, $aliasing); + + /** + * Get space width in pixels + * + * @param int $width Component width + * @param int $height Component height + * @return array + */ + protected function getSpace($width, $height) { + + $left = (int)($width * $this->space->left / 100); + $right = (int)($width * $this->space->right / 100); + $top = (int)($height * $this->space->top / 100); + $bottom = (int)($height * $this->space->bottom / 100); + + return array($left, $right, $top, $bottom); + + } + +} + +registerClass('Component', TRUE); +?> Property changes on: web/wordpresscsw/tools/statistics/Artichow/Component.class.php ___________________________________________________________________ Added: svn:executable + * Added: web/wordpresscsw/tools/statistics/Artichow/Graph.class.php =================================================================== --- web/wordpresscsw/tools/statistics/Artichow/Graph.class.php (rev 0) +++ web/wordpresscsw/tools/statistics/Artichow/Graph.class.php 2011-02-27 16:53:31 UTC (rev 340) @@ -0,0 +1,412 @@ +setSize($width, $height); + + if(ARTICHOW_CACHE) { + + $this->name = $name; + $this->timeout = $timeout; + + // Clean sometimes all the cache + if(mt_rand(0, 5000) === 0) { + awGraph::cleanCache(); + } + + // Take the graph from the cache if possible + if($this->name !== NULL) { + + $this->fileCache = ARTICHOW_CACHE_DIRECTORY."/".$this->name; + $this->fileCacheTime = $this->fileCache."-time"; + + if(is_file($this->fileCache)) { + + $type = awGraph::cleanGraphCache($this->fileCacheTime); + + if($type === NULL) { + awGraph::deleteFromCache($this->name); + } else { + header("Content-Type: image/".$type); + echo file_get_contents($this->fileCache); + exit; + } + + } + + } + + } + + $this->title = new awLabel( + NULL, + new awTuffy(16), + NULL, + 0 + ); + $this->title->setAlign(awLabel::CENTER, awLabel::BOTTOM); + + } + + /** + * Delete a graph from the cache + * + * @param string $name Graph name + * @return bool TRUE on success, FALSE on failure + */ + public static function deleteFromCache($name) { + + if(ARTICHOW_CACHE) { + + if(is_file(ARTICHOW_CACHE_DIRECTORY."/".$name."-time")) { + unlink(ARTICHOW_CACHE_DIRECTORY."/".$name.""); + unlink(ARTICHOW_CACHE_DIRECTORY."/".$name."-time"); + } + + } + + } + + /** + * Delete all graphs from the cache + */ + public static function deleteAllCache() { + + if(ARTICHOW_CACHE) { + + $dp = opendir(ARTICHOW_CACHE_DIRECTORY); + + while($file = readdir($dp)) { + if($file !== '.' and $file != '..') { + unlink(ARTICHOW_CACHE_DIRECTORY."/".$file); + } + } + + } + + } + + /** + * Clean cache + */ + public static function cleanCache() { + + if(ARTICHOW_CACHE) { + + $glob = glob(ARTICHOW_CACHE_DIRECTORY."/*-time"); + + foreach($glob as $file) { + + $type = awGraph::cleanGraphCache($file); + + if($type === NULL) { + $name = ereg_replace(".*/(.*)\-time", "\\1", $file); + awGraph::deleteFromCache($name); + } + + } + + } + + } + + /** + * Enable/Disable Graph timing + * + * @param bool $timing + */ + public function setTiming($timing) { + $this->timing = (bool)$timing; + } + + /** + * Add a component to the graph + * + * @param awComponent $component + */ + public function add(awComponent $component) { + + $this->components[] = $component; + + } + + /** + * Add a label to the component + * + * @param awLabel $label + * @param int $x Position on X axis of the center of the text + * @param int $y Position on Y axis of the center of the text + */ + public function addLabel(awLabel $label, $x, $y) { + + $this->labels[] = array( + $label, $x, $y + ); + + } + + /** + * Add a label to the component with absolute position + * + * @param awLabel $label + * @param awPoint $point Text position + */ + public function addAbsLabel(awLabel $label, awPoint $point) { + + $this->labels[] = array( + $label, $point + ); + + } + + /** + * Build the graph and draw component on it + * + * @param string $mode Display mode (can be a file name) + */ + public function draw($mode = Graph::DRAW_DISPLAY) { + + if($this->timing) { + $time = microtimeFloat(); + } + + $this->create(); + + foreach($this->components as $component) { + + $this->drawComponent($component); + + } + + $this->drawTitle(); + $this->drawShadow(); + $this->drawLabels(); + + if($this->timing) { + $this->drawTiming(microtimeFloat() - $time); + } + + // Create graph + $data = $this->get(); + + // Put the graph in the cache if needed + $this->cache($data); + + switch($mode) { + + case Graph::DRAW_DISPLAY : + $this->sendHeaders(); + echo $data; + break; + + case Graph::DRAW_RETURN : + return $data; + + default : + if(is_string($mode)) { + file_put_contents($mode, $data); + } else { + awImage::drawError("Class Graph: Unable to draw the graph."); + } + + } + + } + + private function drawLabels() { + + $driver = $this->getDriver(); + + foreach($this->labels as $array) { + + if(count($array) === 3) { + + // Text in relative position + list($label, $x, $y) = $array; + + $point = new awPoint( + $x * $this->width, + $y * $this->height + ); + + } else { + + // Text in absolute position + list($label, $point) = $array; + + } + + $label->draw($driver, $point); + + } + + } + + private function drawTitle() { + + $driver = $this->getDriver(); + + $point = new awPoint( + $this->width / 2, + 10 + ); + + $this->title->draw($driver, $point); + + } + + private function drawTiming($time) { + + $driver = $this->getDriver(); + + $label = new awLabel; + $label->set("(".sprintf("%.3f", $time)." s)"); + $label->setAlign(awLabel::LEFT, awLabel::TOP); + $label->border->show(); + $label->setPadding(1, 0, 0, 0); + $label->setBackgroundColor(new awColor(230, 230, 230, 25)); + + $label->draw($driver, new awPoint(5, $driver->imageHeight - 5)); + + } + + private function cache($data) { + if(ARTICHOW_CACHE and $this->name !== NULL) { + + if(is_writable(ARTICHOW_CACHE_DIRECTORY) === FALSE) { + awImage::drawError("Class Graph: Cache directory is not writable."); + } + + file_put_contents($this->fileCache, $data); + file_put_contents($this->fileCacheTime, $this->timeout."\n".$this->getFormatString()); + + } + } + + private static function cleanGraphCache($file) { + + list( + $time, + $type + ) = explode("\n", file_get_contents($file)); + + $time = (int)$time; + + if($time !== 0 and $time < time()) { + return NULL; + } else { + return $type; + } + + + } + +} + +registerClass('Graph'); + +/* + * To preserve PHP 4 compatibility + */ +function microtimeFloat() { + list($usec, $sec) = explode(" ", microtime()); + return (float)$usec + (float)$sec; +} +?> Property changes on: web/wordpresscsw/tools/statistics/Artichow/Graph.class.php ___________________________________________________________________ Added: svn:executable + * Added: web/wordpresscsw/tools/statistics/Artichow/Image.class.php =================================================================== --- web/wordpresscsw/tools/statistics/Artichow/Image.class.php (rev 0) +++ web/wordpresscsw/tools/statistics/Artichow/Image.class.php 2011-02-27 16:53:31 UTC (rev 340) @@ -0,0 +1,606 @@ +background = new awColor(255, 255, 255); + $this->shadow = new awShadow(awShadow::RIGHT_BOTTOM); + $this->border = new awBorder; + + } + + /** + * Get driver of the image + * + * @param int $w Driver width (from 0 to 1) (default to 1) + * @param int $h Driver height (from 0 to 1) (default to 1) + * @param float $x Position on X axis of the center of the driver (default to 0.5) + * @param float $y Position on Y axis of the center of the driver (default to 0.5) + * @return Driver + */ + public function getDriver($w = 1, $h = 1, $x = 0.5, $y = 0.5) { + $this->create(); + $this->driver->setSize($w, $h); + $this->driver->setPosition($x, $y); + return $this->driver; + } + + /** + * Sets the driver that will be used to draw the graph + * + * @param string $driverString + */ + public function setDriver($driverString) { + $this->driver = $this->selectDriver($driverString); + + $this->driver->init($this); + } + + /** + * Change the image size + * + * @var int $width Image width + * @var int $height Image height + */ + public function setSize($width, $height) { + + if($width !== NULL) { + $this->width = (int)$width; + } + if($height !== NULL) { + $this->height = (int)$height; + } + + } + + /** + * Change image background + * + * @param mixed $background + */ + public function setBackground($background) { + if($background instanceof awColor) { + $this->setBackgroundColor($background); + } elseif($background instanceof awGradient) { + $this->setBackgroundGradient($background); + } + } + + /** + * Change image background color + * + * @param awColor $color + */ + public function setBackgroundColor(awColor $color) { + $this->background = $color; + } + + /** + * Change image background gradient + * + * @param awGradient $gradient + */ + public function setBackgroundGradient(awGradient $gradient) { + $this->background = $gradient; + } + + /** + * Return image background, whether a Color or a Gradient + * + * @return mixed + */ + public function getBackground() { + return $this->background; + } + + /** + * Turn antialiasing on or off + * + * @var bool $bool + */ + public function setAntiAliasing($bool) { + $this->antiAliasing = (bool)$bool; + } + + /** + * Return the antialiasing setting + * + * @return bool + */ + public function getAntiAliasing() { + return $this->antiAliasing; + } + + /** + * Change image format + * + * @var int $format New image format + */ + public function setFormat($format) { + if($format === awImage::JPEG or $format === awImage::PNG or $format === awImage::GIF) { + $this->format = $format; + } + } + + /** + * Returns the image format as an integer + * + * @return unknown + */ + public function getFormat() { + return $this->format; + } + + /** + * Returns the image format as a string + * + * @return string + */ + public function getFormatString() { + + switch($this->format) { + case awImage::JPEG : + return 'jpeg'; + case awImage::PNG : + return 'png'; + case awImage::GIF : + return 'gif'; + } + + } + + /** + * Create a new awimage + */ + public function create() { + + if($this->driver === NULL) { + $driver = $this->selectDriver($this->driverString); + + $driver->init($this); + + $this->driver = $driver; + } + + } + + /** + * Select the correct driver + * + * @param string $driver The desired driver + * @return mixed + */ + protected function selectDriver($driver) { + $drivers = array('gd'); + $driver = strtolower((string)$driver); + + if(in_array($driver, $drivers, TRUE)) { + $string = $driver; + } else { + $string = ARTICHOW_DRIVER; + } + + switch ($string) { + case 'gd': + require_once ARTICHOW.'/inc/drivers/gd.class.php'; + $this->driverString = $string; + return new awGDDriver(); + + default: + // We should never get here, unless the wrong string is used AND the ARTICHOW_DRIVER + // global has been messed with. + awImage::drawError('Class Image: Unknown driver type (\''.$string.'\')'); + break; + } + } + + /** + * Draw a component on the image + * + * @var awComponent $component A component + */ + public function drawComponent(awComponent $component) { + + $shadow = $this->shadow->getSpace(); // Image shadow + $border = $this->border->visible() ? 1 : 0; // Image border size + + $driver = clone $this->driver; + $driver->setImageSize( + $this->width - $shadow->left - $shadow->right - $border * 2, + $this->height - $shadow->top - $shadow->bottom - $border * 2 + ); + + // No absolute size specified + if($component->w === NULL and $component->h === NULL) { + + list($width, $height) = $driver->setSize($component->width, $component->height); + + // Set component size in pixels + $component->setAbsSize($width, $height); + + } else { + + $driver->setAbsSize($component->w, $component->h); + + } + + if($component->top !== NULL and $component->left !== NULL) { + $driver->setAbsPosition( + $border + $shadow->left + $component->left, + $border + $shadow->top + $component->top + ); + } else { + $driver->setPosition($component->x, $component->y); + } + + $driver->movePosition($border + $shadow->left, $border + $shadow->top); + + list($x1, $y1, $x2, $y2) = $component->getPosition(); + + $component->init($driver); + + $component->drawComponent($driver, $x1, $y1, $x2, $y2, $this->antiAliasing); + $component->drawEnvelope($driver, $x1, $y1, $x2, $y2); + + $component->finalize($driver); + + } + + protected function drawShadow() { + + $driver = $this->getDriver(); + + $this->shadow->draw( + $driver, + new awPoint(0, 0), + new awPoint($this->width, $this->height), + awShadow::IN + ); + + } + + /** + * Send the image into a file or to the user browser + * + */ + public function send() { + $this->driver->send($this); + } + + /** + * Return the image content as binary data + * + */ + public function get() { + return $this->driver->get($this); + } + + /** + * Send the correct HTTP header according to the image type + * + */ + public function sendHeaders() { + + if(headers_sent() === FALSE) { + + switch ($this->driverString) { + case 'gd' : + header('Content-type: image/'.$this->getFormatString()); + break; + + } + + } + + } + + + private static $errorWriting = FALSE; + + + /* + * Display an error image and exit + * + * @param string $message Error message + */ + public static function drawError($message) { + + + if(self::$errorWriting) { + return; + } + + self::$errorWriting = TRUE; + + $message = wordwrap($message, 40, "\n", TRUE); + + $width = 400; + $height = max(100, 40 + 22.5 * (substr_count($message, "\n") + 1)); + + $image = new awImage(); + $image->setSize($width, $height); + $image->setDriver('gd'); + + $driver = $image->getDriver(); + $driver->init($image); + + // Display title + $driver->filledRectangle( + new awWhite, + new awLine( + new awPoint(0, 0), + new awPoint($width, $height) + ) + ); + + $driver->filledRectangle( + new awRed, + new awLine( + new awPoint(0, 0), + new awPoint(110, 25) + ) + ); + + $text = new awText( + "Artichow error", + new awFont3, + new awWhite, + 0 + ); + + $driver->string($text, new awPoint(5, 6)); + + // Display red box + $driver->rectangle( + new awRed, + new awLine( + new awPoint(0, 25), + new awPoint($width - 90, $height - 1) + ) + ); + + // Display error image + $file = ARTICHOW_IMAGE.DIRECTORY_SEPARATOR.'error.png'; + + $imageError = new awFileImage($file); + $driver->copyImage( + $imageError, + new awPoint($width - 81, $height - 81), + new awPoint($width - 1, $height - 1) + ); + + // Draw message + $text = new awText( + strip_tags($message), + new awFont2, + new awBlack, + 0 + ); + + $driver->string($text, new awPoint(10, 40)); + + $image->send(); + + exit; + + } + + /* + * Display an error image located in a file and exit + * + * @param string $error Error name + */ + public static function drawErrorFile($error) { + + $file = ARTICHOW_IMAGE.DIRECTORY_SEPARATOR.'errors'.DIRECTORY_SEPARATOR.$error.'.png'; + + header("Content-Type: image/png"); + readfile($file); + exit; + + } + +} + +registerClass('Image'); + + +/** + * Load an image from a file + * + * @package Artichow + */ +class awFileImage extends awImage { + + /** + * Build a new awimage + * + * @param string $file Image file name + */ + public function __construct($file) { + + $driver = $this->selectDriver($this->driverString); + + $driver->initFromFile($this, $file); + + $this->driver = $driver; + + } + +} + +registerClass('FileImage'); + +?> Property changes on: web/wordpresscsw/tools/statistics/Artichow/Image.class.php ___________________________________________________________________ Added: svn:executable + * Added: web/wordpresscsw/tools/statistics/Artichow/LinePlot.class.php =================================================================== --- web/wordpresscsw/tools/statistics/Artichow/LinePlot.class.php (rev 0) +++ web/wordpresscsw/tools/statistics/Artichow/LinePlot.class.php 2011-02-27 16:53:31 UTC (rev 340) @@ -0,0 +1,585 @@ +mark = new awMark; + $this->label = new awLabel; + + $this->lineMode = (int)$mode; + + $this->setValues($values); + + } + + /** + * Hide line + * + * @param bool $hide + */ + public function hideLine($hide) { + $this->lineHide = (bool)$hide; + } + + /** + * Add a filled area + * + * @param int $start Begining of the area + * @param int $end End of the area + * @param mixed $background Background color or gradient of the area + */ + public function setFilledArea($start, $stop, $background) { + + if($stop <= $start) { + awImage::drawError("Class LinePlot: End position can not be greater than begin position in setFilledArea()."); + } + + $this->areas[] = array((int)$start, (int)$stop, $background); + + } + + /** + * Change line color + * + * @param awColor $color + */ + public function setColor(awColor $color) { + $this->lineColor = $color; + } + + /** + * Change line style + * + * @param int $style + */ + public function setStyle($style) { + $this->lineStyle = (int)$style; + } + + /** + * Change line tickness + * + * @param int $tickness + */ + public function setThickness($tickness) { + $this->lineThickness = (int)$tickness; + } + + /** + * Change line background color + * + * @param awColor $color + */ + public function setFillColor(awColor $color) { + $this->lineBackground = $color; + } + + /** + * Change line background gradient + * + * @param awGradient $gradient + */ + public function setFillGradient(awGradient $gradient) { + $this->lineBackground = $gradient; + } + + /** + * Get the line thickness + * + * @return int + */ + public function getLegendLineThickness() { + return $this->lineThickness; + } + + /** + * Get the line type + * + * @return int + */ + public function getLegendLineStyle() { + return $this->lineStyle; + } + + /** + * Get the color of line + * + * @return Color + */ + public function getLegendLineColor() { + return $this->lineColor; + } + + /** + * Get the background color or gradient of an element of the component + * + * @return Color, Gradient + */ + public function getLegendBackground() { + return $this->lineBackground; + } + + /** + * Get a mark object + * + * @return Mark + */ + public function getLegendMark() { + return $this->mark; + } + + public function drawComponent(awDriver $driver, $x1, $y1, $x2, $y2, $aliasing) { + + $max = $this->getRealYMax(); + $min = $this->getRealYMin(); + + // Get start and stop values + list($start, $stop) = $this->getLimit(); + + if($this->lineMode === awLinePlot::MIDDLE) { + $inc = $this->xAxis->getDistance(0, 1) / 2; + } else { + $inc = 0; + } + + // Build the polygon + $polygon = new awPolygon; + + for($key = $start; $key <= $stop; $key++) { + + $value = $this->datay[$key]; + + if($value !== NULL) { + + $p = awAxis::toPosition($this->xAxis, $this->yAxis, new awPoint($key, $value)); + $p = $p->move($inc, 0); + $polygon->set($key, $p); + + } + + } + + // Draw backgrounds + if($this->lineBackground instanceof awColor or $this->lineBackground instanceof awGradient) { + + $backgroundPolygon = new awPolygon; + + $p = $this->xAxisPoint($start); + $p = $p->move($inc, 0); + $backgroundPolygon->append($p); + + // Add others points + foreach($polygon->all() as $point) { + $backgroundPolygon->append(clone $point); + } + + $p = $this->xAxisPoint($stop); + $p = $p->move($inc, 0); + $backgroundPolygon->append($p); + + // Draw polygon background + $driver->filledPolygon($this->lineBackground, $backgroundPolygon); + + } + + $this->drawArea($driver, $polygon); + + // Draw line + $prev = NULL; + + // Line color + if($this->lineHide === FALSE) { + + if($this->lineColor === NULL) { + $this->lineColor = new awColor(0, 0, 0); + } + + foreach($polygon->all() as $point) { + + if($prev !== NULL) { + $driver->line( + $this->lineColor, + new awLine( + $prev, + $point, + $this->lineStyle, + $this->lineThickness + ) + ); + } + $prev = $point; + + } + + } + + // Draw marks and labels + foreach($polygon->all() as $key => $point) { + + $this->mark->draw($driver, $point); + $this->label->draw($driver, $point, $key); + + } + + } + + protected function drawArea(awDriver $driver, awPolygon $polygon) { + + $starts = array(); + foreach($this->areas as $area) { + list($start) = $area; + $starts[$start] = TRUE; + } + + // Draw filled areas + foreach($this->areas as $area) { + + list($start, $stop, $background) = $area; + + $polygonArea = new awPolygon; + + $p = $this->xAxisPoint($start); + $polygonArea->append($p); + + for($i = $start; $i <= $stop; $i++) { + $p = clone $polygon->get($i); + if($i === $stop and array_key_exists($stop, $starts)) { + $p = $p->move(-1, 0); + } + $polygonArea->append($p); + } + + $p = $this->xAxisPoint($stop); + if(array_key_exists($stop, $starts)) { + $p = $p->move(-1, 0); + } + $polygonArea->append($p); + + // Draw area + $driver->filledPolygon($background, $polygonArea); + + } + + } + + public function getXAxisNumber() { + if($this->lineMode === awLinePlot::MIDDLE) { + return count($this->datay) + 1; + } else { + return count($this->datay); + } + } + + protected function xAxisPoint($position) { + $y = $this->xAxisZero ? 0 : $this->getRealYMin(); + return awAxis::toPosition($this->xAxis, $this->yAxis, new awPoint($position, $y)); + } + + public function getXCenter() { + return ($this->lineMode === awLinePlot::MIDDLE); + } + +} + +registerClass('LinePlot'); + + +/** + * Simple LinePlot + * Useful to draw simple horizontal lines + * + * @package Artichow + */ +class awSimpleLinePlot extends awPlot implements awLegendable { + + /** + * Line color + * + * @var Color + */ + protected $lineColor; + + /** + * Line start + * + * @var int + */ + protected $lineStart; + + /** + * Line stop + * + * @var int + */ + protected $lineStop; + + /** + * Line value + * + * @var flaot + */ + protected $lineValue; + + /** + * Line mode + * + * @var int + */ + protected $lineMode = awLinePlot::LINE; + + /** + * Line type + * + * @var int + */ + protected $lineStyle = awLine::SOLID; + + /** + * Line thickness + * + * @var int + */ + protected $lineThickness = 1; + + /** + * Line mode + * + * @var int + */ + const LINE = 0; + + /** + * Line in the middle + * + * @var int + */ + const MIDDLE = 1; + + /** + * Construct a new awLinePlot + * + * @param float $value A Y value + * @param int $start Line start index + * @param int $stop Line stop index + * @param int $mode Line mode + */ + public function __construct($value, $start, $stop, $mode = awLinePlot::LINE) { + + parent::__construct(); + + $this->lineMode = (int)$mode; + + $this->lineStart = (int)$start; + $this->lineStop = (int)$stop; + $this->lineValue = (float)$value; + + $this->lineColor = new awColor(0, 0, 0); + + } + + /** + * Change line color + * + * @param awColor $color + */ + public function setColor(awColor $color) { + $this->lineColor = $color; + } + + /** + * Change line style + * + * @param int $style + */ + public function setStyle($style) { + $this->lineStyle = (int)$style; + } + + /** + * Change line tickness + * + * @param int $tickness + */ + public function setThickness($tickness) { + $this->lineThickness = (int)$tickness; + } + + /** + * Get the line thickness + * + * @return int + */ + public function getLegendLineThickness() { + return $this->lineThickness; + } + + /** + * Get the line type + * + * @return int + */ + public function getLegendLineStyle() { + return $this->lineStyle; + } + + /** + * Get the color of line + * + * @return Color + */ + public function getLegendLineColor() { + return $this->lineColor; + } + + public function getLegendBackground() { + return NULL; + } + + public function getLegendMark() { + return NULL; + } + + public function drawComponent(awDriver $driver, $x1, $y1, $x2, $y2, $aliasing) { + + if($this->lineMode === awLinePlot::MIDDLE) { + $inc = $this->xAxis->getDistance(0, 1) / 2; + } else { + $inc = 0; + } + + $p1 = awAxis::toPosition($this->xAxis, $this->yAxis, new awPoint($this->lineStart, $this->lineValue)); + $p2 = awAxis::toPosition($this->xAxis, $this->yAxis, new awPoint($this->lineStop, $this->lineValue)); + + $driver->line( + $this->lineColor, + new awLine( + $p1->move($inc, 0), + $p2->move($inc, 0), + $this->lineStyle, + $this->lineThickness + ) + ); +} + + public function getXAxisNumber() { + if($this->lineMode === awLinePlot::MIDDLE) { + return count($this->datay) + 1; + } else { + return count($this->datay); + } + } + + protected function xAxisPoint($position) { + $y = $this->xAxisZero ? 0 : $this->getRealYMin(); + return awAxis::toPosition($this->xAxis, $this->yAxis, new awPoint($position, $y)); + } + + public function getXCenter() { + return ($this->lineMode === awLinePlot::MIDDLE); + } + +} + +registerClass('SimpleLinePlot'); +?> Property changes on: web/wordpresscsw/tools/statistics/Artichow/LinePlot.class.php ___________________________________________________________________ Added: svn:executable + * Added: web/wordpresscsw/tools/statistics/Artichow/MathPlot.class.php =================================================================== --- web/wordpresscsw/tools/statistics/Artichow/MathPlot.class.php (rev 0) +++ web/wordpresscsw/tools/statistics/Artichow/MathPlot.class.php 2011-02-27 16:53:31 UTC (rev 340) @@ -0,0 +1,439 @@ +f = (string)$f; + $this->fromX = is_null($fromX) ? NULL : (float)$fromX; + $this->toX = is_null($toX) ? NULL : (float)$toX; + + $this->line = new awLine; + $this->mark = new awMark; + $this->color = new awBlack; + + } + + /** + * Change line color + * + * @param awColor $color A new awcolor + */ + public function setColor(awColor $color) { + $this->color = $color; + } + + /** + * Get line color + * + * @return Color + */ + public function getColor() { + return $this->color; + } + + /** + * Get the background color or gradient of an element of the component + * + * @return Color, Gradient + */ + public function getLegendBackground() { + } + + /** + * Get the line thickness + * + * @return NULL + */ + public function getLegendLineThickness() { + return $this->line->getThickness(); + } + + /** + * Get the line type + * + * @return NULL + */ + public function getLegendLineStyle() { + return $this->line->getStyle(); + } + + /** + * Get the color of line + * + * @return NULL + */ + public function getLegendLineColor() { + return $this->color; + } + + /** + * Get a mark object + * + * @return NULL + */ + public function getLegendMark() { + return $this->mark; + } + +} + +registerClass('MathFunction'); + +/** + * For mathematics functions + * + * @package Artichow + */ +class awMathPlot extends awComponent { + + /** + * Functions + * + * @var array + */ + protected $functions = array(); + + /** + * Grid properties + * + * @var Grid + */ + public $grid; + + /** + * X axis + * + * @var Axis + */ + public $xAxis; + + /** + * Y axis + * + * @var Axis + */ + public $yAxis; + + /** + * Extremum + * + * @var Side + */ + private $extremum = NULL; + + /** + * Interval + * + * @var float + */ + private $interval = 1; + + /** + * Build the plot + * + * @param int $xMin Minimum X value + * @param int $xMax Maximum X value + * @param int $yMax Maximum Y value + * @param int $yMin Minimum Y value + */ + public function __construct($xMin, $xMax, $yMax, $yMin) { + + parent::__construct(); + + $this->setPadding(8, 8, 8, 8); + + $this->grid = new awGrid; + + // Hide grid by default + $this->grid->hide(TRUE); + + // Set extremum + $this->extremum = new awSide($xMin, $xMax, $yMax, $yMin); + + // Create axis + $this->xAxis = new awAxis; + $this->xAxis->setTickStyle(awTick::IN); + $this->xAxis->label->hideValue(0); + $this->initAxis($this->xAxis); + + $this->yAxis = new awAxis; + $this->yAxis->setTickStyle(awTick::IN); + $this->yAxis->label->hideValue(0); + $this->initAxis($this->yAxis); + + } + + protected function initAxis(awAxis $axis) { + + $axis->setLabelPrecision(1); + $axis->addTick('major', new awTick(0, 5)); + $axis->addTick('minor', new awTick(0, 3)); + $axis->addTick('micro', new awTick(0, 1)); + $axis->setNumberByTick('minor', 'major', 1); + $axis->setNumberByTick('micro', 'minor', 4); + $axis->label->setFont(new awTuffy(7)); + + } + + /** + * Interval to calculate values + * + * @param float $interval + */ + public function setInterval($interval) { + $this->interval = (float)$interval; + } + + /** + * Add a formula f(x) + * + * @param awMathFunction $function + * @param string $name Name for the legend (can be NULL if you don't want to set a legend) + * @param int $type Type for the legend + */ + public function add(awMathFunction $function, $name = NULL, $type = awLegend::LINE) { + + $this->functions[] = $function; + + if($name !== NULL) { + $this->legend->add($function, $name, $type); + } + + } + + public function init(awDriver $driver) { + + list($x1, $y1, $x2, $y2) = $this->getPosition(); + + $this->xAxis->line->setX($x1, $x2); + $this->xAxis->label->setAlign(NULL, awLabel::BOTTOM); + $this->xAxis->label->move(0, 3); + $this->xAxis->setRange($this->extremum->left, $this->extremum->right); + + $this->yAxis->line->setY($y2, $y1); + $this->yAxis->label->setAlign(awLabel::RIGHT); + $this->yAxis->label->move(-6, 0); + $this->yAxis->reverseTickStyle(); + $this->yAxis->setRange($this->extremum->bottom, $this->extremum->top); + + + $this->xAxis->setYCenter($this->yAxis, 0); + $this->yAxis->setXCenter($this->xAxis, 0); + + if($this->yAxis->getLabelNumber() === NULL) { + $number = $this->extremum->top - $this->extremum->bottom + 1; + $this->yAxis->setLabelNumber($number); + } + + if($this->xAxis->getLabelNumber() === NULL) { + $number = $this->extremum->right - $this->extremum->left + 1; + $this->xAxis->setLabelNumber($number); + } + + // Set ticks + + $this->xAxis->tick('major')->setNumber($this->xAxis->getLabelNumber()); + $this->yAxis->tick('major')->setNumber($this->yAxis->getLabelNumber()); + + + // Set axis labels + $labels = array(); + for($i = 0, $count = $this->xAxis->getLabelNumber(); $i < $count; $i++) { + $labels[] = $i; + } + $this->xAxis->label->set($labels); + + $labels = array(); + for($i = 0, $count = $this->yAxis->getLabelNumber(); $i < $count; $i++) { + $labels[] = $i; + } + $this->yAxis->label->set($labels); + + parent::init($driver); + + // Create the grid + $this->createGrid(); + + // Draw the grid + $this->grid->draw($driver, $x1, $y1, $x2, $y2); + + } + + public function drawEnvelope(awDriver $driver) { + + // Draw axis + $this->xAxis->draw($driver); + $this->yAxis->draw($driver); + + } + + public function drawComponent(awDriver $driver, $x1, $y1, $x2, $y2, $aliasing) { + + foreach($this->functions as $function) { + + $f = $function->f; + $fromX = is_null($function->fromX) ? $this->extremum->left : $function->fromX; + $toX = is_null($function->toX) ? $this->extremum->right : $function->toX; + + $old = NULL; + + for($i = $fromX; $i <= $toX; $i += $this->interval) { + + $p = awAxis::toPosition($this->xAxis, $this->yAxis, new awPoint($i, $f($i))); + + if($p->y >= $y1 and $p->y <= $y2) { + $function->mark->draw($driver, $p); + } + + if($old !== NULL) { + + $line = $function->line; + $line->setLocation($old, $p); + + if( + ($line->p1->y >= $y1 and $line->p1->y <= $y2) or + ($line->p2->y >= $y1 and $line->p2->y <= $y2) + ) { + $driver->line( + $function->getColor(), + $line + ); + } + + } + + $old = $p; + + } + + // Draw last point if needed + if($old !== NULL and $i - $this->interval != $toX) { + + $p = awAxis::toPosition($this->xAxis, $this->yAxis, new awPoint($toX, $f($toX))); + + if($p->y >= $y1 and $p->y <= $y2) { + $function->mark->draw($driver, $p); + } + + + $line = $function->line; + $line->setLocation($old, $p); + + if( + ($line->p1->y >= $y1 and $line->p1->y <= $y2) or + ($line->p2->y >= $y1 and $line->p2->y <= $y2) + ) { + $driver->line( + $function->getColor(), + $line + ); + } + + } + + } + + } + + protected function createGrid() { + + // Horizontal lines of the grid + + $major = $this->yAxis->tick('major'); + $interval = $major->getInterval(); + $number = $this->yAxis->getLabelNumber() - 1; + + $h = array(); + if($number > 0) { + for($i = 0; $i <= $number; $i++) { + $h[] = $i / $number; + } + } + + // Vertical lines + + $major = $this->xAxis->tick('major'); + $interval = $major->getInterval(); + $number = $this->xAxis->getLabelNumber() - 1; + + $w = array(); + if($number > 0) { + for($i = 0; $i <= $number; $i++) { + if($i%$interval === 0) { + $w[] = $i / $number; + } + } + } + + $this->grid->setGrid($w, $h); + + } + +} + +registerClass('MathPlot'); +?> \ No newline at end of file Property changes on: web/wordpresscsw/tools/statistics/Artichow/MathPlot.class.php ___________________________________________________________________ Added: svn:executable + * Added: web/wordpresscsw/tools/statistics/Artichow/Pattern.class.php =================================================================== --- web/wordpresscsw/tools/statistics/Artichow/Pattern.class.php (rev 0) +++ web/wordpresscsw/tools/statistics/Artichow/Pattern.class.php 2011-02-27 16:53:31 UTC (rev 340) @@ -0,0 +1,97 @@ +args[$name] = $value; + } + } + + /** + * Get an argument + * + * @param string $name + * @param mixed $default Default value if the argument does not exist (default to NULL) + * @return mixed Argument value + */ + protected function getArg($name, $default = NULL) { + if(array_key_exists($name, $this->args)) { + return $this->args[$name]; + } else { + return $default; + } + } + + /** + * Change several arguments + * + * @param array $args New arguments + */ + public function setArgs($args) { + if(is_array($args)) { + foreach($args as $name => $value) { + $this->setArg($name, $value); + } + } + } + +} + +registerClass('Pattern', TRUE); +?> \ No newline at end of file Property changes on: web/wordpresscsw/tools/statistics/Artichow/Pattern.class.php ___________________________________________________________________ Added: svn:executable + * Added: web/wordpresscsw/tools/statistics/Artichow/Pie.class.php =================================================================== --- web/wordpresscsw/tools/statistics/Artichow/Pie.class.php (rev 0) +++ web/wordpresscsw/tools/statistics/Artichow/Pie.class.php 2011-02-27 16:53:31 UTC (rev 340) @@ -0,0 +1,695 @@ +setValues($values); + + if(is_array($colors)) { + $this->colors = $colors; + } else { + + switch($colors) { + + case awPie::AQUA : + $this->colors = array( + new awColor(131, 220, 215), + new awColor(131, 190, 215), + new awColor(131, 160, 215), + new awColor(160, 140, 215), + new awColor(190, 131, 215), + new awColor(220, 131, 215) + ); + break; + + case awPie::EARTH : + $this->colors = array( + new awColor(97, 179, 110), + new awColor(130, 179, 97), + new awColor(168, 179, 97), + new awColor(179, 147, 97), + new awColor(179, 108, 97), + new awColor(99, 107, 189), + new awColor(99, 165, 189) + ); + break; + + case awPie::DARK : + $this->colors = array( + new awColor(140, 100, 170), + new awColor(130, 170, 100), + new awColor(160, 160, 120), + new awColor(150, 110, 140), + new awColor(130, 150, 160), + new awColor(90, 170, 140) + ); + break; + + default : + $this->colors = array( + new awColor(187, 213, 151), + new awColor(223, 177, 151), + new awColor(111, 186, 132), + new awColor(197, 160, 230), + new awColor(165, 169, 63), + new awColor(218, 177, 89), + new awColor(116, 205, 121), + new awColor(200, 201, 78), + new awColor(127, 205, 177), + new awColor(205, 160, 160), + new awColor(190, 190, 190) + ); + break; + + } + + } + + parent::__construct(); + + $this->label = new awLabel; + $this->label->setCallbackFunction('callbackPerCent'); + + } + + /** + * Change legend values + * + * @param array $legend An array of values for each part of the pie + */ + public function setLegend($legend) { + + $this->legendValues = (array)$legend; + + } + + /** + * Set a border all around the pie + * + * @param awColor $color A color for the border + */ + public function setBorderColor(awColor $color) { + $this->border = $color; + } + + /** + * Set a border all around the pie + * + * @param awColor $color A color for the border + */ + public function setBorder(awColor $color) { + if(ARTICHOW_DEPRECATED === TRUE) { + awImage::drawError('Class Pie: Method setBorder() has been deprecated since Artichow 1.0.9. Please use setBorderColor() instead.'); + } else { + $this->setBorderColor($color); + } + } + + /** + * Change 3D effect intensity + * + * @param int $size Effect size + */ + public function set3D($size) { + $this->size = (int)$size; + } + + /** + * Change initial angle + * + * @param int $angle New angle in degrees + */ + public function setStartAngle($angle) { + $this->angle = (int)$angle; + } + + /** + * Change label precision + * + * @param int $precision New precision + */ + public function setLabelPrecision($precision) { + $this->precision = (int)$precision; + } + + /** + * Change label position + * + * @param int $position New position in pixels + */ + public function setLabelPosition($position) { + $this->position = (int)$position; + } + + /** + * Change label number + * + * @param int $number New number + */ + public function setLabelNumber($number) { + $this->number = is_null($number) ? $number : (int)$number; + } + + /** + * Change label minimum + * + * @param int $minimum New minimum + */ + public function setLabelMinimum($minimum) { + $this->minimum = is_null($minimum) ? $minimum : (int)$minimum; + } + + /** + * Change Pie explode + * + * @param array $explode + */ + public function explode($explode) { + $this->explode = (array)$explode; + } + + public function drawEnvelope(awDriver $driver) { + + } + + public function drawComponent(awDriver $driver, $x1, $y1, $x2, $y2, $aliasing) { + + $count = count($this->values); + $sum = array_sum($this->values); + + $width = $x2 - $x1; + $height = $y2 - $y1; + + if($aliasing) { + $x = $width / 2; + $y = $height / 2; + } else { + $x = $width / 2 + $x1; + $y = $height / 2 + $y1; + } + + $position = $this->angle; + $values = array(); + $parts = array(); + $angles = 0; + + if($aliasing) { + $side = new awSide(0, 0, 0, 0); + } + + foreach($this->values as $key => $value) { + + $angle = ($value / $sum * 360); + + if($key === $count - 1) { + $angle = 360 - $angles; + } + + $angles += $angle; + + if(array_key_exists($key, $this->explode)) { + $middle = 360 - ($position + $angle / 2); + $posX = $this->explode[$key] * cos($middle * M_PI / 180); + $posY = $this->explode[$key] * sin($middle * M_PI / 180) * -1; + + if($aliasing) { + $explode = new awPoint( + $posX * 2, + $posY * 2 + ); + $side->set( + max($side->left, $posX * -2), + max($side->right, $posX * 2), + max($side->top, $posY * -2), + max($side->bottom, $posY * 2) + ); + } else { + $explode = new awPoint( + $posX, + $posY + ); + } + + } else { + $explode = new awPoint(0, 0); + } + + $values[$key] = array( + $position, ($position + $angle), $explode + ); + + $color = $this->colors[$key % count($this->colors)]; + $parts[$key] = new awPiePart($color); + + // Add part to the legend + $legend = array_key_exists($key, $this->legendValues) ? $this->legendValues[$key] : $key; + $this->legend->add($parts[$key], $legend, awLegend::BACKGROUND); + + $position += $angle; + + } + + if($aliasing) { + + $mainDriver = $driver; + + $x *= 2; + $y *= 2; + $width *= 2; + $height *= 2; + $this->size *= 2; + + $image = new awImage; + $image->border->hide(); + + // Adds support for antialiased pies on non-white background + $background = $this->getBackground(); + + if($background instanceof awColor) { + $image->setBackgroundColor($background); + } +// elseif($background instanceof awGradient) { +// $image->setBackgroundColor(new White(100)); +// } + + $image->setSize( + $width + $side->left + $side->right, + $height + $side->top + $side->bottom + $this->size + 1 /* bugs.php.net ! */ + ); + + $driver = $image->getDriver( + $width / $image->width, + $height / $image->height, + ($width / 2 + $side->left) / $image->width, + ($height / 2 + $side->top) / $image->height + ); + + } + + // Draw 3D effect + for($i = $this->size; $i > 0; $i--) { + + foreach($values as $key => $value) { + + $color = clone $this->colors[$key % count($this->colors)]; + $color->brightness(-50); + + list($from, $to, $explode) = $value; + + $driver->filledArc($color, $explode->move($x, $y + $i), $width, $height, $from, $to); + + unset($color); + + if($this->border instanceof awColor) { + + $point = $explode->move($x, $y); + + if($i === $this->size) { + + $driver->arc($this->border, $point->move(0, $this->size), $width, $height, $from, $to); + + } + + } + + } + + } + + foreach($values as $key => $value) { + + $color = $this->colors[$key % count($this->colors)]; + + list($from, $to, $explode) = $value; + + $driver->filledArc($color, $explode->move($x, $y), $width, $height, $from, $to); + + if($this->border instanceof awColor) { + + $point = $explode->move($x, $y); + $driver->arc($this->border, $point, $width, $height, $from, $to); + } + + } + + if($aliasing) { + + $x = $x / 2 + $x1; + $y = $y / 2 + $y1; + $width /= 2; + $height /= 2; + $this->size /= 2; + + foreach($values as $key => $value) { + $old = $values[$key][2]; + $values[$key][2] = new awPoint( + $old->x / 2, $old->y / 2 + ); + } + + $mainDriver->copyResizeImage( + $image, + new awPoint($x1 - $side->left / 2, $y1 - $side->top / 2), + new awPoint($x1 - $side->left / 2 + $image->width / 2, $y1 - $side->top / 2 + $image->height/ 2), + new awPoint(0, 0), + new awPoint($image->width, $image->height), + TRUE + ); + + $driver = $mainDriver; + + } + + // Get labels values + $pc = array(); + foreach($this->values as $key => $value) { + $pc[$key] = round($value / $sum * 100, $this->precision); + } + if($this->label->count() === 0) { // Check that there is no user defined values + $this->label->set($pc); + } + + $position = 0; + + foreach($pc as $key => $value) { + + // Limit number of labels to display + if($position === $this->number) { + break; + } + + if(is_null($this->minimum) === FALSE and $value < $this->minimum) { + continue; + } + + $position++; + + list($from, $to, $explode) = $values[$key]; + + $angle = $from + ($to - $from) / 2; + $angleRad = (360 - $angle) * M_PI / 180; + + $point = new awPoint( + $x + $explode->x + cos($angleRad) * ($width / 2 + $this->position), + $y + $explode->y - sin($angleRad) * ($height / 2 + $this->position) + ); + + $angle %= 360; + + // We don't display labels on the 3D effect + if($angle > 0 and $angle < 180) { + $point = $point->move(0, -1 * sin($angleRad) * $this->size); + } + + if($angle >= 45 and $angle < 135) { + $this->label->setAlign(awLabel::CENTER, awLabel::BOTTOM); + } else if($angle >= 135 and $angle < 225) { + $this->label->setAlign(awLabel::RIGHT, awLabel::MIDDLE); + } else if($angle >= 225 and $angle < 315) { + $this->label->setAlign(awLabel::CENTER, awLabel::TOP); + } else { + $this->label->setAlign(awLabel::LEFT, awLabel::MIDDLE); + } + + $this->label->draw( + $driver, + $point, + $key + ); + + } + + } + + /** + * Return margins around the component + * + * @return array Left, right, top and bottom margins + */ + public function getMargin() { + + // Get axis informations + + $leftAxis = $this->padding->left; + $rightAxis = $this->padding->right; + $topAxis = $this->padding->top; + $bottomAxis = $this->padding->bottom; + + return array($leftAxis, $rightAxis, $topAxis, $bottomAxis); + + } + + + /** + * Change values of Y axis + * This method ignores not numeric values + * + * @param array $values + */ + public function setValues($values) { + + $this->checkArray($values); + $this->values = $values; + + } + + + /** + * Return values of Y axis + * + * @return array + */ + public function getValues() { + return $this->values; + } + + private function checkArray(&$array) { + + if(is_array($array) === FALSE) { + awImage::drawError("Class Pie: You tried to set values that are not an array."); + } + + foreach($array as $key => $value) { + if(is_numeric($value) === FALSE) { + unset($array[$key]); + } + } + + if(count($array) < 1) { + awImage::drawError("Class Pie: Your graph must have at least 1 value."); + } + + } + +} + +registerClass('Pie'); + +/** + * Pie + * + * @package Artichow + */ +class awPiePart implements awLegendable { + + /** + * Pie part color + * + * @var Color + */ + protected $color; + + /** + * Build a new awPiePart + * + * @param awColor $color Pie part color + */ + public function __construct(awColor $color) { + + $this->color = $color; + + } + + /** + * Get the background color or gradient of an element of the component + * + * @return Color, Gradient + */ + public function getLegendBackground() { + return $this->color; + } + + /** + * Get the line thickness + * + * @return NULL + */ + public function getLegendLineThickness() { + } + + /** + * Get the line type + * + * @return NULL + */ + public function getLegendLineStyle() { + } + + /** + * Get the color of line + * + * @return NULL + */ + public function getLegendLineColor() { + } + + /** + * Get a mark object + * + * @return NULL + */ + public function getLegendMark() { + } + +} + +registerClass('PiePart'); + +function callbackPerCent($value) { + return $value.'%'; +} +?> \ No newline at end of file Property changes on: web/wordpresscsw/tools/statistics/Artichow/Pie.class.php ___________________________________________________________________ Added: svn:executable + * Added: web/wordpresscsw/tools/statistics/Artichow/Plot.class.php =================================================================== --- web/wordpresscsw/tools/statistics/Artichow/Plot.class.php (rev 0) +++ web/wordpresscsw/tools/statistics/Artichow/Plot.class.php 2011-02-27 16:53:31 UTC (rev 340) @@ -0,0 +1,1464 @@ +grid = new awGrid; + $this->grid->setBackgroundColor(new awWhite); + + $this->padding->add(20, 0, 0, 20); + + $this->xAxis = new awAxis; + $this->xAxis->addTick('major', new awTick(0, 5)); + $this->xAxis->addTick('minor', new awTick(0, 3)); + $this->xAxis->setTickStyle(awTick::OUT); + $this->xAxis->label->setFont(new awTuffy(7)); + + $this->yAxis = new awAxis; + $this->yAxis->auto(TRUE); + $this->yAxis->addTick('major', new awTick(0, 5)); + $this->yAxis->addTick('minor', new awTick(0, 3)); + $this->yAxis->setTickStyle(awTick::OUT); + $this->yAxis->setNumberByTick('minor', 'major', 3); + $this->yAxis->label->setFont(new awTuffy(7)); + $this->yAxis->title->setAngle(90); + + } + + /** + * Get plot values + * + * @return array + */ + public function getValues() { + return $this->datay; + } + + /** + * Reduce number of values in the plot + * + * @param int $number Reduce number of values to $number + */ + public function reduce($number) { + + $count = count($this->datay); + $ratio = ceil($count / $number); + + if($ratio > 1) { + + $tmpy = $this->datay; + $datay = array(); + + $datax = array(); + $cbLabel = $this->xAxis->label->getCallbackFunction(); + + for($i = 0; $i < $count; $i += $ratio) { + + $slice = array_slice($tmpy, $i, $ratio); + $datay[] = array_sum($slice) / count($slice); + + // Reduce data on X axis if needed + if($cbLabel !== NULL) { + $datax[] = $cbLabel($i + round($ratio / 2)); + } + + } + + $this->setValues($datay); + + if($cbLabel !== NULL) { + $this->xAxis->setLabelText($datax); + } + + + } + + } + + /** + * Count values in the plot + * + * @return int + */ + public function getXAxisNumber() { + list($min, $max) = $this->xAxis->getRange(); + return ($max - $min + 1); + } + + /** + * Change X axis + * + * @param int $axis + */ + public function setXAxis($axis) { + $this->xAxisPosition = $axis; + } + + /** + * Get X axis + * + * @return int + */ + public function getXAxis() { + return $this->xAxisPosition; + } + + /** + * Set X axis on zero + * + * @param bool $zero + */ + public function setXAxisZero($zero) { + $this->xAxisZero = (bool)$zero; + } + + /** + * Set Y axis on zero + * + * @param bool $zero + */ + public function setYAxisZero($zero) { + $this->yAxisZero = (bool)$zero; + } + + /** + * Change Y axis + * + * @param int $axis + */ + public function setYAxis($axis) { + $this->yAxisPosition = $axis; + } + + /** + * Get Y axis + * + * @return int + */ + public function getYAxis() { + return $this->yAxisPosition; + } + + /** + * Change min value for Y axis + * Set NULL for auto selection. + * + * @param float $value + */ + public function setYMin($value) { + $this->yMin = $value; + $this->yAxis->auto(FALSE); + $this->updateAxis(); + } + + /** + * Change max value for Y axis + * Set NULL for auto selection. + * + * @param float $value + */ + public function setYMax($value) { + $this->yMax = $value; + $this->yAxis->auto(FALSE); + $this->updateAxis(); + } + + /** + * Change min value for X axis + * Set NULL for auto selection. + * + * @param float $value + */ + public function setXMin($value) { + $this->xMin = $value; + $this->updateAxis(); + } + + /** + * Change max value for X axis + * Set NULL for auto selection. + * + * @param float $value + */ + public function setXMax($value) { + $this->xMax = $value; + $this->updateAxis(); + } + + /** + * Get min value for Y axis + * + * @return float $value + */ + public function getYMin() { + if($this->auto) { + if(is_null($this->yMin)) { + $min = array_min($this->datay); + if($min > 0) { + return 0; + } + } + } + return is_null($this->yMin) ? array_min($this->datay) : (float)$this->yMin; + } + + /** + * Get max value for Y axis + * + * @return float $value + */ + public function getYMax() { + if($this->auto) { + if(is_null($this->yMax)) { + $max = array_max($this->datay); + if($max < 0) { + return 0; + } + } + } + return is_null($this->yMax) ? array_max($this->datay) : (float)$this->yMax; + } + + /** + * Get min value for X axis + * + * @return float $value + */ + public function getXMin() { + return floor(is_null($this->xMin) ? array_min($this->datax) : $this->xMin); + } + + /** + * Get max value for X axis + * + * @return float $value + */ + public function getXMax() { + return (ceil(is_null($this->xMax) ? array_max($this->datax) : (float)$this->xMax)) + ($this->getXCenter() ? 1 : 0); + } + + /** + * Get min value with spaces for Y axis + * + * @return float $value + */ + public function getRealYMin() { + $min = $this->getYMin(); + if($this->space->bottom !== NULL) { + $interval = ($this->getYMax() - $min) * $this->space->bottom / 100; + return $min - $interval; + } else { + return is_null($this->yMin) ? $min : (float)$this->yMin; + } + } + + /** + * Get max value with spaces for Y axis + * + * @return float $value + */ + public function getRealYMax() { + $max = $this->getYMax(); + if($this->space->top !== NULL) { + $interval = ($max - $this->getYMin()) * $this->space->top / 100; + return $max + $interval; + } else { + return is_null($this->yMax) ? $max : (float)$this->yMax; + } + } + + public function init(awDriver $driver) { + + list($x1, $y1, $x2, $y2) = $this->getPosition(); + + // Get space informations + list($leftSpace, $rightSpace, $topSpace, $bottomSpace) = $this->getSpace($x2 - $x1, $y2 - $y1); + + $this->xAxis->setPadding($leftSpace, $rightSpace); + + if($this->space->bottom > 0 or $this->space->top > 0) { + + list($min, $max) = $this->yAxis->getRange(); + $interval = $max - $min; + + $this->yAxis->setRange( + $min - $interval * $this->space->bottom / 100, + $max + $interval * $this->space->top / 100 + ); + + } + + // Auto-scaling mode + $this->yAxis->autoScale(); + + // Number of labels is not specified + if($this->yAxis->getLabelNumber() === NULL) { + $number = round(($y2 - $y1) / 75) + 2; + $this->yAxis->setLabelNumber($number); + } + + $this->xAxis->line->setX($x1, $x2); + $this->yAxis->line->setY($y2, $y1); + + // Set ticks + + $this->xAxis->tick('major')->setNumber($this->getXAxisNumber()); + $this->yAxis->tick('major')->setNumber($this->yAxis->getLabelNumber()); + + + // Center X axis on zero + if($this->xAxisZero) { + $this->xAxis->setYCenter($this->yAxis, 0); + } + + // Center Y axis on zero + if($this->yAxisZero) { + $this->yAxis->setXCenter($this->xAxis, 0); + } + + // Set axis labels + $labels = array(); + + list($xMin, $xMax) = $this->xAxis->getRange(); + for($i = $xMin; $i <= $xMax; $i++) { + $labels[] = $i; + } + $this->xAxis->label->set($labels); + + parent::init($driver); + + list($x1, $y1, $x2, $y2) = $this->getPosition(); + + list($leftSpace, $rightSpace) = $this->getSpace($x2 - $x1, $y2 - $y1); + + // Create the grid + $this->createGrid(); + + // Draw the grid + $this->grid->setSpace($leftSpace, $rightSpace, 0, 0); + $this->grid->draw($driver, $x1, $y1, $x2, $y2); + + } + + public function drawEnvelope(awDriver $driver) { + + list($x1, $y1, $x2, $y2) = $this->getPosition(); + + if($this->getXCenter()) { + $size = $this->xAxis->getDistance(0, 1); + $this->xAxis->label->move($size / 2, 0); + $this->xAxis->label->hideLast(TRUE); + } + + // Draw top axis + if($this->xAxisPosition === awPlot::TOP or $this->xAxisPosition === awPlot::BOTH) { + $top = clone $this->xAxis; + if($this->xAxisZero === FALSE) { + $top->line->setY($y1, $y1); + } + $top->label->setAlign(NULL, awLabel::TOP); + $top->label->move(0, -3); + $top->title->move(0, -25); + $top->draw($driver); + } + + // Draw bottom axis + if($this->xAxisPosition === awPlot::BOTTOM or $this->xAxisPosition === awPlot::BOTH) { + $bottom = clone $this->xAxis; + if($this->xAxisZero === FALSE) { + $bottom->line->setY($y2, $y2); + } + $bottom->label->setAlign(NULL, awLabel::BOTTOM); + $bottom->label->move(0, 3); + $bottom->reverseTickStyle(); + $bottom->title->move(0, 25); + $bottom->draw($driver); + } + + // Draw left axis + if($this->yAxisPosition === awPlot::LEFT or $this->yAxisPosition === awPlot::BOTH) { + $left = clone $this->yAxis; + if($this->yAxisZero === FALSE) { + $left->line->setX($x1, $x1); + } + $left->label->setAlign(awLabel::RIGHT); + $left->label->move(-6, 0); + $left->title->move(-25, 0); + $left->draw($driver); + } + + // Draw right axis + if($this->yAxisPosition === awPlot::RIGHT or $this->yAxisPosition === awPlot::BOTH) { + $right = clone $this->yAxis; + if($this->yAxisZero === FALSE) { + $right->line->setX($x2, $x2); + } + $right->label->setAlign(awLabel::LEFT); + $right->label->move(6, 0); + $right->reverseTickStyle(); + $right->title->move(25, 0); + $right->draw($driver); + } + + } + + protected function createGrid() { + + $max = $this->getRealYMax(); + $min = $this->getRealYMin(); + + $number = $this->yAxis->getLabelNumber() - 1; + + if($number < 1) { + return; + } + + // Horizontal lines of the grid + + $h = array(); + for($i = 0; $i <= $number; $i++) { + $h[] = $i / $number; + } + + // Vertical lines + + $major = $this->yAxis->tick('major'); + $interval = $major->getInterval(); + $number = $this->getXAxisNumber() - 1; + + $w = array(); + + if($number > 0) { + + for($i = 0; $i <= $number; $i++) { + if($i%$interval === 0) { + $w[] = $i / $number; + } + } + + } + + $this->grid->setGrid($w, $h); + + } + + /** + * Change values of Y axis + * This method ignores not numeric values + * + * @param array $datay + * @param array $datax + */ + public function setValues($datay, $datax = NULL) { + + $this->checkArray($datay); + + foreach($datay as $key => $value) { + unset($datay[$key]); + $datay[(int)$key] = $value; + } + + if($datax === NULL) { + $datax = array(); + for($i = 0; $i < count($datay); $i++) { + $datax[] = $i; + } + } else { + foreach($datax as $key => $value) { + unset($datax[$key]); + $datax[(int)$key] = $value; + } + } + + $this->checkArray($datax); + + if(count($datay) === count($datax)) { + + // Set values + $this->datay = $datay; + $this->datax = $datax; + // Update axis with the new awvalues + $this->updateAxis(); + } else { + awImage::drawError("Class Plot: Plots must have the same number of X and Y points."); + } + + } + + /** + * Return begin and end values + * + * @return array + */ + protected function getLimit() { + + $i = 0; + while(array_key_exists($i, $this->datay) and $this->datay[$i] === NULL) { + $i++; + } + $start = $i; + $i = count($this->datay) - 1; + while(array_key_exists($i, $this->datay) and $this->datay[$i] === NULL) { + $i--; + } + $stop = $i; + + return array($start, $stop); + + } + + /** + * Return TRUE if labels must be centered on X axis, FALSE otherwise + * + * @return bool + */ + abstract public function getXCenter(); + + private function updateAxis() { + + $this->xAxis->setRange( + $this->getXMin(), + $this->getXMax() + ); + $this->yAxis->setRange( + $this->getRealYMin(), + $this->getRealYMax() + ); + + } + + private function checkArray(&$array) { + + if(is_array($array) === FALSE) { + awImage::drawError("Class Plot: You tried to set a value that is not an array."); + } + + foreach($array as $key => $value) { + if(is_numeric($value) === FALSE and is_null($value) === FALSE) { + awImage::drawError("Class Plot: Expected numeric values for the plot."); + } + } + + if(count($array) < 1) { + awImage::drawError("Class Plot: Your plot must have at least 1 value."); + } + + } + +} + +registerClass('Plot', TRUE); + +class awPlotAxis { + + /** + * Left axis + * + * @var Axis + */ + public $left; + + /** + * Right axis + * + * @var Axis + */ + public $right; + + /** + * Top axis + * + * @var Axis + */ + public $top; + + /** + * Bottom axis + * + * @var Axis + */ + public $bottom; + + /** + * Build the group of axis + */ + public function __construct() { + + $this->left = new awAxis; + $this->left->auto(TRUE); + $this->left->label->setAlign(awLabel::RIGHT); + $this->left->label->move(-6, 0); + $this->yAxis($this->left); + $this->left->setTickStyle(awTick::OUT); + $this->left->title->move(-25, 0); + + $this->right = new awAxis; + $this->right->auto(TRUE); + $this->right->label->setAlign(awLabel::LEFT); + $this->right->label->move(6, 0); + $this->yAxis($this->right); + $this->right->setTickStyle(awTick::IN); + $this->right->title->move(25, 0); + + $this->top = new awAxis; + $this->top->label->setAlign(NULL, awLabel::TOP); + $this->top->label->move(0, -3); + $this->xAxis($this->top); + $this->top->setTickStyle(awTick::OUT); + $this->top->title->move(0, -25); + + $this->bottom = new awAxis; + $this->bottom->label->setAlign(NULL, awLabel::BOTTOM); + $this->bottom->label->move(0, 3); + $this->xAxis($this->bottom); + $this->bottom->setTickStyle(awTick::IN); + $this->bottom->title->move(0, 25); + + } + + protected function xAxis(awAxis $axis) { + + $axis->addTick('major', new awTick(0, 5)); + $axis->addTick('minor', new awTick(0, 3)); + $axis->label->setFont(new awTuffy(7)); + + } + + protected function yAxis(awAxis $axis) { + + $axis->addTick('major', new awTick(0, 5)); + $axis->addTick('minor', new awTick(0, 3)); + $axis->setNumberByTick('minor', 'major', 3); + $axis->label->setFont(new awTuffy(7)); + $axis->title->setAngle(90); + + } + +} + +registerClass('PlotAxis'); + +/** + * A graph with axis can contain some groups of components + * + * @package Artichow + */ +class awPlotGroup extends awComponentGroup { + + /** + * Grid properties + * + * @var Grid + */ + public $grid; + + /** + * Left, right, top and bottom axis + * + * @var PlotAxis + */ + public $axis; + + /** + * Set the X axis on zero + * + * @var bool + */ + protected $xAxisZero = TRUE; + + /** + * Set the Y axis on zero + * + * @var bool + */ + protected $yAxisZero = FALSE; + + /** + * Real axis used for Y axis + * + * @var string + */ + private $yRealAxis = awPlot::LEFT; + + /** + * Real axis used for X axis + * + * @var string + */ + private $xRealAxis = awPlot::BOTTOM; + + /** + * Change min value for Y axis + * + * @var mixed + */ + private $yMin = NULL; + + /** + * Change max value for Y axis + * + * @var mixed + */ + private $yMax = NULL; + + /** + * Change min value for X axis + * + * @var mixed + */ + private $xMin = NULL; + + /** + * Change max value for X axis + * + * @var mixed + */ + private $xMax = NULL; + + /** + * Build the PlotGroup + * + */ + public function __construct() { + + parent::__construct(); + + $this->grid = new awGrid; + $this->grid->setBackgroundColor(new awWhite); + + $this->axis = new awPlotAxis; + + } + + /** + * Set the X axis on zero or not + * + * @param bool $zero + */ + public function setXAxisZero($zero) { + $this->xAxisZero = (bool)$zero; + } + + /** + * Set the Y axis on zero or not + * + * @param bool $zero + */ + public function setYAxisZero($zero) { + $this->yAxisZero = (bool)$zero; + } + + /** + * Change min value for Y axis + * Set NULL for auto selection. + * + * @param float $value + */ + public function setYMin($value) { + $this->axis->left->auto(FALSE); + $this->axis->right->auto(FALSE); + $this->yMin = $value; + } + + /** + * Change max value for Y axis + * Set NULL for auto selection. + * + * @param float $value + */ + public function setYMax($value) { + $this->axis->left->auto(FALSE); + $this->axis->right->auto(FALSE); + $this->yMax = $value; + } + + /** + * Change min value for X axis + * Set NULL for auto selection. + * + * @param float $value + */ + public function setXMin($value) { + $this->xMin = $value; + } + + /** + * Change max value for X axis + * Set NULL for auto selection. + * + * @param float $value + */ + public function setXMax($value) { + $this->xMax = $value; + } + + /** + * Get min value for X axis + * + * @return float $value + */ + public function getXMin() { + + return $this->getX('min'); + + } + + /** + * Get max value for X axis + * + * @return float $value + */ + public function getXMax() { + + return $this->getX('max'); + + } + + private function getX($type) { + + switch($type) { + case 'max' : + if($this->xMax !== NULL) { + return $this->xMax; + } + break; + case 'min' : + if($this->xMin !== NULL) { + return $this->xMin; + } + break; + } + + $value = NULL; + $get = 'getX'.ucfirst($type); + + for($i = 0; $i < count($this->components); $i++) { + + $component = $this->components[$i]; + + if($value === NULL) { + $value = $component->$get(); + } else { + $value = $type($value, $component->$get()); + } + + } + + return $value; + + } + + /** + * Get min value with spaces for Y axis + * + * @param string $axis Axis name + * @return float $value + */ + public function getRealYMin($axis = NULL) { + + if($axis === NULL) { + return NULL; + } + + $min = $this->getRealY('min', $axis); + $max = $this->getRealY('max', $axis); + + if($this->space->bottom !== NULL) { + $interval = ($min - $max) * $this->space->bottom / 100; + return $min + $interval; + } else { + return $min; + } + + } + + /** + * Get max value with spaces for Y axis + * + * @param string $axis Axis name + * @return float $value + */ + public function getRealYMax($axis = NULL) { + + if($axis === NULL) { + return NULL; + } + + $min = $this->getRealY('min', $axis); + $max = $this->getRealY('max', $axis); + + if($this->space->top !== NULL) { + $interval = ($max - $min) * $this->space->top / 100; + return $max + $interval; + } else { + return $max; + } + + } + + private function getRealY($type, $axis) { + + switch($type) { + case 'max' : + if($this->yMax !== NULL) { + return $this->yMax; + } + break; + case 'min' : + if($this->yMin !== NULL) { + return $this->yMin; + } + break; + } + + $value = NULL; + $get = 'getY'.ucfirst($type); + + for($i = 0; $i < count($this->components); $i++) { + + $component = $this->components[$i]; + + switch($axis) { + + case awPlot::LEFT : + case awPlot::RIGHT : + $test = ($component->getYAxis() === $axis); + break; + default : + $test = FALSE; + + } + + if($test) { + + $auto = $component->yAxis->isAuto(); + $this->axis->{$axis}->auto($auto); + + if($value === NULL) { + $value = $component->$get(); + } else { + $value = $type($value, $component->$get()); + } + + } + + } + + return $value; + + } + + public function init(awDriver $driver) { + + list($x1, $y1, $x2, $y2) = $this->getPosition(); + + // Get PlotGroup space + list($leftSpace, $rightSpace, $topSpace, $bottomSpace) = $this->getSpace($x2 - $x1, $y2 - $y1); + + // Count values in the group + $values = $this->getXAxisNumber(); + + // Init the PlotGroup + $this->axis->top->line->setX($x1, $x2); + $this->axis->bottom->line->setX($x1, $x2); + $this->axis->left->line->setY($y2, $y1); + $this->axis->right->line->setY($y2, $y1); + + $this->axis->top->setPadding($leftSpace, $rightSpace); + $this->axis->bottom->setPadding($leftSpace, $rightSpace); + + $xMin = $this->getXMin(); + $xMax = $this->getXMax(); + + $this->axis->top->setRange($xMin, $xMax); + $this->axis->bottom->setRange($xMin, $xMax); + + for($i = 0; $i < count($this->components); $i++) { + + + $component = $this->components[$i]; + + $component->auto($this->auto); + + // Copy space to the component + + $component->setSpace($this->space->left, $this->space->right, $this->space->top, $this->space->bottom); + + $component->xAxis->setPadding($leftSpace, $rightSpace); + $component->xAxis->line->setX($x1, $x2); + + $component->yAxis->line->setY($y2, $y1); + + } + + // Set Y axis range + foreach(array('left', 'right') as $axis) { + + if($this->isAxisUsed($axis)) { + + $min = $this->getRealYMin($axis); + $max = $this->getRealYMax($axis); + + $interval = $max - $min; + + $this->axis->{$axis}->setRange( + $min - $interval * $this->space->bottom / 100, + $max + $interval * $this->space->top / 100 + ); + + // Auto-scaling mode + if($this->axis->{$axis}->isAuto()) { + $this->axis->{$axis}->autoScale(); + } + + } + + } + + if($this->axis->left->getLabelNumber() === NULL) { + $number = round(($y2 - $y1) / 75) + 2; + $this->axis->left->setLabelNumber($number); + } + + if($this->axis->right->getLabelNumber() === NULL) { + $number = round(($y2 - $y1) / 75) + 2; + $this->axis->right->setLabelNumber($number); + } + + // Center labels on X axis if needed + $test = array(awPlot::TOP => FALSE, awPlot::BOTTOM => FALSE); + @@ Diff output truncated at 100000 characters. @@ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sun Feb 27 18:12:55 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sun, 27 Feb 2011 17:12:55 +0000 Subject: [csw-devel] SF.net SVN: gar:[13483] csw/mgar/pkg/lighttpd/trunk/Makefile Message-ID: Revision: 13483 http://gar.svn.sourceforge.net/gar/?rev=13483&view=rev Author: wahwah Date: 2011-02-27 17:12:55 +0000 (Sun, 27 Feb 2011) Log Message: ----------- lighttpd: It compiles, one test is failing. Modified Paths: -------------- csw/mgar/pkg/lighttpd/trunk/Makefile Modified: csw/mgar/pkg/lighttpd/trunk/Makefile =================================================================== --- csw/mgar/pkg/lighttpd/trunk/Makefile 2011-02-27 13:18:13 UTC (rev 13482) +++ csw/mgar/pkg/lighttpd/trunk/Makefile 2011-02-27 17:12:55 UTC (rev 13483) @@ -17,7 +17,20 @@ MASTER_SITES = http://download.lighttpd.net/lighttpd/releases-1.4.x/ DISTFILES = $(NAME)-$(VERSION).tar.gz -EXTRA_LDFLAGS = -lsendfile +EXTRA_LDFLAGS += -lsendfile +# To fix undefined symbol 'dlopen' on Solaris 9 +EXTRA_LDFLAGS_5.9 += -ldl +EXTRA_LDFLAGS += $(EXTRA_LDFLAGS_$(GAROSREL)) PATCHFILES += 0001-Work-around-linking-problem-buffer.c.patch +# Solaris 9 does not have IPV6_V6ONLY. +# IPv6 support only works on Solaris 10. +CONFIGURE_ARGS_5.9 = --disable-ipv6 +CONFIGURE_ARGS += $(CONFIGURE_ARGS_$(GAROSREL)) + +PACKAGING_PLATFORMS = solaris9-sparc solaris9-i386 +PACKAGING_PLATFORMS += solaris10-sparc solaris10-i386 + +TEST_TARGET = check + include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Sun Feb 27 19:19:40 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sun, 27 Feb 2011 18:19:40 +0000 Subject: [csw-devel] SF.net SVN: gar:[13484] csw/mgar/pkg/apache2/branches/open-bug-squash/ checkpkg.mak Message-ID: Revision: 13484 http://gar.svn.sourceforge.net/gar/?rev=13484&view=rev Author: bdwalton Date: 2011-02-27 18:19:40 +0000 (Sun, 27 Feb 2011) Log Message: ----------- apache2/branches/open-bug-squash: drop checkpkg overrides for things that were patched out Modified Paths: -------------- csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak Modified: csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak =================================================================== --- csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak 2011-02-27 17:12:55 UTC (rev 13483) +++ csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak 2011-02-27 18:19:40 UTC (rev 13484) @@ -1,4 +1,4 @@ -83;40003;0cCHECKPKG_OVERRIDES_CSWapache2 += file-collision|/opt/csw/apache2/etc/extra/httpd-info.conf.CSW|CSWapache2|CSWapache2c +CHECKPKG_OVERRIDES_CSWapache2 += file-collision|/opt/csw/apache2/etc/extra/httpd-info.conf.CSW|CSWapache2|CSWapache2c CHECKPKG_OVERRIDES_CSWapache2 += file-collision|/etc/opt/csw/init.d/cswapache2|CSWapache2|CSWapache2c CHECKPKG_OVERRIDES_CSWapache2 += file-collision|/opt/csw/apache2/etc/extra/httpd-autoindex.conf.CSW|CSWapache2|CSWapache2c CHECKPKG_OVERRIDES_CSWapache2 += file-collision|/opt/csw/apache2/etc/extra/httpd-dav.conf.CSW|CSWapache2|CSWapache2c @@ -492,9 +492,6 @@ CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/export/home|root/opt/csw/apache2/share/manual/mod/mod_charset_lite.html.en CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/export/home|root/opt/csw/apache2/share/manual/mod/mod_ext_filter.html.en CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/export/home|root/opt/csw/apache2/share/manual/mod/mod_ext_filter.html.ko.euc-kr -CHECKPKG_OVERRIDES_CSWapache2 += file-with-bad-content|/usr/local|root/opt/csw/apache2/man/man1/htdbm.1 -CHECKPKG_OVERRIDES_CSWapache2 += file-with-bad-content|/usr/local|root/opt/csw/apache2/man/man1/htpasswd.1 -CHECKPKG_OVERRIDES_CSWapache2 += file-with-bad-content|/usr/local|root/opt/csw/apache2/man/man8/httpd.8 CHECKPKG_OVERRIDES_CSWapache2 += file-with-bad-content|/usr/local|root/opt/csw/apache2/sbin/httpd.prefork CHECKPKG_OVERRIDES_CSWapache2 += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/cgi-bin/printenv CHECKPKG_OVERRIDES_CSWap2worker += file-with-bad-content|/usr/local|root/opt/csw/apache2/sbin/httpd.worker This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Sun Feb 27 19:39:46 2011 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Sun, 27 Feb 2011 18:39:46 +0000 Subject: [csw-devel] SF.net SVN: gar:[13485] csw/mgar/pkg/lighttpd/trunk Message-ID: Revision: 13485 http://gar.svn.sourceforge.net/gar/?rev=13485&view=rev Author: wahwah Date: 2011-02-27 18:39:46 +0000 (Sun, 27 Feb 2011) Log Message: ----------- lighttpd: Work towards the solution of mod_compress problem. Modified Paths: -------------- csw/mgar/pkg/lighttpd/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/lighttpd/trunk/files/0002-Force-LDFLAGS-on-mod_compress.patch Modified: csw/mgar/pkg/lighttpd/trunk/Makefile =================================================================== --- csw/mgar/pkg/lighttpd/trunk/Makefile 2011-02-27 18:19:40 UTC (rev 13484) +++ csw/mgar/pkg/lighttpd/trunk/Makefile 2011-02-27 18:39:46 UTC (rev 13485) @@ -17,12 +17,24 @@ MASTER_SITES = http://download.lighttpd.net/lighttpd/releases-1.4.x/ DISTFILES = $(NAME)-$(VERSION).tar.gz +EXTRA_LIB = $(prefix)/lib EXTRA_LDFLAGS += -lsendfile + # To fix undefined symbol 'dlopen' on Solaris 9 EXTRA_LDFLAGS_5.9 += -ldl EXTRA_LDFLAGS += $(EXTRA_LDFLAGS_$(GAROSREL)) + PATCHFILES += 0001-Work-around-linking-problem-buffer.c.patch +# The module compilation ignores LDFLAGS by default, let's force them to +# inject the right -R flag. +PATCHFILES += 0002-Force-LDFLAGS-on-mod_compress.patch + +# lighttpd puts its modules under libdir, so we pass libdir as a subdirectory, +# because modules are not supposed to be in /opt/csw/lib. +libdir = $(prefix)/lib/lighttpd + +CONFIGURE_ARGS = $(DIRPATHS) # Solaris 9 does not have IPV6_V6ONLY. # IPv6 support only works on Solaris 10. CONFIGURE_ARGS_5.9 = --disable-ipv6 @@ -31,6 +43,7 @@ PACKAGING_PLATFORMS = solaris9-sparc solaris9-i386 PACKAGING_PLATFORMS += solaris10-sparc solaris10-i386 +# One test is still failing. TEST_TARGET = check include gar/category.mk Added: csw/mgar/pkg/lighttpd/trunk/files/0002-Force-LDFLAGS-on-mod_compress.patch =================================================================== --- csw/mgar/pkg/lighttpd/trunk/files/0002-Force-LDFLAGS-on-mod_compress.patch (rev 0) +++ csw/mgar/pkg/lighttpd/trunk/files/0002-Force-LDFLAGS-on-mod_compress.patch 2011-02-27 18:39:46 UTC (rev 13485) @@ -0,0 +1,24 @@ +From fa3fa5796150b4c381a3b6c8b5a0dc20b26a82bd Mon Sep 17 00:00:00 2001 +From: Maciej Blizinski +Date: Sun, 27 Feb 2011 19:10:12 +0100 +Subject: [PATCH] Force LDFLAGS on mod_compress + +--- + src/Makefile.in | 2 +- + src/configparser.c | 240 +++++++++++++++++++++++----------------------- + src/mod_ssi_exprparser.c | 56 ++++++------ + 3 files changed, 148 insertions(+), 150 deletions(-) + +diff --git a/src/Makefile.in b/src/Makefile.in +index 5b7cb63..1362f2c 100644 +--- a/src/Makefile.in ++++ b/src/Makefile.in +@@ -762,7 +762,7 @@ mod_access_la_SOURCES = mod_access.c + mod_access_la_LDFLAGS = -module -export-dynamic -avoid-version -no-undefined + mod_access_la_LIBADD = $(common_libadd) + mod_compress_la_SOURCES = mod_compress.c +-mod_compress_la_LDFLAGS = -module -export-dynamic -avoid-version -no-undefined ++mod_compress_la_LDFLAGS = -module -export-dynamic -avoid-version -no-undefined $(LDFLAGS) + mod_compress_la_LIBADD = $(Z_LIB) $(BZ_LIB) $(common_libadd) + mod_auth_la_SOURCES = mod_auth.c http_auth_digest.c http_auth.c + mod_auth_la_LDFLAGS = -module -export-dynamic -avoid-version -no-undefined This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bwalton at opencsw.org Sun Feb 27 19:46:32 2011 From: bwalton at opencsw.org (Ben Walton) Date: Sun, 27 Feb 2011 13:46:32 -0500 Subject: [csw-devel] proposed wording change for maintainer page Message-ID: <1298832192-sup-5433@pinkfloyd.chass.utoronto.ca> Hi Guys, Thoughts on changing: Go to Ben Walton QA page to Go to the QA page for Ben Walton The attached patch should implement this change if you like it. It's consistent with the wording for jumping to the bug tracker info and is easier than handling the pluralization with 's vs simply '. Thanks -Ben -- Ben Walton Systems Programmer - CHASS University of Toronto C:416.407.5610 | W:416.978.4302 -------------- next part -------------- A non-text attachment was scrubbed... Name: maintainer_page.diff Type: application/octet-stream Size: 988 bytes Desc: not available URL: From bdwalton at users.sourceforge.net Sun Feb 27 20:14:12 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sun, 27 Feb 2011 19:14:12 +0000 Subject: [csw-devel] SF.net SVN: gar:[13486] csw/mgar/pkg/apache2/branches/open-bug-squash Message-ID: Revision: 13486 http://gar.svn.sourceforge.net/gar/?rev=13486&view=rev Author: bdwalton Date: 2011-02-27 19:14:12 +0000 (Sun, 27 Feb 2011) Log Message: ----------- apache2/branches/open-bug-squash: correct a pile of usr/local references in the manual docs Modified Paths: -------------- csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak Modified: csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile =================================================================== --- csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile 2011-02-27 18:39:46 UTC (rev 13485) +++ csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile 2011-02-27 19:14:12 UTC (rev 13486) @@ -280,5 +280,15 @@ s/^#(Include.*httpd-ssl.conf)/$$1/' $$f; \ mv $$f $$f.CSW; \ done ) + @echo Fixing usr/local references in the online manaual... + @(cd $(PKGROOT)/$(prefix)/apache2/share/manual; \ + /opt/csw/bin/gfind . -type f -print0 | \ + /opt/csw/bin/gxargs -0 \ + perl -pi \ + -e 's@/usr/local/apache2*@/opt/csw/apache2 at g;' \ + -e 's@/usr/local@/opt/csw/apache2 at g') + @echo Fixing usr/local reference in the cgi-bin scripts + @(cd $(PKGROOT)/$(prefix)/apache2/share/cgi-bin; \ + perl -pi -e 's@/usr/local/bin@/opt/csw/bin at g' *) @$(MAKECOOKIE) Modified: csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak =================================================================== --- csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak 2011-02-27 18:39:46 UTC (rev 13485) +++ csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak 2011-02-27 19:14:12 UTC (rev 13486) @@ -365,124 +365,7 @@ CHECKPKG_OVERRIDES_CSWapache2 += file-collision|/opt/csw/apache2/etc/extra/httpd-info.conf.CSW|CSWapache2|CSWapache2c CHECKPKG_OVERRIDES_CSWap2suexec += file-with-bad-content|/usr/local|root/opt/csw/apache2/sbin/suexec CHECKPKG_OVERRIDES_CSWapache2-devel += file-with-bad-content|/usr/local|root/opt/csw/apache2/include/httpd.h -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/glossary.html.ko.euc-kr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/invoking.html.de -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/install.html.de -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/invoking.html.ko.euc-kr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/stopping.html.es -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/stopping.html.tr.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/caching.html.tr.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/glossary.html.es -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/stopping.html.ja.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/install.html.ko.euc-kr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/logs.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/stopping.html.ko.euc-kr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/stopping.html.fr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/stopping.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/custom-error.html.ja.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/suexec.html.tr.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/glossary.html.fr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/glossary.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/install.html.tr.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/custom-error.html.ko.euc-kr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/custom-error.html.tr.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/suexec.html.ja.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/sections.html.ko.euc-kr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/install.html.ja.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/sections.html.fr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/sections.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/glossary.html.ja.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/logs.html.ja.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/invoking.html.ja.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/invoking.html.es -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/stopping.html.de -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/suexec.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/custom-error.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/install.html.es -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/glossary.html.tr.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/invoking.html.tr.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/logs.html.tr.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/glossary.html.de -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/suexec.html.ko.euc-kr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/sections.html.tr.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/caching.html.fr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/caching.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/install.html.fr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/invoking.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/invoking.html.ru.koi8-r -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/sections.html.ja.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/custom-error.html.es -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/install.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/invoking.html.fr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/logs.html.ko.euc-kr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/faq/index.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/faq/index.html.tr.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/vhosts/index.html.fr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/vhosts/index.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/vhosts/index.html.tr.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/vhosts/index.html.ru.koi8-r -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/vhosts/index.html.ja.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/vhosts/index.html.ko.euc-kr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/vhosts/index.html.de -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/howto/cgi.html.ko.euc-kr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/howto/auth.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/howto/cgi.html.ja.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/howto/auth.html.ja.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/howto/auth.html.tr.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/howto/auth.html.ko.euc-kr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/howto/cgi.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/misc/security_tips.html.ko.euc-kr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/misc/security_tips.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/misc/security_tips.html.tr.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/programs/htpasswd.html.tr.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/programs/htdbm.html.tr.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/programs/htpasswd.html.ko.euc-kr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/programs/configure.html.ko.euc-kr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/programs/httpd.html.tr.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/programs/httpd.html.ko.euc-kr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/programs/htdbm.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/programs/httpd.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/programs/configure.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/programs/htpasswd.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/programs/configure.html.tr.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/ssl/ssl_howto.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/mod_rewrite.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/core.html.de -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/directive-dict.html.ko.euc-kr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/quickreference.html.ru.koi8-r -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/mod_authz_owner.html.ko.euc-kr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/quickreference.html.es -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/mod_file_cache.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/core.html.ja.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/mod_ext_filter.html.ja.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/mod_dav.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/mod_authz_owner.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/mod_alias.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/mod_dav.html.ja.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/mod_dav.html.ko.euc-kr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/core.html.tr.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/quickreference.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/mod_authz_owner.html.ja.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/directive-dict.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/quickreference.html.de -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/directive-dict.html.ja.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/directive-dict.html.tr.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/quickreference.html.ko.euc-kr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/mod_ext_filter.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/mod_ssl.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/mod_file_cache.html.ko.euc-kr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/mod_alias.html.ko.euc-kr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/mod_vhost_alias.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/mod_alias.html.tr.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/quickreference.html.ja.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/mod_ext_filter.html.ko.euc-kr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/mod_vhost_alias.html.tr.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/core.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/quickreference.html.tr.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/mod/mod_alias.html.ja.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/developer/thread_safety.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/rewrite/rewrite_intro.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/manual/rewrite/rewrite_flags.html.en + CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/export/home|root/opt/csw/apache2/share/manual/logs.html.en CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/export/home|root/opt/csw/apache2/share/manual/logs.html.ja.utf8 CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/export/home|root/opt/csw/apache2/share/manual/logs.html.tr.utf8 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Sun Feb 27 20:18:38 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sun, 27 Feb 2011 19:18:38 +0000 Subject: [csw-devel] SF.net SVN: gar:[13487] csw/mgar/pkg/apache2/branches/open-bug-squash/ checkpkg.mak Message-ID: Revision: 13487 http://gar.svn.sourceforge.net/gar/?rev=13487&view=rev Author: bdwalton Date: 2011-02-27 19:18:38 +0000 (Sun, 27 Feb 2011) Log Message: ----------- apache2/branches/open-bug-squash: drop an override for the corrected printenv cgi script (a usr/local issue) Modified Paths: -------------- csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak Modified: csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak =================================================================== --- csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak 2011-02-27 19:14:12 UTC (rev 13486) +++ csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak 2011-02-27 19:18:38 UTC (rev 13487) @@ -376,5 +376,4 @@ CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/export/home|root/opt/csw/apache2/share/manual/mod/mod_ext_filter.html.en CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/export/home|root/opt/csw/apache2/share/manual/mod/mod_ext_filter.html.ko.euc-kr CHECKPKG_OVERRIDES_CSWapache2 += file-with-bad-content|/usr/local|root/opt/csw/apache2/sbin/httpd.prefork -CHECKPKG_OVERRIDES_CSWapache2 += file-with-bad-content|/usr/local|root/opt/csw/apache2/share/cgi-bin/printenv CHECKPKG_OVERRIDES_CSWap2worker += file-with-bad-content|/usr/local|root/opt/csw/apache2/sbin/httpd.worker This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Sun Feb 27 20:27:06 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sun, 27 Feb 2011 19:27:06 +0000 Subject: [csw-devel] SF.net SVN: gar:[13488] csw/mgar/pkg/apache2/branches/open-bug-squash/ Makefile Message-ID: Revision: 13488 http://gar.svn.sourceforge.net/gar/?rev=13488&view=rev Author: bdwalton Date: 2011-02-27 19:27:06 +0000 (Sun, 27 Feb 2011) Log Message: ----------- apache2/branches/open-bug-squash: set an appropriate safe path for suexec (fixes usr/local issue, sets better value than default) Modified Paths: -------------- csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile Modified: csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile =================================================================== --- csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile 2011-02-27 19:18:38 UTC (rev 13487) +++ csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile 2011-02-27 19:27:06 UTC (rev 13488) @@ -167,6 +167,7 @@ CONFIGURE_ARGS += --with-suexec-gidmin=100 CONFIGURE_ARGS += --with-suexec-logfile=$(prefix)/apache2/var/log/suexec_log CONFIGURE_ARGS += --with-suexec-bin=$(prefix)/apache2/sbin/suexec +CONFIGURE_ARGS += --with-suexec-safepath=/opt/csw/bin:/usr/bin:/bin CONFIGURE_ARGS += --enable-authn-alias CONFIGURE_ARGS += --enable-authnz-ldap CONFIGURE_ARGS += --enable-file-cache This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Sun Feb 27 22:10:30 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sun, 27 Feb 2011 21:10:30 +0000 Subject: [csw-devel] SF.net SVN: gar:[13489] csw/mgar/pkg/apache2/branches/open-bug-squash/ checkpkg.mak Message-ID: Revision: 13489 http://gar.svn.sourceforge.net/gar/?rev=13489&view=rev Author: bdwalton Date: 2011-02-27 21:10:30 +0000 (Sun, 27 Feb 2011) Log Message: ----------- apache2/branches/open-bug-squash: drop the checkpkg override for usr/local in suexec Modified Paths: -------------- csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak Modified: csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak =================================================================== --- csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak 2011-02-27 19:27:06 UTC (rev 13488) +++ csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak 2011-02-27 21:10:30 UTC (rev 13489) @@ -363,7 +363,7 @@ CHECKPKG_OVERRIDES_CSWapache2-devel += file-collision|/opt/csw/apache2/share/error/include/spacer.html|CSWapache2-devel|CSWapache2c CHECKPKG_OVERRIDES_CSWapache2-devel += file-collision|/opt/csw/apache2/share/error/include/top.html|CSWapache2-devel|CSWapache2c CHECKPKG_OVERRIDES_CSWapache2 += file-collision|/opt/csw/apache2/etc/extra/httpd-info.conf.CSW|CSWapache2|CSWapache2c -CHECKPKG_OVERRIDES_CSWap2suexec += file-with-bad-content|/usr/local|root/opt/csw/apache2/sbin/suexec + CHECKPKG_OVERRIDES_CSWapache2-devel += file-with-bad-content|/usr/local|root/opt/csw/apache2/include/httpd.h CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/export/home|root/opt/csw/apache2/share/manual/logs.html.en This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Sun Feb 27 22:18:45 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sun, 27 Feb 2011 21:18:45 +0000 Subject: [csw-devel] SF.net SVN: gar:[13490] csw/mgar/pkg/apache2/branches/open-bug-squash Message-ID: Revision: 13490 http://gar.svn.sourceforge.net/gar/?rev=13490&view=rev Author: bdwalton Date: 2011-02-27 21:18:44 +0000 (Sun, 27 Feb 2011) Log Message: ----------- apache2/branches/open-bug-squash: note the reason for the usr/local reference in httpd.h Modified Paths: -------------- csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile Added Paths: ----------- csw/mgar/pkg/apache2/branches/open-bug-squash/files/CSWapache2-devel.cswreleasenotes Modified: csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile =================================================================== --- csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile 2011-02-27 21:10:30 UTC (rev 13489) +++ csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile 2011-02-27 21:18:44 UTC (rev 13490) @@ -41,6 +41,8 @@ DISTFILES += CSWap2worker.postinstall CSWap2worker.postremove DISTFILES += CSWap2worker.preinstall +DISTFILES += CSWapache2-devel.cswreleasenotes + # Configuration templates DISTFILES += update20to22 DISTFILES += README.CSW.apache2 README.CSW.ap2_prefork Added: csw/mgar/pkg/apache2/branches/open-bug-squash/files/CSWapache2-devel.cswreleasenotes =================================================================== --- csw/mgar/pkg/apache2/branches/open-bug-squash/files/CSWapache2-devel.cswreleasenotes (rev 0) +++ csw/mgar/pkg/apache2/branches/open-bug-squash/files/CSWapache2-devel.cswreleasenotes 2011-02-27 21:18:44 UTC (rev 13490) @@ -0,0 +1,3 @@ +* /usr/local references: + - include/httpd.h: specifies default if no HTTPD_ROOT set, overridden via + ap_config_auto.h This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 27 22:24:28 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 27 Feb 2011 21:24:28 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[341] web/wordpresscsw/tools/statistics Message-ID: Revision: 341 http://opencsw.svn.sourceforge.net/opencsw/?rev=341&view=rev Author: wbonnet Date: 2011-02-27 21:24:28 +0000 (Sun, 27 Feb 2011) Log Message: ----------- Add uwatch statistics Modified Paths: -------------- web/wordpresscsw/tools/statistics/db-common.php Added Paths: ----------- web/wordpresscsw/tools/statistics/qaUwatchErrors.php Modified: web/wordpresscsw/tools/statistics/db-common.php =================================================================== --- web/wordpresscsw/tools/statistics/db-common.php 2011-02-27 16:53:31 UTC (rev 340) +++ web/wordpresscsw/tools/statistics/db-common.php 2011-02-27 21:24:28 UTC (rev 341) @@ -306,5 +306,36 @@ return $statCreationUpdate ; } + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Get the number of uwatch errors for the last 12 rolling months + // + // ----------------------------------------------------------------------------------------------------------------------- + function getUwatchErrorsOverLastYear() { + + // Initialize the variables + $statUwatch = array(); // array of data that will be returned to caller + $statIndex = 0; // current index + + for ($i = 0 ; $i < 52 ; $i ++) { + $statUwatch[$i][0] = 0; + $statUwatch[$i][1] = 2; + $statUwatch[$i][2] = 2011; + } + + // Define the query used to retrieve the packages from the database + $sqlQuery = "select STU_UWATCH_ERROR_COUNT, STU_MONTH, STU_YEAR from QA_STATS_UWATCH order by ID_STU desc limit 0,52;" ; + + // Execute the query to retrieve the row to update + $this->execQuery($sqlQuery); + + // Check if there is a result + while ($row = mysql_fetch_array($this->result)) { + $statUwatch[$statIndex++] = $row; // Yes there is a record, thus copy it to the array + } + + return $statUwatch ; + } } ?> Added: web/wordpresscsw/tools/statistics/qaUwatchErrors.php =================================================================== --- web/wordpresscsw/tools/statistics/qaUwatchErrors.php (rev 0) +++ web/wordpresscsw/tools/statistics/qaUwatchErrors.php 2011-02-27 21:24:28 UTC (rev 341) @@ -0,0 +1,94 @@ +setAntiAliasing(FALSE); + + $group = new PlotGroup; + $group->grid->setType(Line::DASHED); + + $group->setPadding(40, NULL, 20, NULL); + + $group->axis->left->setLabelNumber(8); + $group->axis->left->setLabelPrecision(1); + $group->axis->left->setTickStyle(Tick::OUT); + + // Statistics array population + $statPackage = array(); // Initialize the number of packages array + + // Create the DAO object + $statDAO = new mysqlDAO(); + + // Connect to database + $statDAO->connect(); + + // Retrieve the statistics from the database + $stats = $statDAO->getUwatchErrorsOverLastYear(); + + // Disconnect from database + $statDAO->disconnect(); + + for ($idxCounter = 51 ; $idxCounter >= 0 ; $idxCounter--) { // Loop used to copy data + $statPackage[$idxCounter] = $stats[51 - $idxCounter][0]; // into the creation array + } + + $plot = new LinePlot($statPackage); + + $plot->label->setFont(new Tuffy(7)); + $plot->label->setPadding(1, 1, 1, 1); + $plot->label->setCallbackFunction("labelFormat"); + $plot->label->setBackgroundColor( + new Color(227, 223, 241, 15) + ); + $plot->setColor(new Red()); + $plot->setFillColor(new LightRed(80)); + + $plot->mark->setType(Mark::CIRCLE); + $plot->mark->setFill(new MidRed); + $plot->mark->setSize(6); + + $group->legend->add($plot, "Number of uWatch errors", Legend::MARK); + $group->legend->setPosition(0.35, 0.15); + $group->add($plot); + + $group->axis->bottom->label->setCallbackFunction('setMonth'); + $group->axis->left->label->setCallbackFunction('setNumber'); + + $graph->add($group); + + $graph->draw(); + +?> Property changes on: web/wordpresscsw/tools/statistics/qaUwatchErrors.php ___________________________________________________________________ Added: svn:executable + * This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 27 22:25:30 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 27 Feb 2011 21:25:30 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[342] web/wordpresscsw/wp-content/themes/opencsw Message-ID: Revision: 342 http://opencsw.svn.sourceforge.net/opencsw/?rev=342&view=rev Author: wbonnet Date: 2011-02-27 21:25:30 +0000 (Sun, 27 Feb 2011) Log Message: ----------- Add uwatch statistics Added Paths: ----------- web/wordpresscsw/wp-content/themes/opencsw/qa-statistics-uwatch.php web/wordpresscsw/wp-content/themes/opencsw/qa-statistics.php Added: web/wordpresscsw/wp-content/themes/opencsw/qa-statistics-uwatch.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/qa-statistics-uwatch.php (rev 0) +++ web/wordpresscsw/wp-content/themes/opencsw/qa-statistics-uwatch.php 2011-02-27 21:25:30 UTC (rev 342) @@ -0,0 +1,22 @@ + + +
      +
      +
      +
      +

      uWatch Quality Assurance graphical statistics

      + The following graphics displays graphical statistical information about the execution of uWatch. +

      uWatch errors

      + Weekly view of uWatch errors over last year +
      +
      +
      +
      +
      +
      + + Added: web/wordpresscsw/wp-content/themes/opencsw/qa-statistics.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/qa-statistics.php (rev 0) +++ web/wordpresscsw/wp-content/themes/opencsw/qa-statistics.php 2011-02-27 21:25:30 UTC (rev 342) @@ -0,0 +1,39 @@ + + +
      +
      +
      +
      +

      OpenCSW Quality Assurance statistics

      + The purpose of the OpenCSW QA statistics pages is to provide statistics and graphical information about project QA. The pages display the evolution of the various information available from the QA pages. +

      Weekly Quality Assurance statistics

      + The following links displays the weekly graphical evolution of the monitored QA parameters. + +
      +
      +
      +
      +
      +
      + + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 27 22:26:03 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 27 Feb 2011 21:26:03 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[343] web/wordpresscsw/wp-content/plugins/opencsw/ opencsw.php Message-ID: Revision: 343 http://opencsw.svn.sourceforge.net/opencsw/?rev=343&view=rev Author: wbonnet Date: 2011-02-27 21:26:03 +0000 (Sun, 27 Feb 2011) Log Message: ----------- Add uwatch statistics Modified Paths: -------------- web/wordpresscsw/wp-content/plugins/opencsw/opencsw.php Modified: web/wordpresscsw/wp-content/plugins/opencsw/opencsw.php =================================================================== --- web/wordpresscsw/wp-content/plugins/opencsw/opencsw.php 2011-02-27 21:25:30 UTC (rev 342) +++ web/wordpresscsw/wp-content/plugins/opencsw/opencsw.php 2011-02-27 21:26:03 UTC (rev 343) @@ -67,21 +67,28 @@ '^packages$' => 'index.php?packages=full' , '^packages?/(.+)' => 'index.php?packageName=' . $wp_rewrite->preg_index(1) , - '^qa$' => 'index.php?qa=full' , - '^qa/packages/orphaned' => 'index.php?qaOrphanedPackages=full' , - '^qa/packages/upgradable/stable$' => 'index.php?qaPackageWaitingForStable=full' , - '^qa/packages/upgradable/testing$' => 'index.php?qaPackageWaitingForTesting=full' , - '^qa/packages/upgradable/unstable$' => 'index.php?qaPackageWaitingForUnstable=full' , - '^qa/packages/upgradable/gar$' => 'index.php?qaPackageWaitingForGar=full' , + '^qa$' => 'index.php?qa=full' , + '^qa/packages/orphaned' => 'index.php?qaOrphanedPackages=full' , + '^qa/packages/upgradable/stable$' => 'index.php?qaPackageWaitingForStable=full' , + '^qa/packages/upgradable/testing$' => 'index.php?qaPackageWaitingForTesting=full' , + '^qa/packages/upgradable/unstable$' => 'index.php?qaPackageWaitingForUnstable=full' , + '^qa/packages/upgradable/gar$' => 'index.php?qaPackageWaitingForGar=full' , - '^qa/packages/uwatch/errors?$' => 'index.php?qaUwatchError=full' , - '^qa/packages/uwatch/disabled$' => 'index.php?qaUwatchDisabled=full' , - '^qa/packages/gar/missing$' => 'index.php?qaGarMissing=full' , - '^qa/packages/gar/pending$' => 'index.php?qaGarPending=full' , + '^qa/packages/uwatch/errors?$' => 'index.php?qaUwatchError=full' , + '^qa/packages/uwatch/disabled$' => 'index.php?qaUwatchDisabled=full' , + '^qa/packages/gar/missing$' => 'index.php?qaGarMissing=full' , + '^qa/packages/gar/pending$' => 'index.php?qaGarPending=full' , - '^qa/maintainers/retired' => 'index.php?qaRetiredMaintainers=full' , - '^qa/maintainers/activity' => 'index.php?qaMaintainersActivity=full' , + '^qa/maintainers/retired' => 'index.php?qaRetiredMaintainers=full' , + '^qa/maintainers/activity' => 'index.php?qaMaintainersActivity=full' , + '^qa/statistics$' => 'index.php?qaStatistics=full' , + '^qa/statistics/uwatch$' => 'index.php?qaStatisticsUwatch=full' , + '^qa/statistics/gar$' => 'index.php?qaStatisticsGar=full' , + '^qa/statistics/packages$' => 'index.php?qaStatisticsPackages=full' , + '^qa/statistics/upgrades$' => 'index.php?qaStatisticsUpgrade=full' , + '^qa/statistics/maintainers$' => 'index.php?qaStatisticsMaintainers=full' , + '^qa/packages?/(.+)' => 'index.php?qaPackageName=' . $wp_rewrite->preg_index(1) , '^qa/maintainers?/(.+)' => 'index.php?qaMaintainerName=' . $wp_rewrite->preg_index(1) , '^qa/maintainers$' => 'index.php?qaMaintainers=full' , @@ -107,13 +114,28 @@ $qvars[] = 'maintainers'; $qvars[] = 'displayMaintainerInfo'; $qvars[] = 'maintainerName'; + $qvars[] = 'maintainerFullName'; + $qvars[] = 'qa'; $qvars[] = 'qaMaintainerName'; $qvars[] = 'qaMaintainers'; $qvars[] = 'qaRetiredMaintainers'; $qvars[] = 'qaMaintainersActivity'; $qvars[] = 'qaOrphanedPackages'; - $qvars[] = 'maintainerFullName'; + $qvars[] = 'qaUwatchDisabled'; + $qvars[] = 'qaUwatchError'; + $qvars[] = 'qaGarMissing'; + $qvars[] = 'qaGarPending'; + $qvars[] = 'qaPackageWaitingForStable'; + $qvars[] = 'qaPackageWaitingForTesting'; + $qvars[] = 'qaPackageWaitingForUnstable'; + $qvars[] = 'qaPackageWaitingForGar'; + $qvars[] = 'qaStatistics'; + $qvars[] = 'qaStatisticsUwatch'; + $qvars[] = 'qaStatisticsGar'; + $qvars[] = 'qaStatisticsPackages'; + $qvars[] = 'qaStatisticsUpgrade'; + $qvars[] = 'qaStatisticsMaintainers'; $qvars[] = 'composeEmail'; $qvars[] = 'requestPackage'; $qvars[] = 'sendEmail'; @@ -121,6 +143,7 @@ $qvars[] = 'emailSubject'; $qvars[] = 'emailAddress'; $qvars[] = 'emailBody'; + $qvars[] = 'packageName'; $qvars[] = 'qaPackageName'; $qvars[] = 'softwareName'; @@ -133,14 +156,6 @@ $qvars[] = 'filesInPackage'; $qvars[] = 'searchFilesAndPackages'; $qvars[] = 'packagesContainingFile'; - $qvars[] = 'qaUwatchDisabled'; - $qvars[] = 'qaUwatchError'; - $qvars[] = 'qaGarMissing'; - $qvars[] = 'qaGarPending'; - $qvars[] = 'qaPackageWaitingForStable'; - $qvars[] = 'qaPackageWaitingForTesting'; - $qvars[] = 'qaPackageWaitingForUnstable'; - $qvars[] = 'qaPackageWaitingForGar'; return $qvars; } @@ -175,7 +190,80 @@ } } + // Test if the arg qaMaintainerName is in the query string + if ( $wp_query->get('qaStatistics') ) + { + // Yes, thus we are display a detailled maintainer page, not the full list + if (file_exists( TEMPLATEPATH . '/qa-statistics.php' )) + { + // File exist, thus lets include the template + include( TEMPLATEPATH . '/qa-statistics.php' ); + exit; + } + } + + // Test if the arg qaMaintainerName is in the query string + if ( $wp_query->get('qaStatisticsUwatch') ) + { + // Yes, thus we are display a detailled maintainer page, not the full list + if (file_exists( TEMPLATEPATH . '/qa-statistics-uwatch.php' )) + { + // File exist, thus lets include the template + include( TEMPLATEPATH . '/qa-statistics-uwatch.php' ); + exit; + } + } + + // Test if the arg qaMaintainerName is in the query string + if ( $wp_query->get('qaStatisticsGar') ) + { + // Yes, thus we are display a detailled maintainer page, not the full list + if (file_exists( TEMPLATEPATH . '/qa-statistics-gar.php' )) + { + // File exist, thus lets include the template + include( TEMPLATEPATH . '/qa-statistics-gar.php' ); + exit; + } + } + + // Test if the arg qaMaintainerName is in the query string + if ( $wp_query->get('qaStatisticsPackages') ) + { + // Yes, thus we are display a detailled maintainer page, not the full list + if (file_exists( TEMPLATEPATH . '/qa-statistics-packages.php' )) + { + // File exist, thus lets include the template + include( TEMPLATEPATH . '/qa-statistics-packages.php' ); + exit; + } + } + + // Test if the arg qaMaintainerName is in the query string + if ( $wp_query->get('qaStatisticsUpgrade') ) + { + // Yes, thus we are display a detailled maintainer page, not the full list + if (file_exists( TEMPLATEPATH . '/qa-statistics-upgrade.php' )) + { + // File exist, thus lets include the template + include( TEMPLATEPATH . '/qa-statistics-upgrade.php' ); + exit; + } + } + + // Test if the arg qaMaintainerName is in the query string + if ( $wp_query->get('qaStatisticsMaintainers') ) + { + // Yes, thus we are display a detailled maintainer page, not the full list + if (file_exists( TEMPLATEPATH . '/qa-statistics-maintainers.php' )) + { + // File exist, thus lets include the template + include( TEMPLATEPATH . '/qa-statistics-maintainers.php' ); + exit; + } + } + + // Test if the arg qaMaintainerName is in the query string if ( $wp_query->get('qaMaintainerName') ) { // Yes, thus we are display a detailled maintainer page, not the full list This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Sun Feb 27 22:52:45 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sun, 27 Feb 2011 21:52:45 +0000 Subject: [csw-devel] SF.net SVN: gar:[13491] csw/mgar/pkg/apache2/branches/open-bug-squash Message-ID: Revision: 13491 http://gar.svn.sourceforge.net/gar/?rev=13491&view=rev Author: bdwalton Date: 2011-02-27 21:52:45 +0000 (Sun, 27 Feb 2011) Log Message: ----------- apache2/branches/open-bug-squash: move a permanent override into the main Makefile Modified Paths: -------------- csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak Modified: csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile =================================================================== --- csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile 2011-02-27 21:18:44 UTC (rev 13490) +++ csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile 2011-02-27 21:52:45 UTC (rev 13491) @@ -100,6 +100,8 @@ CHECKPKG_OVERRIDES_CSWap2worker += surplus-dependency|CSWap2prefork CHECKPKG_OVERRIDES_CSWapache2rt += surplus-dependency|CSWapache2 +CHECKPKG_OVERRIDES_CSWapache2-devel += file-with-bad-content|/usr/local|root/opt/csw/apache2/include/httpd.h + # We need this to get bdb48/lib into the runpath EXTRA_LIB = $(prefix)/bdb48/lib Modified: csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak =================================================================== --- csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak 2011-02-27 21:18:44 UTC (rev 13490) +++ csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak 2011-02-27 21:52:45 UTC (rev 13491) @@ -364,8 +364,6 @@ CHECKPKG_OVERRIDES_CSWapache2-devel += file-collision|/opt/csw/apache2/share/error/include/top.html|CSWapache2-devel|CSWapache2c CHECKPKG_OVERRIDES_CSWapache2 += file-collision|/opt/csw/apache2/etc/extra/httpd-info.conf.CSW|CSWapache2|CSWapache2c -CHECKPKG_OVERRIDES_CSWapache2-devel += file-with-bad-content|/usr/local|root/opt/csw/apache2/include/httpd.h - CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/export/home|root/opt/csw/apache2/share/manual/logs.html.en CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/export/home|root/opt/csw/apache2/share/manual/logs.html.ja.utf8 CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/export/home|root/opt/csw/apache2/share/manual/logs.html.tr.utf8 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Sun Feb 27 22:57:50 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sun, 27 Feb 2011 21:57:50 +0000 Subject: [csw-devel] SF.net SVN: gar:[13492] csw/mgar/pkg/apache2/branches/open-bug-squash Message-ID: Revision: 13492 http://gar.svn.sourceforge.net/gar/?rev=13492&view=rev Author: bdwalton Date: 2011-02-27 21:57:50 +0000 (Sun, 27 Feb 2011) Log Message: ----------- apache2/branches/open-bug-squash: modify some /export/home strings in the manual and drop the checkpkg overrides for them Modified Paths: -------------- csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak Modified: csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile =================================================================== --- csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile 2011-02-27 21:52:45 UTC (rev 13491) +++ csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile 2011-02-27 21:57:50 UTC (rev 13492) @@ -292,6 +292,12 @@ perl -pi \ -e 's@/usr/local/apache2*@/opt/csw/apache2 at g;' \ -e 's@/usr/local@/opt/csw/apache2 at g') + @echo Fixing export/home references in the online manaual... + @(cd $(PKGROOT)/$(prefix)/apache2/share/manual; \ + /opt/csw/bin/gfind . -type f -print0 | \ + /opt/csw/bin/gxargs -0 \ + perl -pi \ + -e 's@/export/home@/home at g;') @echo Fixing usr/local reference in the cgi-bin scripts @(cd $(PKGROOT)/$(prefix)/apache2/share/cgi-bin; \ perl -pi -e 's@/usr/local/bin@/opt/csw/bin at g' *) Modified: csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak =================================================================== --- csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak 2011-02-27 21:52:45 UTC (rev 13491) +++ csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak 2011-02-27 21:57:50 UTC (rev 13492) @@ -364,14 +364,5 @@ CHECKPKG_OVERRIDES_CSWapache2-devel += file-collision|/opt/csw/apache2/share/error/include/top.html|CSWapache2-devel|CSWapache2c CHECKPKG_OVERRIDES_CSWapache2 += file-collision|/opt/csw/apache2/etc/extra/httpd-info.conf.CSW|CSWapache2|CSWapache2c -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/export/home|root/opt/csw/apache2/share/manual/logs.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/export/home|root/opt/csw/apache2/share/manual/logs.html.ja.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/export/home|root/opt/csw/apache2/share/manual/logs.html.tr.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/export/home|root/opt/csw/apache2/share/manual/logs.html.ko.euc-kr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/export/home|root/opt/csw/apache2/share/manual/mod/mod_ext_filter.html.ja.utf8 -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/export/home|root/opt/csw/apache2/share/manual/mod/mod_charset_lite.html.ko.euc-kr -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/export/home|root/opt/csw/apache2/share/manual/mod/mod_charset_lite.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/export/home|root/opt/csw/apache2/share/manual/mod/mod_ext_filter.html.en -CHECKPKG_OVERRIDES_CSWapache2-manual += file-with-bad-content|/export/home|root/opt/csw/apache2/share/manual/mod/mod_ext_filter.html.ko.euc-kr CHECKPKG_OVERRIDES_CSWapache2 += file-with-bad-content|/usr/local|root/opt/csw/apache2/sbin/httpd.prefork CHECKPKG_OVERRIDES_CSWap2worker += file-with-bad-content|/usr/local|root/opt/csw/apache2/sbin/httpd.worker This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 27 23:22:54 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 27 Feb 2011 22:22:54 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[344] web/wordpresscsw/wp-content/themes/opencsw Message-ID: Revision: 344 http://opencsw.svn.sourceforge.net/opencsw/?rev=344&view=rev Author: wbonnet Date: 2011-02-27 22:22:54 +0000 (Sun, 27 Feb 2011) Log Message: ----------- Add uwatch statistics Added Paths: ----------- web/wordpresscsw/wp-content/themes/opencsw/qa-statistics-gar.php web/wordpresscsw/wp-content/themes/opencsw/qa-statistics-maintainers.php web/wordpresscsw/wp-content/themes/opencsw/qa-statistics-packages.php web/wordpresscsw/wp-content/themes/opencsw/qa-statistics-upgrade.php Added: web/wordpresscsw/wp-content/themes/opencsw/qa-statistics-gar.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/qa-statistics-gar.php (rev 0) +++ web/wordpresscsw/wp-content/themes/opencsw/qa-statistics-gar.php 2011-02-27 22:22:54 UTC (rev 344) @@ -0,0 +1,26 @@ + + +
      +
      +
      +
      +

      GAR Quality Assurance graphical statistics

      + The following graphics displays graphical statistical information about packages in GAR. +

      Packages missing from GAR

      + Weekly view,  over last year, of the number of packages missing from the GAR repository +
      +
      +

      Packages pending in GAR

      + Weekly view,  over last year, of the number of packages pending in the GAR repository +
      +
      +
      +
      +
      +
      + + Added: web/wordpresscsw/wp-content/themes/opencsw/qa-statistics-maintainers.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/qa-statistics-maintainers.php (rev 0) +++ web/wordpresscsw/wp-content/themes/opencsw/qa-statistics-maintainers.php 2011-02-27 22:22:54 UTC (rev 344) @@ -0,0 +1,26 @@ + + +
      +
      +
      +
      +

      Maintainers Quality Assurance graphical statistics

      + The following graphics displays graphical statistical information about maintainers. +

      Number of active maintainers

      + Weekly view,  over last year, of the number of active maintainers +
      +
      +

      Number of retired maintainers still owning packages

      + Weekly view,  over last year, of the number of retired maintainers still owning packages +
      +
      +
      +
      +
      +
      + + Added: web/wordpresscsw/wp-content/themes/opencsw/qa-statistics-packages.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/qa-statistics-packages.php (rev 0) +++ web/wordpresscsw/wp-content/themes/opencsw/qa-statistics-packages.php 2011-02-27 22:22:54 UTC (rev 344) @@ -0,0 +1,22 @@ + + +
      +
      +
      +
      +

      Packages Quality Assurance graphical statistics

      + The following graphics displays graphical statistical information about packages. +

      Orphaned packages

      + Weekly view,  over last year, of the number of orphaned packages +
      +
      +
      +
      +
      +
      + + Added: web/wordpresscsw/wp-content/themes/opencsw/qa-statistics-upgrade.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/qa-statistics-upgrade.php (rev 0) +++ web/wordpresscsw/wp-content/themes/opencsw/qa-statistics-upgrade.php 2011-02-27 22:22:54 UTC (rev 344) @@ -0,0 +1,34 @@ + + +
      +
      +
      +
      +

      Available upgrades Quality Assurance graphical statistics

      + The following graphics displays graphical statistical information about packages which can be upgraded in the different catalogs. +

      Number of packages upgradable in stable catalog

      + Weekly view, over last year, of the number of packages upgradable in the stable catalog +
      +
      +

      Number of packages upgradable in testing catalog

      + Weekly view, over last year, of the number of packages upgradable in the testing catalog +
      +
      +

      Number of packages upgradable in unstable catalog

      + Weekly view, over last year, of the number of packages upgradable in the unstable catalog +
      +
      +

      Number of packages upgradable in GAR

      + Weekly view, over last year, of the number of packages upgradable in GAR +
      +
      +
      +
      +
      +
      + + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 27 23:23:33 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 27 Feb 2011 22:23:33 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[345] web/wordpresscsw/tools/statistics Message-ID: Revision: 345 http://opencsw.svn.sourceforge.net/opencsw/?rev=345&view=rev Author: wbonnet Date: 2011-02-27 22:23:33 +0000 (Sun, 27 Feb 2011) Log Message: ----------- Add uwatch statistics Modified Paths: -------------- web/wordpresscsw/tools/statistics/db-common.php Added Paths: ----------- web/wordpresscsw/tools/statistics/qaActiveMaintainers.php web/wordpresscsw/tools/statistics/qaBugStatistics.php web/wordpresscsw/tools/statistics/qaGarMissing.php web/wordpresscsw/tools/statistics/qaGarPending.php web/wordpresscsw/tools/statistics/qaOrphanedPackages.php web/wordpresscsw/tools/statistics/qaRetiredMaintainers.php web/wordpresscsw/tools/statistics/qaUpgradeGar.php web/wordpresscsw/tools/statistics/qaUpgradeStable.php web/wordpresscsw/tools/statistics/qaUpgradeTesting.php web/wordpresscsw/tools/statistics/qaUpgradeUnstable.php Modified: web/wordpresscsw/tools/statistics/db-common.php =================================================================== --- web/wordpresscsw/tools/statistics/db-common.php 2011-02-27 22:22:54 UTC (rev 344) +++ web/wordpresscsw/tools/statistics/db-common.php 2011-02-27 22:23:33 UTC (rev 345) @@ -337,5 +337,284 @@ return $statUwatch ; } + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Get the number of packages missing in GAR for the last 12 rolling months + // + // ----------------------------------------------------------------------------------------------------------------------- + function getGarMissingOverLastYear() { + + // Initialize the variables + $statUwatch = array(); // array of data that will be returned to caller + $statIndex = 0; // current index + + for ($i = 0 ; $i < 52 ; $i ++) { + $statUwatch[$i][0] = 0; + $statUwatch[$i][1] = 2; + $statUwatch[$i][2] = 2011; + } + + // Define the query used to retrieve the packages from the database + $sqlQuery = "select STU_GAR_MISSING_COUNT, STU_MONTH, STU_YEAR from QA_STATS_UWATCH order by ID_STU desc limit 0,52;" ; + + // Execute the query to retrieve the row to update + $this->execQuery($sqlQuery); + + // Check if there is a result + while ($row = mysql_fetch_array($this->result)) { + $statUwatch[$statIndex++] = $row; // Yes there is a record, thus copy it to the array + } + + return $statUwatch ; + } + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Get the number of packages pending in GAR for the last 12 rolling months + // + // ----------------------------------------------------------------------------------------------------------------------- + function getGarPendingOverLastYear() { + + // Initialize the variables + $statUwatch = array(); // array of data that will be returned to caller + $statIndex = 0; // current index + + for ($i = 0 ; $i < 52 ; $i ++) { + $statUwatch[$i][0] = 0; + $statUwatch[$i][1] = 2; + $statUwatch[$i][2] = 2011; + } + + // Define the query used to retrieve the packages from the database + $sqlQuery = "select STU_GAR_PENDING_COUNT, STU_MONTH, STU_YEAR from QA_STATS_UWATCH order by ID_STU desc limit 0,52;" ; + + // Execute the query to retrieve the row to update + $this->execQuery($sqlQuery); + + // Check if there is a result + while ($row = mysql_fetch_array($this->result)) { + $statUwatch[$statIndex++] = $row; // Yes there is a record, thus copy it to the array + } + + return $statUwatch ; + } + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Get the number of orphaned packages for the last 12 rolling months + // + // ----------------------------------------------------------------------------------------------------------------------- + function getOrphanedPackagesOverLastYear() { + + // Initialize the variables + $statUwatch = array(); // array of data that will be returned to caller + $statIndex = 0; // current index + + for ($i = 0 ; $i < 52 ; $i ++) { + $statUwatch[$i][0] = 0; + $statUwatch[$i][1] = 2; + $statUwatch[$i][2] = 2011; + } + + // Define the query used to retrieve the packages from the database + $sqlQuery = "select STU_PKG_ORPHANED_COUNT, STU_MONTH, STU_YEAR from QA_STATS_UWATCH order by ID_STU desc limit 0,52;" ; + + // Execute the query to retrieve the row to update + $this->execQuery($sqlQuery); + + // Check if there is a result + while ($row = mysql_fetch_array($this->result)) { + $statUwatch[$statIndex++] = $row; // Yes there is a record, thus copy it to the array + } + + return $statUwatch ; + } + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Get the number of active maintainers for the last 12 rolling months + // + // ----------------------------------------------------------------------------------------------------------------------- + function getActiveMaintainersOverLastYear() { + + // Initialize the variables + $statUwatch = array(); // array of data that will be returned to caller + $statIndex = 0; // current index + + for ($i = 0 ; $i < 52 ; $i ++) { + $statUwatch[$i][0] = 0; + $statUwatch[$i][1] = 2; + $statUwatch[$i][2] = 2011; + } + + // Define the query used to retrieve the packages from the database + $sqlQuery = "select STU_ACTIVE_MAINTAINER_COUNT, STU_MONTH, STU_YEAR from QA_STATS_UWATCH order by ID_STU desc limit 0,52;" ; + + // Execute the query to retrieve the row to update + $this->execQuery($sqlQuery); + + // Check if there is a result + while ($row = mysql_fetch_array($this->result)) { + $statUwatch[$statIndex++] = $row; // Yes there is a record, thus copy it to the array + } + + return $statUwatch ; + } + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Get the number of retired maintainers with packages for the last 12 rolling months + // + // ----------------------------------------------------------------------------------------------------------------------- + function getRetiredMaintainersOverLastYear() { + + // Initialize the variables + $statUwatch = array(); // array of data that will be returned to caller + $statIndex = 0; // current index + + for ($i = 0 ; $i < 52 ; $i ++) { + $statUwatch[$i][0] = 0; + $statUwatch[$i][1] = 2; + $statUwatch[$i][2] = 2011; + } + + // Define the query used to retrieve the packages from the database + $sqlQuery = "select STU_RETIRED_MAINTAINER_COUNT, STU_MONTH, STU_YEAR from QA_STATS_UWATCH order by ID_STU desc limit 0,52;" ; + + // Execute the query to retrieve the row to update + $this->execQuery($sqlQuery); + + // Check if there is a result + while ($row = mysql_fetch_array($this->result)) { + $statUwatch[$statIndex++] = $row; // Yes there is a record, thus copy it to the array + } + + return $statUwatch ; + } + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Get the number of stable package which can be upgraded for the last 12 rolling months + // + // ----------------------------------------------------------------------------------------------------------------------- + function getUpgradablePackagesInStableOverLastYear() { + + // Initialize the variables + $statUwatch = array(); // array of data that will be returned to caller + $statIndex = 0; // current index + + for ($i = 0 ; $i < 52 ; $i ++) { + $statUwatch[$i][0] = 0; + $statUwatch[$i][1] = 2; + $statUwatch[$i][2] = 2011; + } + + // Define the query used to retrieve the packages from the database + $sqlQuery = "select STU_STABLE_UPGRADABLE_COUNT, STU_MONTH, STU_YEAR from QA_STATS_UWATCH order by ID_STU desc limit 0,52;" ; + + // Execute the query to retrieve the row to update + $this->execQuery($sqlQuery); + + // Check if there is a result + while ($row = mysql_fetch_array($this->result)) { + $statUwatch[$statIndex++] = $row; // Yes there is a record, thus copy it to the array + } + + return $statUwatch ; + } + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Get the number of unstable package which can be upgraded for the last 12 rolling months + // + // ----------------------------------------------------------------------------------------------------------------------- + function getUpgradablePackagesInUnstableOverLastYear() { + + // Initialize the variables + $statUwatch = array(); // array of data that will be returned to caller + $statIndex = 0; // current index + + for ($i = 0 ; $i < 52 ; $i ++) { + $statUwatch[$i][0] = 0; + $statUwatch[$i][1] = 2; + $statUwatch[$i][2] = 2011; + } + + // Define the query used to retrieve the packages from the database + $sqlQuery = "select STU_UNSTABLE_UPGRADABLE_COUNT, STU_MONTH, STU_YEAR from QA_STATS_UWATCH order by ID_STU desc limit 0,52;" ; + + // Execute the query to retrieve the row to update + $this->execQuery($sqlQuery); + + // Check if there is a result + while ($row = mysql_fetch_array($this->result)) { + $statUwatch[$statIndex++] = $row; // Yes there is a record, thus copy it to the array + } + + return $statUwatch ; + } + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Get the number of testing package which can be upgraded for the last 12 rolling months + // + // ----------------------------------------------------------------------------------------------------------------------- + function getUpgradablePackagesInTestingOverLastYear() { + + // Initialize the variables + $statUwatch = array(); // array of data that will be returned to caller + $statIndex = 0; // current index + + for ($i = 0 ; $i < 52 ; $i ++) { + $statUwatch[$i][0] = 0; + $statUwatch[$i][1] = 2; + $statUwatch[$i][2] = 2011; + } + + // Define the query used to retrieve the packages from the database + $sqlQuery = "select STU_TESTING_UPGRADABLE_COUNT, STU_MONTH, STU_YEAR from QA_STATS_UWATCH order by ID_STU desc limit 0,52;" ; + + // Execute the query to retrieve the row to update + $this->execQuery($sqlQuery); + + // Check if there is a result + while ($row = mysql_fetch_array($this->result)) { + $statUwatch[$statIndex++] = $row; // Yes there is a record, thus copy it to the array + } + + return $statUwatch ; + } + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Get the number of gar package which can be upgraded for the last 12 rolling months + // + // ----------------------------------------------------------------------------------------------------------------------- + function getUpgradablePackagesInGarOverLastYear() { + + // Initialize the variables + $statUwatch = array(); // array of data that will be returned to caller + $statIndex = 0; // current index + + for ($i = 0 ; $i < 52 ; $i ++) { + $statUwatch[$i][0] = 0; + $statUwatch[$i][1] = 2; + $statUwatch[$i][2] = 2011; + } + + // Define the query used to retrieve the packages from the database + $sqlQuery = "select STU_GAR_UPGRADABLE_COUNT, STU_MONTH, STU_YEAR from QA_STATS_UWATCH order by ID_STU desc limit 0,52;" ; + + // Execute the query to retrieve the row to update + $this->execQuery($sqlQuery); + + // Check if there is a result + while ($row = mysql_fetch_array($this->result)) { + $statUwatch[$statIndex++] = $row; // Yes there is a record, thus copy it to the array + } + + return $statUwatch ; + } } ?> Added: web/wordpresscsw/tools/statistics/qaActiveMaintainers.php =================================================================== --- web/wordpresscsw/tools/statistics/qaActiveMaintainers.php (rev 0) +++ web/wordpresscsw/tools/statistics/qaActiveMaintainers.php 2011-02-27 22:23:33 UTC (rev 345) @@ -0,0 +1,94 @@ +setAntiAliasing(FALSE); + + $group = new PlotGroup; + $group->grid->setType(Line::DASHED); + + $group->setPadding(40, NULL, 20, NULL); + + $group->axis->left->setLabelNumber(8); + $group->axis->left->setLabelPrecision(1); + $group->axis->left->setTickStyle(Tick::OUT); + + // Statistics array population + $statPackage = array(); // Initialize the number of packages array + + // Create the DAO object + $statDAO = new mysqlDAO(); + + // Connect to database + $statDAO->connect(); + + // Retrieve the statistics from the database + $stats = $statDAO->getActiveMaintainersOverLastYear(); + + // Disconnect from database + $statDAO->disconnect(); + + for ($idxCounter = 51 ; $idxCounter >= 0 ; $idxCounter--) { // Loop used to copy data + $statPackage[$idxCounter] = $stats[51 - $idxCounter][0]; // into the creation array + } + + $plot = new LinePlot($statPackage); + + $plot->label->setFont(new Tuffy(7)); + $plot->label->setPadding(1, 1, 1, 1); + $plot->label->setCallbackFunction("labelFormat"); + $plot->label->setBackgroundColor( + new Color(227, 223, 241, 15) + ); + $plot->setColor(new Red()); + $plot->setFillColor(new LightRed(80)); + + $plot->mark->setType(Mark::CIRCLE); + $plot->mark->setFill(new MidRed); + $plot->mark->setSize(6); + + $group->legend->add($plot, "Number of active maintainers", Legend::MARK); + $group->legend->setPosition(0.35, 0.15); + $group->add($plot); + + $group->axis->bottom->label->setCallbackFunction('setMonth'); + $group->axis->left->label->setCallbackFunction('setNumber'); + + $graph->add($group); + + $graph->draw(); + +?> Added: web/wordpresscsw/tools/statistics/qaBugStatistics.php =================================================================== --- web/wordpresscsw/tools/statistics/qaBugStatistics.php (rev 0) +++ web/wordpresscsw/tools/statistics/qaBugStatistics.php 2011-02-27 22:23:33 UTC (rev 345) @@ -0,0 +1,94 @@ +setAntiAliasing(FALSE); + + $group = new PlotGroup; + $group->grid->setType(Line::DASHED); + + $group->setPadding(40, NULL, 20, NULL); + + $group->axis->left->setLabelNumber(8); + $group->axis->left->setLabelPrecision(1); + $group->axis->left->setTickStyle(Tick::OUT); + + // Statistics array population + $statPackage = array(); // Initialize the number of packages array + + // Create the DAO object + $statDAO = new mysqlDAO(); + + // Connect to database + $statDAO->connect(); + + // Retrieve the statistics from the database + $stats = $statDAO->getUwatchErrorsOverLastYear(); + + // Disconnect from database + $statDAO->disconnect(); + + for ($idxCounter = 51 ; $idxCounter >= 0 ; $idxCounter--) { // Loop used to copy data + $statPackage[$idxCounter] = $stats[51 - $idxCounter][0]; // into the creation array + } + + $plot = new LinePlot($statPackage); + + $plot->label->setFont(new Tuffy(7)); + $plot->label->setPadding(1, 1, 1, 1); + $plot->label->setCallbackFunction("labelFormat"); + $plot->label->setBackgroundColor( + new Color(227, 223, 241, 15) + ); + $plot->setColor(new Green()); + $plot->setFillColor(new LightGreen(80)); + + $plot->mark->setType(Mark::CIRCLE); + $plot->mark->setFill(new MidGreen); + $plot->mark->setSize(6); + + $group->legend->add($plot, "Number of available packages", Legend::MARK); + $group->legend->setPosition(0.35, 0.15); + $group->add($plot); + + $group->axis->bottom->label->setCallbackFunction('setMonth'); + $group->axis->left->label->setCallbackFunction('setNumber'); + + $graph->add($group); + + $graph->draw(); + +?> Property changes on: web/wordpresscsw/tools/statistics/qaBugStatistics.php ___________________________________________________________________ Added: svn:executable + * Added: web/wordpresscsw/tools/statistics/qaGarMissing.php =================================================================== --- web/wordpresscsw/tools/statistics/qaGarMissing.php (rev 0) +++ web/wordpresscsw/tools/statistics/qaGarMissing.php 2011-02-27 22:23:33 UTC (rev 345) @@ -0,0 +1,94 @@ +setAntiAliasing(FALSE); + + $group = new PlotGroup; + $group->grid->setType(Line::DASHED); + + $group->setPadding(40, NULL, 20, NULL); + + $group->axis->left->setLabelNumber(8); + $group->axis->left->setLabelPrecision(1); + $group->axis->left->setTickStyle(Tick::OUT); + + // Statistics array population + $statPackage = array(); // Initialize the number of packages array + + // Create the DAO object + $statDAO = new mysqlDAO(); + + // Connect to database + $statDAO->connect(); + + // Retrieve the statistics from the database + $stats = $statDAO->getGarMissingOverLastYear(); + + // Disconnect from database + $statDAO->disconnect(); + + for ($idxCounter = 51 ; $idxCounter >= 0 ; $idxCounter--) { // Loop used to copy data + $statPackage[$idxCounter] = $stats[51 - $idxCounter][0]; // into the creation array + } + + $plot = new LinePlot($statPackage); + + $plot->label->setFont(new Tuffy(7)); + $plot->label->setPadding(1, 1, 1, 1); + $plot->label->setCallbackFunction("labelFormat"); + $plot->label->setBackgroundColor( + new Color(227, 223, 241, 15) + ); + $plot->setColor(new Red()); + $plot->setFillColor(new LightRed(80)); + + $plot->mark->setType(Mark::CIRCLE); + $plot->mark->setFill(new MidRed); + $plot->mark->setSize(6); + + $group->legend->add($plot, "Number of packages missing in GAR", Legend::MARK); + $group->legend->setPosition(0.35, 0.15); + $group->add($plot); + + $group->axis->bottom->label->setCallbackFunction('setMonth'); + $group->axis->left->label->setCallbackFunction('setNumber'); + + $graph->add($group); + + $graph->draw(); + +?> Added: web/wordpresscsw/tools/statistics/qaGarPending.php =================================================================== --- web/wordpresscsw/tools/statistics/qaGarPending.php (rev 0) +++ web/wordpresscsw/tools/statistics/qaGarPending.php 2011-02-27 22:23:33 UTC (rev 345) @@ -0,0 +1,94 @@ +setAntiAliasing(FALSE); + + $group = new PlotGroup; + $group->grid->setType(Line::DASHED); + + $group->setPadding(40, NULL, 20, NULL); + + $group->axis->left->setLabelNumber(8); + $group->axis->left->setLabelPrecision(1); + $group->axis->left->setTickStyle(Tick::OUT); + + // Statistics array population + $statPackage = array(); // Initialize the number of packages array + + // Create the DAO object + $statDAO = new mysqlDAO(); + + // Connect to database + $statDAO->connect(); + + // Retrieve the statistics from the database + $stats = $statDAO->getGarPendingOverLastYear(); + + // Disconnect from database + $statDAO->disconnect(); + + for ($idxCounter = 51 ; $idxCounter >= 0 ; $idxCounter--) { // Loop used to copy data + $statPackage[$idxCounter] = $stats[51 - $idxCounter][0]; // into the creation array + } + + $plot = new LinePlot($statPackage); + + $plot->label->setFont(new Tuffy(7)); + $plot->label->setPadding(1, 1, 1, 1); + $plot->label->setCallbackFunction("labelFormat"); + $plot->label->setBackgroundColor( + new Color(227, 223, 241, 15) + ); + $plot->setColor(new Red()); + $plot->setFillColor(new LightRed(80)); + + $plot->mark->setType(Mark::CIRCLE); + $plot->mark->setFill(new MidRed); + $plot->mark->setSize(6); + + $group->legend->add($plot, "Number of packages pending in GAR", Legend::MARK); + $group->legend->setPosition(0.35, 0.15); + $group->add($plot); + + $group->axis->bottom->label->setCallbackFunction('setMonth'); + $group->axis->left->label->setCallbackFunction('setNumber'); + + $graph->add($group); + + $graph->draw(); + +?> Added: web/wordpresscsw/tools/statistics/qaOrphanedPackages.php =================================================================== --- web/wordpresscsw/tools/statistics/qaOrphanedPackages.php (rev 0) +++ web/wordpresscsw/tools/statistics/qaOrphanedPackages.php 2011-02-27 22:23:33 UTC (rev 345) @@ -0,0 +1,94 @@ +setAntiAliasing(FALSE); + + $group = new PlotGroup; + $group->grid->setType(Line::DASHED); + + $group->setPadding(40, NULL, 20, NULL); + + $group->axis->left->setLabelNumber(8); + $group->axis->left->setLabelPrecision(1); + $group->axis->left->setTickStyle(Tick::OUT); + + // Statistics array population + $statPackage = array(); // Initialize the number of packages array + + // Create the DAO object + $statDAO = new mysqlDAO(); + + // Connect to database + $statDAO->connect(); + + // Retrieve the statistics from the database + $stats = $statDAO->getOrphanedPackagesOverLastYear(); + + // Disconnect from database + $statDAO->disconnect(); + + for ($idxCounter = 51 ; $idxCounter >= 0 ; $idxCounter--) { // Loop used to copy data + $statPackage[$idxCounter] = $stats[51 - $idxCounter][0]; // into the creation array + } + + $plot = new LinePlot($statPackage); + + $plot->label->setFont(new Tuffy(7)); + $plot->label->setPadding(1, 1, 1, 1); + $plot->label->setCallbackFunction("labelFormat"); + $plot->label->setBackgroundColor( + new Color(227, 223, 241, 15) + ); + $plot->setColor(new Red()); + $plot->setFillColor(new LightRed(80)); + + $plot->mark->setType(Mark::CIRCLE); + $plot->mark->setFill(new MidRed); + $plot->mark->setSize(6); + + $group->legend->add($plot, "Number of orphaned packages", Legend::MARK); + $group->legend->setPosition(0.35, 0.15); + $group->add($plot); + + $group->axis->bottom->label->setCallbackFunction('setMonth'); + $group->axis->left->label->setCallbackFunction('setNumber'); + + $graph->add($group); + + $graph->draw(); + +?> Added: web/wordpresscsw/tools/statistics/qaRetiredMaintainers.php =================================================================== --- web/wordpresscsw/tools/statistics/qaRetiredMaintainers.php (rev 0) +++ web/wordpresscsw/tools/statistics/qaRetiredMaintainers.php 2011-02-27 22:23:33 UTC (rev 345) @@ -0,0 +1,94 @@ +setAntiAliasing(FALSE); + + $group = new PlotGroup; + $group->grid->setType(Line::DASHED); + + $group->setPadding(40, NULL, 20, NULL); + + $group->axis->left->setLabelNumber(8); + $group->axis->left->setLabelPrecision(1); + $group->axis->left->setTickStyle(Tick::OUT); + + // Statistics array population + $statPackage = array(); // Initialize the number of packages array + + // Create the DAO object + $statDAO = new mysqlDAO(); + + // Connect to database + $statDAO->connect(); + + // Retrieve the statistics from the database + $stats = $statDAO->getRetiredMaintainersOverLastYear(); + + // Disconnect from database + $statDAO->disconnect(); + + for ($idxCounter = 51 ; $idxCounter >= 0 ; $idxCounter--) { // Loop used to copy data + $statPackage[$idxCounter] = $stats[51 - $idxCounter][0]; // into the creation array + } + + $plot = new LinePlot($statPackage); + + $plot->label->setFont(new Tuffy(7)); + $plot->label->setPadding(1, 1, 1, 1); + $plot->label->setCallbackFunction("labelFormat"); + $plot->label->setBackgroundColor( + new Color(227, 223, 241, 15) + ); + $plot->setColor(new Red()); + $plot->setFillColor(new LightRed(80)); + + $plot->mark->setType(Mark::CIRCLE); + $plot->mark->setFill(new MidRed); + $plot->mark->setSize(6); + + $group->legend->add($plot, "Number of retired maintainers", Legend::MARK); + $group->legend->setPosition(0.35, 0.15); + $group->add($plot); + + $group->axis->bottom->label->setCallbackFunction('setMonth'); + $group->axis->left->label->setCallbackFunction('setNumber'); + + $graph->add($group); + + $graph->draw(); + +?> Added: web/wordpresscsw/tools/statistics/qaUpgradeGar.php =================================================================== --- web/wordpresscsw/tools/statistics/qaUpgradeGar.php (rev 0) +++ web/wordpresscsw/tools/statistics/qaUpgradeGar.php 2011-02-27 22:23:33 UTC (rev 345) @@ -0,0 +1,94 @@ +setAntiAliasing(FALSE); + + $group = new PlotGroup; + $group->grid->setType(Line::DASHED); + + $group->setPadding(40, NULL, 20, NULL); + + $group->axis->left->setLabelNumber(8); + $group->axis->left->setLabelPrecision(1); + $group->axis->left->setTickStyle(Tick::OUT); + + // Statistics array population + $statPackage = array(); // Initialize the number of packages array + + // Create the DAO object + $statDAO = new mysqlDAO(); + + // Connect to database + $statDAO->connect(); + + // Retrieve the statistics from the database + $stats = $statDAO->getUpgradablePackagesInGarOverLastYear(); + + // Disconnect from database + $statDAO->disconnect(); + + for ($idxCounter = 51 ; $idxCounter >= 0 ; $idxCounter--) { // Loop used to copy data + $statPackage[$idxCounter] = $stats[51 - $idxCounter][0]; // into the creation array + } + + $plot = new LinePlot($statPackage); + + $plot->label->setFont(new Tuffy(7)); + $plot->label->setPadding(1, 1, 1, 1); + $plot->label->setCallbackFunction("labelFormat"); + $plot->label->setBackgroundColor( + new Color(227, 223, 241, 15) + ); + $plot->setColor(new Red()); + $plot->setFillColor(new LightRed(80)); + + $plot->mark->setType(Mark::CIRCLE); + $plot->mark->setFill(new MidRed); + $plot->mark->setSize(6); + + $group->legend->add($plot, "Number of packages", Legend::MARK); + $group->legend->setPosition(0.35, 0.15); + $group->add($plot); + + $group->axis->bottom->label->setCallbackFunction('setMonth'); + $group->axis->left->label->setCallbackFunction('setNumber'); + + $graph->add($group); + + $graph->draw(); + +?> Added: web/wordpresscsw/tools/statistics/qaUpgradeStable.php =================================================================== --- web/wordpresscsw/tools/statistics/qaUpgradeStable.php (rev 0) +++ web/wordpresscsw/tools/statistics/qaUpgradeStable.php 2011-02-27 22:23:33 UTC (rev 345) @@ -0,0 +1,94 @@ +setAntiAliasing(FALSE); + + $group = new PlotGroup; + $group->grid->setType(Line::DASHED); + + $group->setPadding(40, NULL, 20, NULL); + + $group->axis->left->setLabelNumber(8); + $group->axis->left->setLabelPrecision(1); + $group->axis->left->setTickStyle(Tick::OUT); + + // Statistics array population + $statPackage = array(); // Initialize the number of packages array + + // Create the DAO object + $statDAO = new mysqlDAO(); + + // Connect to database + $statDAO->connect(); + + // Retrieve the statistics from the database + $stats = $statDAO->getUpgradablePackagesInStableOverLastYear(); + + // Disconnect from database + $statDAO->disconnect(); + + for ($idxCounter = 51 ; $idxCounter >= 0 ; $idxCounter--) { // Loop used to copy data + $statPackage[$idxCounter] = $stats[51 - $idxCounter][0]; // into the creation array + } + + $plot = new LinePlot($statPackage); + + $plot->label->setFont(new Tuffy(7)); + $plot->label->setPadding(1, 1, 1, 1); + $plot->label->setCallbackFunction("labelFormat"); + $plot->label->setBackgroundColor( + new Color(227, 223, 241, 15) + ); + $plot->setColor(new Red()); + $plot->setFillColor(new LightRed(80)); + + $plot->mark->setType(Mark::CIRCLE); + $plot->mark->setFill(new MidRed); + $plot->mark->setSize(6); + + $group->legend->add($plot, "Number of packages", Legend::MARK); + $group->legend->setPosition(0.35, 0.15); + $group->add($plot); + + $group->axis->bottom->label->setCallbackFunction('setMonth'); + $group->axis->left->label->setCallbackFunction('setNumber'); + + $graph->add($group); + + $graph->draw(); + +?> Added: web/wordpresscsw/tools/statistics/qaUpgradeTesting.php =================================================================== --- web/wordpresscsw/tools/statistics/qaUpgradeTesting.php (rev 0) +++ web/wordpresscsw/tools/statistics/qaUpgradeTesting.php 2011-02-27 22:23:33 UTC (rev 345) @@ -0,0 +1,94 @@ +setAntiAliasing(FALSE); + + $group = new PlotGroup; + $group->grid->setType(Line::DASHED); + + $group->setPadding(40, NULL, 20, NULL); + + $group->axis->left->setLabelNumber(8); + $group->axis->left->setLabelPrecision(1); + $group->axis->left->setTickStyle(Tick::OUT); + + // Statistics array population + $statPackage = array(); // Initialize the number of packages array + + // Create the DAO object + $statDAO = new mysqlDAO(); + + // Connect to database + $statDAO->connect(); + + // Retrieve the statistics from the database + $stats = $statDAO->getUpgradablePackagesInTestingOverLastYear(); + + // Disconnect from database + $statDAO->disconnect(); + + for ($idxCounter = 51 ; $idxCounter >= 0 ; $idxCounter--) { // Loop used to copy data + $statPackage[$idxCounter] = $stats[51 - $idxCounter][0]; // into the creation array + } + + $plot = new LinePlot($statPackage); + + $plot->label->setFont(new Tuffy(7)); + $plot->label->setPadding(1, 1, 1, 1); + $plot->label->setCallbackFunction("labelFormat"); + $plot->label->setBackgroundColor( + new Color(227, 223, 241, 15) + ); + $plot->setColor(new Red()); + $plot->setFillColor(new LightRed(80)); + + $plot->mark->setType(Mark::CIRCLE); + $plot->mark->setFill(new MidRed); + $plot->mark->setSize(6); + + $group->legend->add($plot, "Number of packages", Legend::MARK); + $group->legend->setPosition(0.35, 0.15); + $group->add($plot); + + $group->axis->bottom->label->setCallbackFunction('setMonth'); + $group->axis->left->label->setCallbackFunction('setNumber'); + + $graph->add($group); + + $graph->draw(); + +?> Added: web/wordpresscsw/tools/statistics/qaUpgradeUnstable.php =================================================================== --- web/wordpresscsw/tools/statistics/qaUpgradeUnstable.php (rev 0) +++ web/wordpresscsw/tools/statistics/qaUpgradeUnstable.php 2011-02-27 22:23:33 UTC (rev 345) @@ -0,0 +1,94 @@ +setAntiAliasing(FALSE); + + $group = new PlotGroup; + $group->grid->setType(Line::DASHED); + + $group->setPadding(40, NULL, 20, NULL); + + $group->axis->left->setLabelNumber(8); + $group->axis->left->setLabelPrecision(1); + $group->axis->left->setTickStyle(Tick::OUT); + + // Statistics array population + $statPackage = array(); // Initialize the number of packages array + + // Create the DAO object + $statDAO = new mysqlDAO(); + + // Connect to database + $statDAO->connect(); + + // Retrieve the statistics from the database + $stats = $statDAO->getUpgradablePackagesInUnstableOverLastYear(); + + // Disconnect from database + $statDAO->disconnect(); + + for ($idxCounter = 51 ; $idxCounter >= 0 ; $idxCounter--) { // Loop used to copy data + $statPackage[$idxCounter] = $stats[51 - $idxCounter][0]; // into the creation array + } + + $plot = new LinePlot($statPackage); + + $plot->label->setFont(new Tuffy(7)); + $plot->label->setPadding(1, 1, 1, 1); + $plot->label->setCallbackFunction("labelFormat"); + $plot->label->setBackgroundColor( + new Color(227, 223, 241, 15) + ); + $plot->setColor(new Red()); + $plot->setFillColor(new LightRed(80)); + + $plot->mark->setType(Mark::CIRCLE); + $plot->mark->setFill(new MidRed); + $plot->mark->setSize(6); + + $group->legend->add($plot, "Number of packages", Legend::MARK); + $group->legend->setPosition(0.35, 0.15); + $group->add($plot); + + $group->axis->bottom->label->setCallbackFunction('setMonth'); + $group->axis->left->label->setCallbackFunction('setNumber'); + + $graph->add($group); + + $graph->draw(); + +?> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Sun Feb 27 23:26:58 2011 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Sun, 27 Feb 2011 22:26:58 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[346] buildfarm/bin/generate-unstable Message-ID: Revision: 346 http://opencsw.svn.sourceforge.net/opencsw/?rev=346&view=rev Author: dmichelsen Date: 2011-02-27 22:26:58 +0000 (Sun, 27 Feb 2011) Log Message: ----------- generate-unstable: Passing explicit catalog release The default was 'current', which we don't want to generate. Modified Paths: -------------- buildfarm/bin/generate-unstable Modified: buildfarm/bin/generate-unstable =================================================================== --- buildfarm/bin/generate-unstable 2011-02-27 22:23:33 UTC (rev 345) +++ buildfarm/bin/generate-unstable 2011-02-27 22:26:58 UTC (rev 346) @@ -10,7 +10,9 @@ set -u set -e -/home/web/bin/gar/bin/pkgdb gen-cat /home/mirror/opencsw-future/allpkgs /home/mirror/opencsw-future +/home/web/bin/gar/bin/pkgdb \ + gen-cat --catalog-release unstable \ + /home/mirror/opencsw-future/allpkgs /home/mirror/opencsw-future pushd /home/mirror/opencsw-future/unstable for arch in i386 sparc; do This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 27 23:44:00 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 27 Feb 2011 22:44:00 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[348] web/wordpresscsw/wp-content/themes/opencsw Message-ID: Revision: 348 http://opencsw.svn.sourceforge.net/opencsw/?rev=348&view=rev Author: wbonnet Date: 2011-02-27 22:44:00 +0000 (Sun, 27 Feb 2011) Log Message: ----------- Add uwatch statistics Modified Paths: -------------- web/wordpresscsw/wp-content/themes/opencsw/qa.php Added Paths: ----------- web/wordpresscsw/wp-content/themes/opencsw/qa-statistics-bugs.php Added: web/wordpresscsw/wp-content/themes/opencsw/qa-statistics-bugs.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/qa-statistics-bugs.php (rev 0) +++ web/wordpresscsw/wp-content/themes/opencsw/qa-statistics-bugs.php 2011-02-27 22:44:00 UTC (rev 348) @@ -0,0 +1,34 @@ + + +
      +
      +
      +
      +

      Open bugs graphical statistics

      + The following graphics displays graphical statistical information about the number of opened bugs in Mantis. +

      Number of opened critical bugs

      + Weekly view, over last year, of the number of opened critical bugs +
      +
      +

      Number of opened major bugs

      + Weekly view, over last year, of the number of opened major bugs +
      +
      +

      Number of opened minor bugs

      + Weekly view, over last year, of the number of opened minor bugs +
      +
      +

      Number of opened tweak bugs

      + Weekly view, over last year, of the number of opened tweak bugs +
      +
      +
      +
      +
      +
      + + Modified: web/wordpresscsw/wp-content/themes/opencsw/qa.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/qa.php 2011-02-27 22:43:50 UTC (rev 347) +++ web/wordpresscsw/wp-content/themes/opencsw/qa.php 2011-02-27 22:44:00 UTC (rev 348) @@ -18,7 +18,8 @@
    • Auto build and continous integration current status and results
    Maintainers pages give access to list of packages per maintainers, and help indentifying the orphaned packages (without active maintainer). - Information displayed in the QA are are updated daily, based upon information from the various catalogs, and upstream information collected by uWatch bot. + Information displayed in the QA are are updated daily, based upon information from the various catalogs, and upstream information collected by uWatch bot.

    + Several statistics pages are available and display graphical information about the item monitored by the QA system.

    Maintainers QA pages

    The following link displays the complete list of maintainers owning packages. This list is split in two parts, active maintainers, and retired maintainers still owning packages. The packages owned by retired maintainers are available for takeover. The list gives access to the QA pages of each maintainer, and their list of packages.
      This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 27 23:43:50 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 27 Feb 2011 22:43:50 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[347] web/wordpresscsw/tools/statistics Message-ID: Revision: 347 http://opencsw.svn.sourceforge.net/opencsw/?rev=347&view=rev Author: wbonnet Date: 2011-02-27 22:43:50 +0000 (Sun, 27 Feb 2011) Log Message: ----------- Add uwatch statistics Modified Paths: -------------- web/wordpresscsw/tools/statistics/db-common.php Added Paths: ----------- web/wordpresscsw/tools/statistics/qaOpenedCriticalBugs.php web/wordpresscsw/tools/statistics/qaOpenedMajorBugs.php web/wordpresscsw/tools/statistics/qaOpenedMinorBugs.php web/wordpresscsw/tools/statistics/qaOpenedTweakBugs.php Modified: web/wordpresscsw/tools/statistics/db-common.php =================================================================== --- web/wordpresscsw/tools/statistics/db-common.php 2011-02-27 22:26:58 UTC (rev 346) +++ web/wordpresscsw/tools/statistics/db-common.php 2011-02-27 22:43:50 UTC (rev 347) @@ -616,5 +616,130 @@ return $statUwatch ; } + + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Get the number of gar package which can be upgraded for the last 12 rolling months + // + // ----------------------------------------------------------------------------------------------------------------------- + function getOpenedCriticalBugsOverLastYear() { + + // Initialize the variables + $statUwatch = array(); // array of data that will be returned to caller + $statIndex = 0; // current index + + for ($i = 0 ; $i < 52 ; $i ++) { + $statUwatch[$i][0] = 0; + $statUwatch[$i][1] = 2; + $statUwatch[$i][2] = 2011; + } + + // Define the query used to retrieve the packages from the database + $sqlQuery = "select STB_OPEN_CRITICAL, STB_MONTH, STB_YEAR from QA_STATS_BUG order by ID_STB desc limit 0,52;" ; + + // Execute the query to retrieve the row to update + $this->execQuery($sqlQuery); + + // Check if there is a result + while ($row = mysql_fetch_array($this->result)) { + $statUwatch[$statIndex++] = $row; // Yes there is a record, thus copy it to the array + } + + return $statUwatch ; + } + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Get the number of gar package which can be upgraded for the last 12 rolling months + // + // ----------------------------------------------------------------------------------------------------------------------- + function getOpenedMajorBugsOverLastYear() { + + // Initialize the variables + $statUwatch = array(); // array of data that will be returned to caller + $statIndex = 0; // current index + + for ($i = 0 ; $i < 52 ; $i ++) { + $statUwatch[$i][0] = 0; + $statUwatch[$i][1] = 2; + $statUwatch[$i][2] = 2011; + } + + // Define the query used to retrieve the packages from the database + $sqlQuery = "select STB_OPEN_MAJOR, STB_MONTH, STB_YEAR from QA_STATS_BUG order by ID_STB desc limit 0,52;" ; + + // Execute the query to retrieve the row to update + $this->execQuery($sqlQuery); + + // Check if there is a result + while ($row = mysql_fetch_array($this->result)) { + $statUwatch[$statIndex++] = $row; // Yes there is a record, thus copy it to the array + } + + return $statUwatch ; + } + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Get the number of gar package which can be upgraded for the last 12 rolling months + // + // ----------------------------------------------------------------------------------------------------------------------- + function getOpenedMinorBugsOverLastYear() { + + // Initialize the variables + $statUwatch = array(); // array of data that will be returned to caller + $statIndex = 0; // current index + + for ($i = 0 ; $i < 52 ; $i ++) { + $statUwatch[$i][0] = 0; + $statUwatch[$i][1] = 2; + $statUwatch[$i][2] = 2011; + } + + // Define the query used to retrieve the packages from the database + $sqlQuery = "select STB_OPEN_MINOR, STB_MONTH, STB_YEAR from QA_STATS_BUG order by ID_STB desc limit 0,52;" ; + + // Execute the query to retrieve the row to update + $this->execQuery($sqlQuery); + + // Check if there is a result + while ($row = mysql_fetch_array($this->result)) { + $statUwatch[$statIndex++] = $row; // Yes there is a record, thus copy it to the array + } + + return $statUwatch ; + } + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Get the number of gar package which can be upgraded for the last 12 rolling months + // + // ----------------------------------------------------------------------------------------------------------------------- + function getOpenedTweakBugsOverLastYear() { + + // Initialize the variables + $statUwatch = array(); // array of data that will be returned to caller + $statIndex = 0; // current index + + for ($i = 0 ; $i < 52 ; $i ++) { + $statUwatch[$i][0] = 0; + $statUwatch[$i][1] = 2; + $statUwatch[$i][2] = 2011; + } + + // Define the query used to retrieve the packages from the database + $sqlQuery = "select STB_OPEN_TWEAK, STB_MONTH, STB_YEAR from QA_STATS_BUG order by ID_STB desc limit 0,52;" ; + + // Execute the query to retrieve the row to update + $this->execQuery($sqlQuery); + + // Check if there is a result + while ($row = mysql_fetch_array($this->result)) { + $statUwatch[$statIndex++] = $row; // Yes there is a record, thus copy it to the array + } + + return $statUwatch ; + } } ?> Added: web/wordpresscsw/tools/statistics/qaOpenedCriticalBugs.php =================================================================== --- web/wordpresscsw/tools/statistics/qaOpenedCriticalBugs.php (rev 0) +++ web/wordpresscsw/tools/statistics/qaOpenedCriticalBugs.php 2011-02-27 22:43:50 UTC (rev 347) @@ -0,0 +1,94 @@ +setAntiAliasing(FALSE); + + $group = new PlotGroup; + $group->grid->setType(Line::DASHED); + + $group->setPadding(40, NULL, 20, NULL); + + $group->axis->left->setLabelNumber(8); + $group->axis->left->setLabelPrecision(1); + $group->axis->left->setTickStyle(Tick::OUT); + + // Statistics array population + $statPackage = array(); // Initialize the number of packages array + + // Create the DAO object + $statDAO = new mysqlDAO(); + + // Connect to database + $statDAO->connect(); + + // Retrieve the statistics from the database + $stats = $statDAO->getOpenedCriticalBugsOverLastYear(); + + // Disconnect from database + $statDAO->disconnect(); + + for ($idxCounter = 51 ; $idxCounter >= 0 ; $idxCounter--) { // Loop used to copy data + $statPackage[$idxCounter] = $stats[51 - $idxCounter][0]; // into the creation array + } + + $plot = new LinePlot($statPackage); + + $plot->label->setFont(new Tuffy(7)); + $plot->label->setPadding(1, 1, 1, 1); + $plot->label->setCallbackFunction("labelFormat"); + $plot->label->setBackgroundColor( + new Color(227, 223, 241, 15) + ); + $plot->setColor(new Red()); + $plot->setFillColor(new LightRed(80)); + + $plot->mark->setType(Mark::CIRCLE); + $plot->mark->setFill(new MidRed); + $plot->mark->setSize(6); + + $group->legend->add($plot, "Opened critical bugs", Legend::MARK); + $group->legend->setPosition(0.35, 0.15); + $group->add($plot); + + $group->axis->bottom->label->setCallbackFunction('setMonth'); + $group->axis->left->label->setCallbackFunction('setNumber'); + + $graph->add($group); + + $graph->draw(); + +?> Added: web/wordpresscsw/tools/statistics/qaOpenedMajorBugs.php =================================================================== --- web/wordpresscsw/tools/statistics/qaOpenedMajorBugs.php (rev 0) +++ web/wordpresscsw/tools/statistics/qaOpenedMajorBugs.php 2011-02-27 22:43:50 UTC (rev 347) @@ -0,0 +1,94 @@ +setAntiAliasing(FALSE); + + $group = new PlotGroup; + $group->grid->setType(Line::DASHED); + + $group->setPadding(40, NULL, 20, NULL); + + $group->axis->left->setLabelNumber(8); + $group->axis->left->setLabelPrecision(1); + $group->axis->left->setTickStyle(Tick::OUT); + + // Statistics array population + $statPackage = array(); // Initialize the number of packages array + + // Create the DAO object + $statDAO = new mysqlDAO(); + + // Connect to database + $statDAO->connect(); + + // Retrieve the statistics from the database + $stats = $statDAO->getOpenedMajorBugsOverLastYear(); + + // Disconnect from database + $statDAO->disconnect(); + + for ($idxCounter = 51 ; $idxCounter >= 0 ; $idxCounter--) { // Loop used to copy data + $statPackage[$idxCounter] = $stats[51 - $idxCounter][0]; // into the creation array + } + + $plot = new LinePlot($statPackage); + + $plot->label->setFont(new Tuffy(7)); + $plot->label->setPadding(1, 1, 1, 1); + $plot->label->setCallbackFunction("labelFormat"); + $plot->label->setBackgroundColor( + new Color(227, 223, 241, 15) + ); + $plot->setColor(new Red()); + $plot->setFillColor(new LightRed(80)); + + $plot->mark->setType(Mark::CIRCLE); + $plot->mark->setFill(new MidRed); + $plot->mark->setSize(6); + + $group->legend->add($plot, "Opened major bugs", Legend::MARK); + $group->legend->setPosition(0.35, 0.15); + $group->add($plot); + + $group->axis->bottom->label->setCallbackFunction('setMonth'); + $group->axis->left->label->setCallbackFunction('setNumber'); + + $graph->add($group); + + $graph->draw(); + +?> Added: web/wordpresscsw/tools/statistics/qaOpenedMinorBugs.php =================================================================== --- web/wordpresscsw/tools/statistics/qaOpenedMinorBugs.php (rev 0) +++ web/wordpresscsw/tools/statistics/qaOpenedMinorBugs.php 2011-02-27 22:43:50 UTC (rev 347) @@ -0,0 +1,94 @@ +setAntiAliasing(FALSE); + + $group = new PlotGroup; + $group->grid->setType(Line::DASHED); + + $group->setPadding(40, NULL, 20, NULL); + + $group->axis->left->setLabelNumber(8); + $group->axis->left->setLabelPrecision(1); + $group->axis->left->setTickStyle(Tick::OUT); + + // Statistics array population + $statPackage = array(); // Initialize the number of packages array + + // Create the DAO object + $statDAO = new mysqlDAO(); + + // Connect to database + $statDAO->connect(); + + // Retrieve the statistics from the database + $stats = $statDAO->getOpenedMinorBugsOverLastYear(); + + // Disconnect from database + $statDAO->disconnect(); + + for ($idxCounter = 51 ; $idxCounter >= 0 ; $idxCounter--) { // Loop used to copy data + $statPackage[$idxCounter] = $stats[51 - $idxCounter][0]; // into the creation array + } + + $plot = new LinePlot($statPackage); + + $plot->label->setFont(new Tuffy(7)); + $plot->label->setPadding(1, 1, 1, 1); + $plot->label->setCallbackFunction("labelFormat"); + $plot->label->setBackgroundColor( + new Color(227, 223, 241, 15) + ); + $plot->setColor(new Red()); + $plot->setFillColor(new LightRed(80)); + + $plot->mark->setType(Mark::CIRCLE); + $plot->mark->setFill(new MidRed); + $plot->mark->setSize(6); + + $group->legend->add($plot, "Opened minor bugs", Legend::MARK); + $group->legend->setPosition(0.35, 0.15); + $group->add($plot); + + $group->axis->bottom->label->setCallbackFunction('setMonth'); + $group->axis->left->label->setCallbackFunction('setNumber'); + + $graph->add($group); + + $graph->draw(); + +?> Added: web/wordpresscsw/tools/statistics/qaOpenedTweakBugs.php =================================================================== --- web/wordpresscsw/tools/statistics/qaOpenedTweakBugs.php (rev 0) +++ web/wordpresscsw/tools/statistics/qaOpenedTweakBugs.php 2011-02-27 22:43:50 UTC (rev 347) @@ -0,0 +1,94 @@ +setAntiAliasing(FALSE); + + $group = new PlotGroup; + $group->grid->setType(Line::DASHED); + + $group->setPadding(40, NULL, 20, NULL); + + $group->axis->left->setLabelNumber(8); + $group->axis->left->setLabelPrecision(1); + $group->axis->left->setTickStyle(Tick::OUT); + + // Statistics array population + $statPackage = array(); // Initialize the number of packages array + + // Create the DAO object + $statDAO = new mysqlDAO(); + + // Connect to database + $statDAO->connect(); + + // Retrieve the statistics from the database + $stats = $statDAO->getOpenedTweakBugsOverLastYear(); + + // Disconnect from database + $statDAO->disconnect(); + + for ($idxCounter = 51 ; $idxCounter >= 0 ; $idxCounter--) { // Loop used to copy data + $statPackage[$idxCounter] = $stats[51 - $idxCounter][0]; // into the creation array + } + + $plot = new LinePlot($statPackage); + + $plot->label->setFont(new Tuffy(7)); + $plot->label->setPadding(1, 1, 1, 1); + $plot->label->setCallbackFunction("labelFormat"); + $plot->label->setBackgroundColor( + new Color(227, 223, 241, 15) + ); + $plot->setColor(new Red()); + $plot->setFillColor(new LightRed(80)); + + $plot->mark->setType(Mark::CIRCLE); + $plot->mark->setFill(new MidRed); + $plot->mark->setSize(6); + + $group->legend->add($plot, "Opened tweak bugs", Legend::MARK); + $group->legend->setPosition(0.35, 0.15); + $group->add($plot); + + $group->axis->bottom->label->setCallbackFunction('setMonth'); + $group->axis->left->label->setCallbackFunction('setNumber'); + + $graph->add($group); + + $graph->draw(); + +?> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 27 23:45:20 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 27 Feb 2011 22:45:20 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[349] web/wordpresscsw/wp-content/plugins/opencsw/ opencsw.php Message-ID: Revision: 349 http://opencsw.svn.sourceforge.net/opencsw/?rev=349&view=rev Author: wbonnet Date: 2011-02-27 22:45:20 +0000 (Sun, 27 Feb 2011) Log Message: ----------- Add uwatch statistics Modified Paths: -------------- web/wordpresscsw/wp-content/plugins/opencsw/opencsw.php Modified: web/wordpresscsw/wp-content/plugins/opencsw/opencsw.php =================================================================== --- web/wordpresscsw/wp-content/plugins/opencsw/opencsw.php 2011-02-27 22:44:00 UTC (rev 348) +++ web/wordpresscsw/wp-content/plugins/opencsw/opencsw.php 2011-02-27 22:45:20 UTC (rev 349) @@ -88,6 +88,7 @@ '^qa/statistics/packages$' => 'index.php?qaStatisticsPackages=full' , '^qa/statistics/upgrades$' => 'index.php?qaStatisticsUpgrade=full' , '^qa/statistics/maintainers$' => 'index.php?qaStatisticsMaintainers=full' , + '^qa/statistics/bugs$' => 'index.php?qaStatisticsBugs=full' , '^qa/packages?/(.+)' => 'index.php?qaPackageName=' . $wp_rewrite->preg_index(1) , '^qa/maintainers?/(.+)' => 'index.php?qaMaintainerName=' . $wp_rewrite->preg_index(1) , @@ -131,6 +132,7 @@ $qvars[] = 'qaPackageWaitingForUnstable'; $qvars[] = 'qaPackageWaitingForGar'; $qvars[] = 'qaStatistics'; + $qvars[] = 'qaStatisticsBugs'; $qvars[] = 'qaStatisticsUwatch'; $qvars[] = 'qaStatisticsGar'; $qvars[] = 'qaStatisticsPackages'; @@ -216,6 +218,18 @@ } // Test if the arg qaMaintainerName is in the query string + if ( $wp_query->get('qaStatisticsBugs') ) + { + // Yes, thus we are display a detailled maintainer page, not the full list + if (file_exists( TEMPLATEPATH . '/qa-statistics-bugs.php' )) + { + // File exist, thus lets include the template + include( TEMPLATEPATH . '/qa-statistics-bugs.php' ); + exit; + } + } + + // Test if the arg qaMaintainerName is in the query string if ( $wp_query->get('qaStatisticsGar') ) { // Yes, thus we are display a detailled maintainer page, not the full list This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 27 23:51:13 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 27 Feb 2011 22:51:13 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[350] web/wordpresscsw/wp-content/themes/opencsw/ qa-statistics.php Message-ID: Revision: 350 http://opencsw.svn.sourceforge.net/opencsw/?rev=350&view=rev Author: wbonnet Date: 2011-02-27 22:51:13 +0000 (Sun, 27 Feb 2011) Log Message: ----------- Add uwatch statistics Modified Paths: -------------- web/wordpresscsw/wp-content/themes/opencsw/qa-statistics.php Modified: web/wordpresscsw/wp-content/themes/opencsw/qa-statistics.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/qa-statistics.php 2011-02-27 22:45:20 UTC (rev 349) +++ web/wordpresscsw/wp-content/themes/opencsw/qa-statistics.php 2011-02-27 22:51:13 UTC (rev 350) @@ -10,7 +10,7 @@

      OpenCSW Quality Assurance statistics

      The purpose of the OpenCSW QA statistics pages is to provide statistics and graphical information about project QA. The pages display the evolution of the various information available from the QA pages. -

      Weekly Quality Assurance statistics

      +

      Weekly packages and maintainers statistics

      The following links displays the weekly graphical evolution of the monitored QA parameters.
      • @@ -31,6 +31,15 @@


      +

      Weekly bugs statistics

      + The following links displays the weekly graphical evolution of the opened bugs. + +
      +
      This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sun Feb 27 23:52:13 2011 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sun, 27 Feb 2011 22:52:13 +0000 Subject: [csw-devel] SF.net SVN: opencsw:[351] web/wordpresscsw/wp-content/themes/opencsw/ qa-statistics.php Message-ID: Revision: 351 http://opencsw.svn.sourceforge.net/opencsw/?rev=351&view=rev Author: wbonnet Date: 2011-02-27 22:52:13 +0000 (Sun, 27 Feb 2011) Log Message: ----------- Add uwatch statistics Modified Paths: -------------- web/wordpresscsw/wp-content/themes/opencsw/qa-statistics.php Modified: web/wordpresscsw/wp-content/themes/opencsw/qa-statistics.php =================================================================== --- web/wordpresscsw/wp-content/themes/opencsw/qa-statistics.php 2011-02-27 22:51:13 UTC (rev 350) +++ web/wordpresscsw/wp-content/themes/opencsw/qa-statistics.php 2011-02-27 22:52:13 UTC (rev 351) @@ -29,8 +29,6 @@ Weekly maintainers evolution
    -
    -

    Weekly bugs statistics

    The following links displays the weekly graphical evolution of the opened bugs.
      This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Mon Feb 28 01:26:18 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Mon, 28 Feb 2011 00:26:18 +0000 Subject: [csw-devel] SF.net SVN: gar:[13493] csw/mgar/pkg/apache2/branches/open-bug-squash Message-ID: Revision: 13493 http://gar.svn.sourceforge.net/gar/?rev=13493&view=rev Author: bdwalton Date: 2011-02-28 00:26:17 +0000 (Mon, 28 Feb 2011) Log Message: ----------- apache2/branches/open-bug-squash: patch the default cgi path (kill a usr/local reference) Modified Paths: -------------- csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile Added Paths: ----------- csw/mgar/pkg/apache2/branches/open-bug-squash/files/0003-Switch-usr-local-for-opt-csw-in-default-cgi-path.patch Modified: csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile =================================================================== --- csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile 2011-02-27 21:57:50 UTC (rev 13492) +++ csw/mgar/pkg/apache2/branches/open-bug-squash/Makefile 2011-02-28 00:26:17 UTC (rev 13493) @@ -50,6 +50,7 @@ PATCHFILES += 0001-Apply-a-large-hammer-to-buildconf-to-fix-libtool-set.patch PATCHFILES += 0002-Adjust-a-few-usr-local-paths-in-the-man-pages.patch +PATCHFILES += 0003-Switch-usr-local-for-opt-csw-in-default-cgi-path.patch UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz Added: csw/mgar/pkg/apache2/branches/open-bug-squash/files/0003-Switch-usr-local-for-opt-csw-in-default-cgi-path.patch =================================================================== --- csw/mgar/pkg/apache2/branches/open-bug-squash/files/0003-Switch-usr-local-for-opt-csw-in-default-cgi-path.patch (rev 0) +++ csw/mgar/pkg/apache2/branches/open-bug-squash/files/0003-Switch-usr-local-for-opt-csw-in-default-cgi-path.patch 2011-02-28 00:26:17 UTC (rev 13493) @@ -0,0 +1,29 @@ +From 4565f79569130fc4ec0bae99fd3829785394f937 Mon Sep 17 00:00:00 2001 +From: Ben Walton +Date: Mon, 28 Feb 2011 01:23:44 +0100 +Subject: [PATCH] Switch usr/local for opt/csw in default cgi path + +Modify the default PATH for cgi scripts to use /opt/csw/bin as the +final element instead of /usr/local/bin. + +Signed-off-by: Ben Walton +--- + include/httpd.h | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/include/httpd.h b/include/httpd.h +index 40351b7..0fff717 100644 +--- a/include/httpd.h ++++ b/include/httpd.h +@@ -150,7 +150,7 @@ extern "C" { + + /** The default path for CGI scripts if none is currently set */ + #ifndef DEFAULT_PATH +-#define DEFAULT_PATH "/bin:/usr/bin:/usr/ucb:/usr/bsd:/usr/local/bin" ++#define DEFAULT_PATH "/bin:/usr/bin:/usr/ucb:/usr/bsd:/opt/csw/bin" + #endif + + /** The path to the suExec wrapper, can be overridden in Configuration */ +-- +1.7.3.2 + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Mon Feb 28 01:27:12 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Mon, 28 Feb 2011 00:27:12 +0000 Subject: [csw-devel] SF.net SVN: gar:[13494] csw/mgar/pkg/apache2/branches/open-bug-squash/ checkpkg.mak Message-ID: Revision: 13494 http://gar.svn.sourceforge.net/gar/?rev=13494&view=rev Author: bdwalton Date: 2011-02-28 00:27:12 +0000 (Mon, 28 Feb 2011) Log Message: ----------- apache2/branches/open-bug-squash: drop a few more overrides after patching cgi path Modified Paths: -------------- csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak Modified: csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak =================================================================== --- csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak 2011-02-28 00:26:17 UTC (rev 13493) +++ csw/mgar/pkg/apache2/branches/open-bug-squash/checkpkg.mak 2011-02-28 00:27:12 UTC (rev 13494) @@ -363,6 +363,3 @@ CHECKPKG_OVERRIDES_CSWapache2-devel += file-collision|/opt/csw/apache2/share/error/include/spacer.html|CSWapache2-devel|CSWapache2c CHECKPKG_OVERRIDES_CSWapache2-devel += file-collision|/opt/csw/apache2/share/error/include/top.html|CSWapache2-devel|CSWapache2c CHECKPKG_OVERRIDES_CSWapache2 += file-collision|/opt/csw/apache2/etc/extra/httpd-info.conf.CSW|CSWapache2|CSWapache2c - -CHECKPKG_OVERRIDES_CSWapache2 += file-with-bad-content|/usr/local|root/opt/csw/apache2/sbin/httpd.prefork -CHECKPKG_OVERRIDES_CSWap2worker += file-with-bad-content|/usr/local|root/opt/csw/apache2/sbin/httpd.worker This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Mon Feb 28 04:03:59 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Mon, 28 Feb 2011 03:03:59 +0000 Subject: [csw-devel] SF.net SVN: gar:[13495] csw/mgar/pkg/php5/trunk Message-ID: Revision: 13495 http://gar.svn.sourceforge.net/gar/?rev=13495&view=rev Author: bdwalton Date: 2011-02-28 03:03:58 +0000 (Mon, 28 Feb 2011) Log Message: ----------- php5/trunk: import package splitting for the extensions into top level, enable directly via configure args, import patches to files/ Modified Paths: -------------- csw/mgar/pkg/php5/trunk/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_bcmath/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_bz2/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_calendar/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_ctype/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_curl/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_dba/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_dbase/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_dom/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_exif/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_filter/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_ftp/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_gd/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_gettext/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_gmp/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_hash/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_iconv/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_imap/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_json/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_ldap/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_mbstring/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_mcrypt/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_mhash/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_mime_magic/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_mssql/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_mysql/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_mysqli/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_ncurses/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_odbc/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_openssl/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_pcntl/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_pdo/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_pdomysql/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_pdoodbc/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_pdopgsql/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_pdosqlite/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_pgsql/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_posix/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_pspell/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_readline/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_session/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_shmop/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_simplexml/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_snmp/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_soap/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_sockets/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_sqlite/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_sysvmsg/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_sysvsem/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_sysvshm/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_tidy/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_tokenizer/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_wddx/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_xml/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_xmlreader/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_xmlrpc/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_xmlwriter/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_xsl/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_zip/Makefile csw/mgar/pkg/php5/trunk/extensions/php5_zlib/Makefile Added Paths: ----------- csw/mgar/pkg/php5/trunk/files/odbc.diff csw/mgar/pkg/php5/trunk/files/pdopgsql.diff csw/mgar/pkg/php5/trunk/files/pgsql.diff Modified: csw/mgar/pkg/php5/trunk/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -27,15 +27,294 @@ DISTFILES += php.ini.CSW phpext pear.conf.CSW CSWphp5.postinstall PACKAGES = CSWphp5 CSWphp5devel +PACKAGES += CSWphp5bcmath +PACKAGES += CSWphp5bz2 +PACKAGES += CSWphp5calendar +PACKAGES += CSWphp5ctype +PACKAGES += CSWphp5curl +PACKAGES += CSWphp5dba +PACKAGES += CSWphp5dbase +PACKAGES += CSWphp5dom +PACKAGES += CSWphp5exif +PACKAGES += CSWphp5ftp +PACKAGES += CSWphp5gd +PACKAGES += CSWphp5gettext +PACKAGES += CSWphp5gmp +PACKAGES += CSWphp5hash +PACKAGES += CSWphp5iconv +PACKAGES += CSWphp5imap +PACKAGES += CSWphp5json +PACKAGES += CSWphp5ldap +PACKAGES += CSWphp5mbstring +PACKAGES += CSWphp5mcrypt +PACKAGES += CSWphp5mhash +PACKAGES += CSWphp5mimemagic +PACKAGES += CSWphp5mssql +PACKAGES += CSWphp5mysql +PACKAGES += CSWphp5mysqli +PACKAGES += CSWphp5ncurses +PACKAGES += CSWphp5odbc +PACKAGES += CSWphp5openssl +PACKAGES += CSWphp5pcntl +PACKAGES += CSWphp5pdo +PACKAGES += CSWphp5pdomysql +PACKAGES += CSWphp5pdoodbc +PACKAGES += CSWphp5pdopgsql +PACKAGES += CSWphp5pdosqlite +PACKAGES += CSWphp5pgsql +PACKAGES += CSWphp5posix +PACKAGES += CSWphp5pspell +PACKAGES += CSWphp5readline +PACKAGES += CSWphp5session +PACKAGES += CSWphp5shmop +PACKAGES += CSWphp5snmp +PACKAGES += CSWphp5soap +PACKAGES += CSWphp5sockets +PACKAGES += CSWphp5sqlite +PACKAGES += CSWphp5sysvmsg +PACKAGES += CSWphp5sysvsem +PACKAGES += CSWphp5sysvshm +PACKAGES += CSWphp5tidy +PACKAGES += CSWphp5tokenizer +PACKAGES += CSWphp5wddx +PACKAGES += CSWphp5xmlreader +PACKAGES += CSWphp5xmlrpc +PACKAGES += CSWphp5xmlwriter +PACKAGES += CSWphp5xsl +PACKAGES += CSWphp5zip CATALOGNAME_CSWphp5 = php5 SPKG_DESC_CSWphp5 = A High-Level Scripting Language + CATALOGNAME_CSWphp5devel = php5_devel SPKG_DESC_CSWphp5devel = Development files for php5 RUNTIME_DEP_PKGS_CSWphp5 = CSWiconv RUNTIME_DEP_PKGS_CSWphp5 += CSWlibxml2 CSWzlib RUNTIME_DEP_PKGS_CSWphp5 += CSWlibmm CSWapache2 +CATALOGNAME_CSWphp5bcmath = php5_bcmath +SPKG_DESC_CSWphp5bcmath = bcmath Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5bcmath = CSWphp5 + +CATALOGNAME_CSWphp5bz2 = php5_bz2 +SPKG_DESC_CSWphp5bz2 = bz2 Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5bz2 = CSWphp5 CSWbzip2 + +CATALOGNAME_CSWphp5calendar = php5_calendar +SPKG_DESC_CSWphp5calendar = calendar Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5calendar = CSWphp5 + +CATALOGNAME_CSWphp5ctype = php5_ctype +SPKG_DESC_CSWphp5ctype = ctype Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5ctype = CSWphp5 + +CATALOGNAME_CSWphp5curl = php5_curl +SPKG_DESC_CSWphp5curl = curl Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5curl = CSWphp5 CSWcurlrt CSWlibidn +RUNTIME_DEP_PKGS_CSWphp5curl += CSWoldaprt CSWosslrt CSWzlib + +CATALOGNAME_CSWphp5dba = php5_dba +SPKG_DESC_CSWphp5dba = dba Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5dba = CSWphp5 CSWbdb CSWgdbm + +CATALOGNAME_CSWphp5dbase = php5_dbase +SPKG_DESC_CSWphp5dbase = dbase Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5dbase = CSWphp5 + +CATALOGNAME_CSWphp5dom = php5_dom +SPKG_DESC_CSWphp5dom = dom Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5dom = CSWphp5 CSWiconv CSWlibxml2 CSWzlib + +CATALOGNAME_CSWphp5exif = php5_exif +SPKG_DESC_CSWphp5exif = exif Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5exif = CSWphp5 + +CATALOGNAME_CSWphp5ftp = php5_ftp +SPKG_DESC_CSWphp5ftp = ftp Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5ftp = CSWphp5 CSWosslrt + +CATALOGNAME_CSWphp5gd = php5_gd +SPKG_DESC_CSWphp5gd = gd Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5gd = CSWphp5 CSWftype2 CSWgd CSWjpeg +RUNTIME_DEP_PKGS_CSWphp5gd += CSWpng CSWt1lib CSWxpm CSWzlib + +CATALOGNAME_CSWphp5gettext = php5_gettext +SPKG_DESC_CSWphp5gettext = gettext Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5gettext = CSWphp5 CSWggettextrt + +CATALOGNAME_CSWphp5gmp = php5_gmp +SPKG_DESC_CSWphp5gmp = gmp Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5gmp = CSWphp5 CSWlibgmp + +CATALOGNAME_CSWphp5hash = php5_hash +SPKG_DESC_CSWphp5hash = hash Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5hash = CSWphp5 + +CATALOGNAME_CSWphp5iconv = php5_iconv +SPKG_DESC_CSWphp5iconv = iconv Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5iconv = CSWphp5 CSWiconv + +CATALOGNAME_CSWphp5imap = php5_imap +SPKG_DESC_CSWphp5imap = imap Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5imap = CSWphp5 CSWimaprt CSWkrb5lib CSWosslrt + +CATALOGNAME_CSWphp5json = php5_json +SPKG_DESC_CSWphp5json = json Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5json = CSWphp5 + +CATALOGNAME_CSWphp5ldap = php5_ldap +SPKG_DESC_CSWphp5ldap = ldap Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5ldap = CSWphp5 CSWoldaprt CSWsasl + +CATALOGNAME_CSWphp5mbstring = php5_mbstring +SPKG_DESC_CSWphp5mbstring = mbstring Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5mbstring = CSWphp5 + +CATALOGNAME_CSWphp5mcrypt = php5_mcrypt +SPKG_DESC_CSWphp5mcrypt = mcrypt Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5mcrypt = CSWphp5 CSWlibmcrypt CSWlibtoolrt + +CATALOGNAME_CSWphp5mhash = php5_mhash +SPKG_DESC_CSWphp5mhash = mhash Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5mhash = CSWphp5 CSWlibmhash + +CATALOGNAME_CSWphp5mimemagic = php5_mime_magic +SPKG_DESC_CSWphp5mimemagic = mime magic Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5mimemagic = CSWphp5 + +CATALOGNAME_CSWphp5mssql = php5_mssql +SPKG_DESC_CSWphp5mssql = mssql Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5mssql = CSWphp5 CSWfreetds + +CATALOGNAME_CSWphp5mysql = php5_mysql +SPKG_DESC_CSWphp5mysql = mysql Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5mysql = CSWphp5 CSWmysql5rt + +CATALOGNAME_CSWphp5mysqli = php5_mysqli +SPKG_DESC_CSWphp5mysqli = mysqli Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5mysqli = CSWphp5 CSWmysql5rt CSWzlib + +CATALOGNAME_CSWphp5ncurses = php5_ncurses +SPKG_DESC_CSWphp5ncurses = ncurses Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5ncurses = CSWphp5 CSWncurses + +CATALOGNAME_CSWphp5odbc = php5_odbc +SPKG_DESC_CSWphp5odbc = odbc Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5odbc = CSWphp5 CSWunixodbc + +CATALOGNAME_CSWphp5openssl = php5_openssl +SPKG_DESC_CSWphp5openssl = openssl Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5openssl = CSWphp5 CSWosslrt CSWkrb5lib + +CATALOGNAME_CSWphp5pcntl = php5_pcntl +SPKG_DESC_CSWphp5pcntl = pcntl Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5pcntl = CSWphp5 + +CATALOGNAME_CSWphp5pdo = php5_pdo +SPKG_DESC_CSWphp5pdo = A database access abstraction module for PHP applications +RUNTIME_DEP_PKGS_CSWphp5pdo = CSWphp5 + +CATALOGNAME_CSWphp5pdomysql = php5_pdomysql +SPKG_DESC_CSWphp5pdomysql = A MySQL specific database access abstraction module for PHP applications +RUNTIME_DEP_PKGS_CSWphp5pdomysql = CSWphp5 CSWmysql5rt CSWzlib CSWphp5pdo + +CATALOGNAME_CSWphp5pdoodbc = php5_pdoodbc +SPKG_DESC_CSWphp5pdoodbc = An ODBC specific database access abstraction module for PHP applications +RUNTIME_DEP_PKGS_CSWphp5pdoodbc = CSWphp5 CSWunixodbc CSWphp5pdo + +CATALOGNAME_CSWphp5pdopgsql = php5_pdopgsql +SPKG_DESC_CSWphp5pdopgsql = A PgSQL specific database access abstraction module for PHP applications +RUNTIME_DEP_PKGS_CSWphp5pdopgsql = CSWphp5 CSWlibpq CSWphp5pdo + +CATALOGNAME_CSWphp5pdosqlite = php5_pdosqlite +SPKG_DESC_CSWphp5pdosqlite = A Sqlite specific database access abstraction module for PHP applications +RUNTIME_DEP_PKGS_CSWphp5pdosqlite = CSWphp5 CSWphp5pdo + +CATALOGNAME_CSWphp5pgsql = php5_pgsql +SPKG_DESC_CSWphp5pgsql = pgsql Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5pgsql = CSWphp5 CSWlibpq + +CATALOGNAME_CSWphp5posix = php5_posix +SPKG_DESC_CSWphp5posix = posix Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5posix = CSWphp5 + +CATALOGNAME_CSWphp5pspell = php5_pspell +SPKG_DESC_CSWphp5pspell = pspell Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5pspell = CSWphp5 CSWaspell + +CATALOGNAME_CSWphp5readline = php5_readline +SPKG_DESC_CSWphp5readline = readline Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5readline = CSWphp5 CSWreadline CSWncurses + +CATALOGNAME_CSWphp5session = php5_session +SPKG_DESC_CSWphp5session = session Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5session = CSWphp5 CSWlibmm + +CATALOGNAME_CSWphp5shmop = php5_shmop +SPKG_DESC_CSWphp5shmop = shmop Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5shmop = CSWphp5 + +CATALOGNAME_CSWphp5snmp = php5_snmp +SPKG_DESC_CSWphp5snmp = snmp Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5snmp = CSWphp5 CSWnetsnmp CSWosslrt CSWtcpwrap + +CATALOGNAME_CSWphp5soap = php5_soap +SPKG_DESC_CSWphp5soap = soap Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5soap = CSWphp5 CSWiconv CSWlibxml2 CSWzlib + +CATALOGNAME_CSWphp5sockets = php5_sockets +SPKG_DESC_CSWphp5sockets = sockets Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5sockets = CSWphp5 + +CATALOGNAME_CSWphp5sqlite = php5_sqlite +SPKG_DESC_CSWphp5sqlite = sqlite Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5sqlite = CSWphp5 CSWsqlite + +CATALOGNAME_CSWphp5sysvmsg = php5_sysvmsg +SPKG_DESC_CSWphp5sysvmsg = sysvmsg Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5sysvmsg = CSWphp5 + +CATALOGNAME_CSWphp5sysvsem = php5_sysvsem +SPKG_DESC_CSWphp5sysvsem = sysvsem Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5sysvsem = CSWphp5 + +CATALOGNAME_CSWphp5sysvshm = php5_sysvshm +SPKG_DESC_CSWphp5sysvshm = sysvshm Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5sysvshm = CSWphp5 + +CATALOGNAME_CSWphp5tidy = php5_tidy +SPKG_DESC_CSWphp5tidy = tidy Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5tidy = CSWphp5 CSWhtmltidy + +CATALOGNAME_CSWphp5tokenizer = php5_tokenizer +SPKG_DESC_CSWphp5tokenizer = tokenizer Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5tokenizer = CSWphp5 + +CATALOGNAME_CSWphp5wddx = php5_wddx +SPKG_DESC_CSWphp5wddx = wddx Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5wddx = CSWphp5 + +CATALOGNAME_CSWphp5xmlreader = php5_xmlreader +SPKG_DESC_CSWphp5xmlreader = xmlreader Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5xmlreader = CSWphp5 CSWiconv CSWlibxml2 CSWzlib + +CATALOGNAME_CSWphp5xmlrpc = php5_xmlrpc +SPKG_DESC_CSWphp5xmlrpc = xmlrpc Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5xmlrpc = CSWphp5 CSWiconv CSWlibxml2 CSWzlib CSWexpat + +CATALOGNAME_CSWphp5xmlwriter = php5_xmlwriter +SPKG_DESC_CSWphp5xmlwriter = xmlwriter Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5xmlwriter = CSWphp5 CSWiconv CSWlibxml2 CSWzlib + +CATALOGNAME_CSWphp5xsl = php5_xsl +SPKG_DESC_CSWphp5xsl = xsl Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5xsl = CSWphp5 CSWiconv CSWlibxml2 +RUNTIME_DEP_PKGS_CSWphp5xsl += CSWlibxslt CSWzlib + +CATALOGNAME_CSWphp5zip = php5_zip +SPKG_DESC_CSWphp5zip = zip Extention for PHP5 +RUNTIME_DEP_PKGS_CSWphp5zip = CSWphp5 CSWzlib + PKGFILES_CSWphp5devel = $(bindir)/php-config PKGFILES_CSWphp5devel += $(bindir)/phpize PKGFILES_CSWphp5devel += $(bindir)/peardev @@ -55,7 +334,128 @@ PKGFILES_CSWphp5devel += $(mandir)/man1/php-config.1 PKGFILES_CSWphp5devel += $(mandir)/man1/phpize.1 +PKGFILES_CSWphp5bcmath = .*/lib/php/extensions/.*/bcmath.* + +PKGFILES_CSWphp5bz2 = .*/lib/php/extensions/.*/bz2.* + +PKGFILES_CSWphp5calendar = .*/lib/php/extensions/.*/calendar.* + +PKGFILES_CSWphp5ctype = .*/lib/php/extensions/.*/ctype.* + +PKGFILES_CSWphp5curl = .*/lib/php/extensions/.*/curl.* + +PKGFILES_CSWphp5dba = .*/lib/php/extensions/.*/dba\.so + +PKGFILES_CSWphp5dbase = .*/lib/php/extensions/.*/dbase.* + +PKGFILES_CSWphp5dom = .*/lib/php/extensions/.*/dom.* +PKGFILES_CSWphp5dom += .*/include/php/ext/dom.* + +PKGFILES_CSWphp5exif = .*/lib/php/extensions/.*/exif.* + +PKGFILES_CSWphp5ftp = .*/lib/php/extensions/.*/ftp.* + +PKGFILES_CSWphp5gd = .*/lib/php/extensions/.*/gd.* +PKGFILES_CSWphp5gd += .*/include/php/ext/gd.* + +PKGFILES_CSWphp5gettext = .*/lib/php/extensions/.*/gettext.* + +PKGFILES_CSWphp5gmp = .*/lib/php/extensions/.*/gmp.* + +PKGFILES_CSWphp5hash = .*/lib/php/extensions/.*/hash.* +PKGFILES_CSWphp5hash += .*/include/php/ext/hash.* + +PKGFILES_CSWphp5iconv = .*/lib/php/extensions/.*/iconv.* +PKGFILES_CSWphp5iconv += .*/include/php/ext/iconv.* + +PKGFILES_CSWphp5imap = .*/lib/php/extensions/.*/imap.* + +PKGFILES_CSWphp5json = .*/lib/php/extensions/.*/json.* + +PKGFILES_CSWphp5ldap = .*/lib/php/extensions/.*/ldap.* + +PKGFILES_CSWphp5mbstring = .*/lib/php/extensions/.*/mbstring.* +PKGFILES_CSWphp5mbstring += .*/include/php/ext/mbstring.* + +PKGFILES_CSWphp5mcrypt = .*/lib/php/extensions/.*/mcrypt.* + +PKGFILES_CSWphp5mhash = .*/lib/php/extensions/.*/mhash.* + +PKGFILES_CSWphp5mimemagic = .*/lib/php/extensions/.*/mime_magic.* + +PKGFILES_CSWphp5mssql = .*/lib/php/extensions/.*/mssql.* + +PKGFILES_CSWphp5mysql = .*/lib/php/extensions/.*/mysql\.so + +PKGFILES_CSWphp5mysqli = .*/lib/php/extensions/.*/mysqli.* + +PKGFILES_CSWphp5ncurses = .*/lib/php/extensions/.*/ncurses.* + +PKGFILES_CSWphp5odbc = .*/lib/php/extensions/.*/odbc.* + +PKGFILES_CSWphp5openssl = .*/lib/php/extensions/.*/openssl.* + +PKGFILES_CSWphp5pcntl = .*/lib/php/extensions/.*/pcntl.* + +PKGFILES_CSWphp5pdo = .*/lib/php/extensions/.*/pdo\.so* +PKGFILES_CSWphp5pdo += .*/include/php/ext/pdo.* + +PKGFILES_CSWphp5pdomysql = .*/lib/php/extensions/.*/pdo_mysql.* + +PKGFILES_CSWphp5pdoodbc = .*/lib/php/extensions/.*/pdo_odbc.* + +PKGFILES_CSWphp5pdopgsql = .*/lib/php/extensions/.*/pdo_pgsql.* + +PKGFILES_CSWphp5pdosqlite = .*/lib/php/extensions/.*/pdo_sqlite.* + +PKGFILES_CSWphp5pgsql = .*/lib/php/extensions/.*/pgsql.* + +PKGFILES_CSWphp5posix = .*/lib/php/extensions/.*/posix.* + +PKGFILES_CSWphp5pspell = .*/lib/php/extensions/.*/pspell.* + +PKGFILES_CSWphp5readline = .*/lib/php/extensions/.*/readline.* + +PKGFILES_CSWphp5session = .*/lib/php/extensions/.*/session.* +PKGFILES_CSWphp5session += .*/include/php/ext/session.* + +PKGFILES_CSWphp5shmop = .*/lib/php/extensions/.*/shmop.* + +PKGFILES_CSWphp5snmp = .*/lib/php/extensions/.*/snmp.* + +PKGFILES_CSWphp5soap = .*/lib/php/extensions/.*/soap.* + +PKGFILES_CSWphp5sockets = .*/lib/php/extensions/.*/sockets.* + +PKGFILES_CSWphp5sqlite = .*/lib/php/extensions/.*/sqlite.* +PKGFILES_CSWphp5sqlite += .*/include/php/ext/sqlite.* + +PKGFILES_CSWphp5sysvmsg = .*/lib/php/extensions/.*/sysvmsg.* + +PKGFILES_CSWphp5sysvsem = .*/lib/php/extensions/.*/sysvsem.* + +PKGFILES_CSWphp5sysvshm = .*/lib/php/extensions/.*/sysvshm.* + +PKGFILES_CSWphp5tidy = .*/lib/php/extensions/.*/tidy.* + +PKGFILES_CSWphp5tokenizer = .*/lib/php/extensions/.*/tokenizer.* + +PKGFILES_CSWphp5wddx = .*/lib/php/extensions/.*/wddx.* + +PKGFILES_CSWphp5xmlreader = .*/lib/php/extensions/.*/xmlreader.* + +PKGFILES_CSWphp5xmlrpc = .*/lib/php/extensions/.*/xmlrpc.* + +PKGFILES_CSWphp5xmlwriter = .*/lib/php/extensions/.*/xmlwriter.* + +PKGFILES_CSWphp5xsl = .*/lib/php/extensions/.*/xsl.* + +PKGFILES_CSWphp5zip = .*/lib/php/extensions/.*/zip.* + PATCHFILES += configure.diff +PATCHFILES += odbc.diff +PATCHFILES += pdopgsql.diff +PATCHFILES += pgsql.diff # PHP Extensions, currently deactivated # @@ -70,7 +470,14 @@ #include $(EXTENSION_MAKEFILES) EXTRA_CFLAGS = -I$(prefix)/include/ncursesw +EXTRA_CFLAGS += -I/opt/csw/include +export CPPFLAGS +EXTRA_CPPFLAGS = -I../ext/mbstring + +EXTRA_LDFLAGS += -L$(libdir) -R$(libdir) +LIBS += -lrt -lintl + NOISALIST = 1 STRIP_LIBTOOL = 1 @@ -87,6 +494,103 @@ CONFIGURE_ARGS += --with-pear=shared CONFIGURE_ARGS += --with-pear=shared CONFIGURE_ARGS += --with-libxml-dir=$(prefix) +CONFIGURE_ARGS += --enable-bcmath=shared +CONFIGURE_ARGS += --with-bz2=shared,$(prefix) +CONFIGURE_ARGS += --enable-calendar=shared +CONFIGURE_ARGS += --enable-ctype=shared +CONFIGURE_ARGS += --with-curl=shared,$(prefix) +CONFIGURE_ARGS += --with-curlwrappers +CONFIGURE_ARGS += --enable-dba=shared +CONFIGURE_ARGS += --with-ndbm +CONFIGURE_ARGS += --with-gdbm=$(prefix) +CONFIGURE_ARGS += --with-db4=$(prefix) +CONFIGURE_ARGS += --enable-dbase=shared +CONFIGURE_ARGS += --enable-dom=shared +CONFIGURE_ARGS += --with-libxml-dir=$(prefix) +CONFIGURE_ARGS += --enable-exif=shared +CONFIGURE_ARGS += --enable-filter=shared +CONFIGURE_ARGS += --with-pcre-dir=$(prefix) +CONFIGURE_ARGS += --enable-ftp=shared +CONFIGURE_ARGS += --with-gd=shared,$(prefix) +CONFIGURE_ARGS += --with-jpeg-dir=$(prefix) +CONFIGURE_ARGS += --with-png-dir=$(prefix) +CONFIGURE_ARGS += --with-zlib-dir=$(prefix) +CONFIGURE_ARGS += --with-xpm-dir=$(prefix) +CONFIGURE_ARGS += --with-ttf=$(prefix) +CONFIGURE_ARGS += --with-freetype-dir=$(prefix) +CONFIGURE_ARGS += --with-t1lib=$(prefix) +CONFIGURE_ARGS += --enable-gd-native-ttf +CONFIGURE_ARGS += --enable-gd-jis-conv +CONFIGURE_ARGS += --with-gettext=shared,$(prefix) +CONFIGURE_ARGS += --with-gmp=shared,$(prefix) +CONFIGURE_ARGS += --enable-hash=shared +CONFIGURE_ARGS += --with-iconv=shared +CONFIGURE_ARGS += --with-iconv-dir=$(prefix) +CONFIGURE_ARGS += --with-imap=shared,$(prefix) +CONFIGURE_ARGS += --with-kerberos=$(prefix) +CONFIGURE_ARGS += --with-imap-ssl=$(prefix) +CONFIGURE_ARGS += --enable-json=shared +CONFIGURE_ARGS += --with-ldap=shared,$(prefix) +CONFIGURE_ARGS += --with-ldap-sasl=$(prefix) +CONFIGURE_ARGS += --enable-mbstring=shared +CONFIGURE_ARGS += --enable-mbregex=shared +CONFIGURE_ARGS += --with-mcrypt=shared,$(prefix) +CONFIGURE_ARGS += --with-mhash=shared,$(prefix) +CONFIGURE_ARGS += --with-mime-magic=shared +CONFIGURE_ARGS += --with-mssql=shared,$(prefix) +CONFIGURE_ARGS += --with-mysql=shared,$(prefix) +CONFIGURE_ARGS += --with-mysqli=shared,$(bindir)/mysql_config +CONFIGURE_ARGS += --with-ncurses=shared,$(prefix) +CONFIGURE_ARGS += --with-unixODBC=shared,$(prefix) +CONFIGURE_ARGS += --with-openssl=shared,$(prefix) +CONFIGURE_ARGS += --enable-pcntl=shared +CONFIGURE_ARGS += --enable-pdo=shared +CONFIGURE_ARGS += --with-pdo-mysql=shared,$(prefix) +CONFIGURE_ARGS += --with-zlib-dir=$(prefix) +CONFIGURE_ARGS += --with-pdo-odbc=shared,unixODBC,$(prefix) +CONFIGURE_ARGS += --with-pdo-pgsql=shared,$(prefix)/postgresql +CONFIGURE_ARGS += --with-pdo-sqlite=shared,$(prefix) +CONFIGURE_ARGS += --with-pgsql=shared,$(prefix)/postgresql +CONFIGURE_ARGS += --enable-posix=shared +CONFIGURE_ARGS += --with-pspell=shared,$(prefix) +CONFIGURE_ARGS += --with-libedit=no +CONFIGURE_ARGS += --with-readline=shared,/opt/csw +CONFIGURE_ARGS += --enable-session=shared +CONFIGURE_ARGS += --enable-shmop=shared +## build this static, php can not run without it. +## it is more efficient to have this built into the php binary +CONFIGURE_ARGS += --enable-simplexml +CONFIGURE_ARGS += --with-libxml-dir=$(prefix) +## +CONFIGURE_ARGS += --with-snmp=shared,$(prefix) +CONFIGURE_ARGS += --enable-soap=shared +CONFIGURE_ARGS += --with-libxml-dir=$(prefix) +CONFIGURE_ARGS += --enable-sockets=shared +CONFIGURE_ARGS += --with-sqlite=shared,$(prefix) +CONFIGURE_ARGS += --enable-sqlite-utf8 +CONFIGURE_ARGS += --enable-sysvmsg=shared +CONFIGURE_ARGS += --enable-sysvsem=shared +CONFIGURE_ARGS += --enable-sysvshm=shared +CONFIGURE_ARGS += --with-tidy=shared,$(prefix) +CONFIGURE_ARGS += --enable-tokenizer=shared +CONFIGURE_ARGS += --enable-wddx=shared +CONFIGURE_ARGS += --with-libxml-dir=$(prefix) +CONFIGURE_ARGS += --with-libexpat-dir=$(prefix) +CONFIGURE_ARGS += --enable-xml +CONFIGURE_ARGS += --with-libxml-dir=$(prefix) +CONFIGURE_ARGS += --with-libexpat-dir=$(prefix) +CONFIGURE_ARGS += --enable-xmlreader=shared +CONFIGURE_ARGS += --with-libxml-dir=$(prefix) +CONFIGURE_ARGS += --with-xmlrpc=shared +CONFIGURE_ARGS += --with-libxml-dir=$(prefix) +CONFIGURE_ARGS += --with-iconv-dir=$(prefix) +CONFIGURE_ARGS += --with-libexpat-dir=$(prefix) +CONFIGURE_ARGS += --enable-xmlwriter=shared +CONFIGURE_ARGS += --with-libxml-dir=$(prefix) +CONFIGURE_ARGS += --with-xsl=shared,$(prefix) +CONFIGURE_ARGS += --enable-zip=shared +CONFIGURE_ARGS += --with-zlib-dir=$(prefix) +CONFIGURE_ARGS += --with-zlib=$(prefix) # Disable Tests (report submitted to PHP QA) SKIPTEST = 1 Modified: csw/mgar/pkg/php5/trunk/extensions/php5_bcmath/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_bcmath/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_bcmath/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = bcmath -PACKAGES += CSWphp5bcmath - -CATALOGNAME_CSWphp5bcmath = php5_bcmath -SPKG_DESC_CSWphp5bcmath = bcmath Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5bcmath = CSWphp5 - -CONFIGURE_ARGS += --enable-bcmath=shared - -PKGFILES_CSWphp5bcmath = .*/lib/php/extensions/.*/bcmath.* - define CSWphp5bcmath_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_bz2/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_bz2/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_bz2/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = bz2 -PACKAGES += CSWphp5bz2 - -CATALOGNAME_CSWphp5bz2 = php5_bz2 -SPKG_DESC_CSWphp5bz2 = bz2 Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5bz2 = CSWphp5 CSWbzip2 - -CONFIGURE_ARGS += --with-bz2=shared,$(prefix) - -PKGFILES_CSWphp5bz2 = .*/lib/php/extensions/.*/bz2.* - define CSWphp5bz2_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_calendar/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_calendar/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_calendar/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,8 @@ PHP5EXT_NAME = calendar -PACKAGES += CSWphp5calendar -CATALOGNAME_CSWphp5calendar = php5_calendar -SPKG_DESC_CSWphp5calendar = calendar Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5calendar = CSWphp5 -CONFIGURE_ARGS += --enable-calendar=shared -PKGFILES_CSWphp5calendar = .*/lib/php/extensions/.*/calendar.* - define CSWphp5calendar_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_ctype/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_ctype/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_ctype/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = ctype -PACKAGES += CSWphp5ctype - -CATALOGNAME_CSWphp5ctype = php5_ctype -SPKG_DESC_CSWphp5ctype = ctype Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5ctype = CSWphp5 - -CONFIGURE_ARGS += --enable-ctype=shared - -PKGFILES_CSWphp5ctype = .*/lib/php/extensions/.*/ctype.* - define CSWphp5ctype_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_curl/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_curl/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_curl/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,17 +1,5 @@ PHP5EXT_NAME = curl -PACKAGES += CSWphp5curl - -CATALOGNAME_CSWphp5curl = php5_curl -SPKG_DESC_CSWphp5curl = curl Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5curl = CSWphp5 CSWcurlrt CSWlibidn -RUNTIME_DEP_PKGS_CSWphp5curl += CSWoldaprt CSWosslrt CSWzlib - -CONFIGURE_ARGS += --with-curl=shared,$(prefix) -CONFIGURE_ARGS += --with-curlwrappers - -PKGFILES_CSWphp5curl = .*/lib/php/extensions/.*/curl.* - define CSWphp5curl_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_dba/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_dba/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_dba/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,19 +1,5 @@ PHP5EXT_NAME = dba -PACKAGES += CSWphp5dba - -CATALOGNAME_CSWphp5dba = php5_dba -SPKG_DESC_CSWphp5dba = dba Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5dba = CSWphp5 CSWbdb CSWgdbm - -CONFIGURE_ARGS += --enable-dba=shared -CONFIGURE_ARGS += --with-ndbm -CONFIGURE_ARGS += --with-gdbm=$(prefix) -CONFIGURE_ARGS += --with-db4=$(prefix) - - -PKGFILES_CSWphp5dba = .*/lib/php/extensions/.*/dba\.so - define CSWphp5dba_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_dbase/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_dbase/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_dbase/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = dbase -PACKAGES += CSWphp5dbase - -CATALOGNAME_CSWphp5dbase = php5_dbase -SPKG_DESC_CSWphp5dbase = dbase Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5dbase = CSWphp5 - -CONFIGURE_ARGS += --enable-dbase=shared - -PKGFILES_CSWphp5dbase = .*/lib/php/extensions/.*/dbase.* - define CSWphp5dbase_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_dom/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_dom/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_dom/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,17 +1,5 @@ PHP5EXT_NAME = dom -PACKAGES += CSWphp5dom - -CATALOGNAME_CSWphp5dom = php5_dom -SPKG_DESC_CSWphp5dom = dom Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5dom = CSWphp5 CSWiconv CSWlibxml2 CSWzlib - -CONFIGURE_ARGS += --enable-dom=shared -CONFIGURE_ARGS += --with-libxml-dir=$(prefix) - -PKGFILES_CSWphp5dom = .*/lib/php/extensions/.*/dom.* -PKGFILES_CSWphp5dom = .*/include/php/ext/dom.* - define CSWphp5dom_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_exif/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_exif/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_exif/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,18 +1,5 @@ PHP5EXT_NAME = exif -PACKAGES += CSWphp5exif - -CATALOGNAME_CSWphp5exif = php5_exif -SPKG_DESC_CSWphp5exif = exif Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5exif = CSWphp5 - -CONFIGURE_ARGS += --enable-exif=shared - -CPPFLAGS="-I../ext/mbstring" -export CPPFLAGS - -PKGFILES_CSWphp5exif = .*/lib/php/extensions/.*/exif.* - define CSWphp5exif_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_filter/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_filter/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_filter/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,5 +1 @@ PHP5EXT_NAME = filter - -CONFIGURE_ARGS += --enable-filter=shared -CONFIGURE_ARGS += --with-pcre-dir=$(prefix) - Modified: csw/mgar/pkg/php5/trunk/extensions/php5_ftp/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_ftp/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_ftp/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = ftp -PACKAGES += CSWphp5ftp - -CATALOGNAME_CSWphp5ftp = php5_ftp -SPKG_DESC_CSWphp5ftp = ftp Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5ftp = CSWphp5 CSWosslrt - -CONFIGURE_ARGS += --enable-ftp=shared - -PKGFILES_CSWphp5ftp = .*/lib/php/extensions/.*/ftp.* - define CSWphp5ftp_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_gd/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_gd/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_gd/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,27 +1,5 @@ PHP5EXT_NAME = gd -PACKAGES += CSWphp5gd - -CATALOGNAME_CSWphp5gd = php5_gd -SPKG_DESC_CSWphp5gd = gd Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5gd = CSWphp5 CSWftype2 CSWgd CSWjpeg -RUNTIME_DEP_PKGS_CSWphp5gd += CSWpng CSWt1lib CSWxpm CSWzlib - - -CONFIGURE_ARGS += --with-gd=shared,$(prefix) -CONFIGURE_ARGS += --with-jpeg-dir=$(prefix) -CONFIGURE_ARGS += --with-png-dir=$(prefix) -CONFIGURE_ARGS += --with-zlib-dir=$(prefix) -CONFIGURE_ARGS += --with-xpm-dir=$(prefix) -CONFIGURE_ARGS += --with-ttf=$(prefix) -CONFIGURE_ARGS += --with-freetype-dir=$(prefix) -CONFIGURE_ARGS += --with-t1lib=$(prefix) -CONFIGURE_ARGS += --enable-gd-native-ttf -CONFIGURE_ARGS += --enable-gd-jis-conv - -PKGFILES_CSWphp5gd = .*/lib/php/extensions/.*/gd.* -PKGFILES_CSWphp5gd = .*/include/php/ext/gd.* - define CSWphp5gd_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_gettext/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_gettext/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_gettext/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = gettext -PACKAGES += CSWphp5gettext - -CATALOGNAME_CSWphp5gettext = php5_gettext -SPKG_DESC_CSWphp5gettext = gettext Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5gettext = CSWphp5 CSWggettextrt - -CONFIGURE_ARGS += --with-gettext=shared,$(prefix) - -PKGFILES_CSWphp5gettext = .*/lib/php/extensions/.*/gettext.* - define CSWphp5gettext_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_gmp/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_gmp/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_gmp/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = gmp -PACKAGES += CSWphp5gmp - -CATALOGNAME_CSWphp5gmp = php5_gmp -SPKG_DESC_CSWphp5gmp = gmp Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5gmp = CSWphp5 CSWlibgmp - -CONFIGURE_ARGS += --with-gmp=shared,$(prefix) - -PKGFILES_CSWphp5gmp = .*/lib/php/extensions/.*/gmp.* - define CSWphp5gmp_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_hash/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_hash/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_hash/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,16 +1,5 @@ PHP5EXT_NAME = hash -PACKAGES += CSWphp5hash - -CATALOGNAME_CSWphp5hash = php5_hash -SPKG_DESC_CSWphp5hash = hash Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5hash = CSWphp5 - -CONFIGURE_ARGS += --enable-hash=shared - -PKGFILES_CSWphp5hash = .*/lib/php/extensions/.*/hash.* -PKGFILES_CSWphp5hash = .*/include/php/ext/hash.* - define CSWphp5hash_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_iconv/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_iconv/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_iconv/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,23 +1,7 @@ PHP5EXT_NAME = iconv -PACKAGES += CSWphp5iconv - -CATALOGNAME_CSWphp5iconv = php5_iconv -SPKG_DESC_CSWphp5iconv = iconv Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5iconv = CSWphp5 CSWiconv - -CONFIGURE_ARGS += --with-iconv=shared -CONFIGURE_ARGS += --with-iconv-dir=$(prefix) - -EXTRA_CFLAGS += -I/opt/csw/include -EXTRA_LDFLAGS += -L$(libdir) -R$(libdir) -LIBS = -lrt -lintl - #PATCHFILES += iconv.diff -PKGFILES_CSWphp5iconv = .*/lib/php/extensions/.*/iconv.* -PKGFILES_CSWphp5iconv = .*/include/php/ext/iconv.* - define CSWphp5iconv_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_imap/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_imap/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_imap/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,17 +1,5 @@ PHP5EXT_NAME = imap -PACKAGES += CSWphp5imap - -CATALOGNAME_CSWphp5imap = php5_imap -SPKG_DESC_CSWphp5imap = imap Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5imap = CSWphp5 CSWimaprt CSWkrb5lib CSWosslrt - -CONFIGURE_ARGS += --with-imap=shared,$(prefix) -CONFIGURE_ARGS += --with-kerberos=$(prefix) -CONFIGURE_ARGS += --with-imap-ssl=$(prefix) - -PKGFILES_CSWphp5imap = .*/lib/php/extensions/.*/imap.* - define CSWphp5imap_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_json/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_json/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_json/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = json -PACKAGES += CSWphp5json - -CATALOGNAME_CSWphp5json = php5_json -SPKG_DESC_CSWphp5json = json Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5json = CSWphp5 - -CONFIGURE_ARGS += --enable-json=shared - -PKGFILES_CSWphp5json = .*/lib/php/extensions/.*/json.* - define CSWphp5json_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_ldap/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_ldap/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_ldap/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,17 +1,5 @@ PHP5EXT_NAME = ldap -PACKAGES += CSWphp5ldap - -CATALOGNAME_CSWphp5ldap = php5_ldap -SPKG_DESC_CSWphp5ldap = ldap Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5ldap = CSWphp5 CSWoldaprt CSWsasl - -CONFIGURE_ARGS += --with-ldap=shared,$(prefix) -CONFIGURE_ARGS += --with-ldap-sasl=$(prefix) - -PKGFILES_CSWphp5ldap = .*/lib/php/extensions/.*/ldap.* - - define CSWphp5ldap_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_mbstring/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_mbstring/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_mbstring/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,18 +1,5 @@ PHP5EXT_NAME = mbstring -PACKAGES += CSWphp5mbstring - -CATALOGNAME_CSWphp5mbstring = php5_mbstring -SPKG_DESC_CSWphp5mbstring = mbstring Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5mbstring = CSWphp5 - - -CONFIGURE_ARGS += --enable-mbstring=shared -CONFIGURE_ARGS += --enable-mbregex=shared - -PKGFILES_CSWphp5mbstring = .*/lib/php/extensions/.*/mbstring.* -PKGFILES_CSWphp5mbstring = .*/include/php/ext/mbstring.* - define CSWphp5mbstring_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_mcrypt/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_mcrypt/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_mcrypt/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = mcrypt -PACKAGES += CSWphp5mcrypt - -CATALOGNAME_CSWphp5mcrypt = php5_mcrypt -SPKG_DESC_CSWphp5mcrypt = mcrypt Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5mcrypt = CSWphp5 CSWlibmcrypt CSWlibtoolrt - -CONFIGURE_ARGS += --with-mcrypt=shared,$(prefix) - -PKGFILES_CSWphp5mcrypt = .*/lib/php/extensions/.*/mcrypt.* - define CSWphp5mcrypt_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_mhash/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_mhash/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_mhash/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = mhash -PACKAGES += CSWphp5mhash - -CATALOGNAME_CSWphp5mhash = php5_mhash -SPKG_DESC_CSWphp5mhash = mhash Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5mhash = CSWphp5 CSWlibmhash - -CONFIGURE_ARGS += --with-mhash=shared,$(prefix) - -PKGFILES_CSWphp5mhash = .*/lib/php/extensions/.*/mhash.* - define CSWphp5mhash_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_mime_magic/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_mime_magic/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_mime_magic/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = mime_magic -PACKAGES += CSWphp5mimemagic - -CATALOGNAME_CSWphp5mimemagic = php5_mime_magic -SPKG_DESC_CSWphp5mimemagic = mime magic Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5mimemagic = CSWphp5 - -CONFIGURE_ARGS += --with-mime-magic=shared - -PKGFILES_CSWphp5mimemagic = .*/lib/php/extensions/.*/mime_magic.* - define CSWphp5mimemagic_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_mssql/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_mssql/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_mssql/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = mssql -PACKAGES += CSWphp5mssql - -CATALOGNAME_CSWphp5mssql = php5_mssql -SPKG_DESC_CSWphp5mssql = mssql Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5mssql = CSWphp5 CSWfreetds - -CONFIGURE_ARGS += --with-mssql=shared,$(prefix) - -PKGFILES_CSWphp5mssql = .*/lib/php/extensions/.*/mssql.* - define CSWphp5mssql_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_mysql/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_mysql/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_mysql/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = mysql -PACKAGES += CSWphp5mysql - -CATALOGNAME_CSWphp5mysql = php5_mysql -SPKG_DESC_CSWphp5mysql = mysql Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5mysql = CSWphp5 CSWmysql5rt - -CONFIGURE_ARGS += --with-mysql=shared,$(prefix) - -PKGFILES_CSWphp5mysql = .*/lib/php/extensions/.*/mysql\.so - define CSWphp5mysql_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_mysqli/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_mysqli/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_mysqli/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = mysqli -PACKAGES += CSWphp5mysqli - -CATALOGNAME_CSWphp5mysqli = php5_mysqli -SPKG_DESC_CSWphp5mysqli = mysqli Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5mysqli = CSWphp5 CSWmysql5rt CSWzlib - -CONFIGURE_ARGS += --with-mysqli=shared,$(bindir)/mysql_config - -PKGFILES_CSWphp5mysqli = .*/lib/php/extensions/.*/mysqli.* - define CSWphp5mysqli_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_ncurses/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_ncurses/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_ncurses/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = ncurses -PACKAGES += CSWphp5ncurses - -CATALOGNAME_CSWphp5ncurses = php5_ncurses -SPKG_DESC_CSWphp5ncurses = ncurses Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5ncurses = CSWphp5 CSWncurses - -CONFIGURE_ARGS += --with-ncurses=shared,$(prefix) - -PKGFILES_CSWphp5ncurses = .*/lib/php/extensions/.*/ncurses.* - define CSWphp5ncurses_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_odbc/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_odbc/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_odbc/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,17 +1,5 @@ PHP5EXT_NAME = odbc -PACKAGES += CSWphp5odbc - -CATALOGNAME_CSWphp5odbc = php5_odbc -SPKG_DESC_CSWphp5odbc = odbc Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5odbc = CSWphp5 CSWunixodbc - -PATCHFILES += odbc.diff - -CONFIGURE_ARGS += --with-unixODBC=shared,$(prefix) - -PKGFILES_CSWphp5odbc = .*/lib/php/extensions/.*/odbc.* - define CSWphp5odbc_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_openssl/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_openssl/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_openssl/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = openssl -PACKAGES += CSWphp5openssl - -CATALOGNAME_CSWphp5openssl = php5_openssl -SPKG_DESC_CSWphp5openssl = openssl Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5openssl = CSWphp5 CSWosslrt CSWkrb5lib - -CONFIGURE_ARGS += --with-openssl=shared,$(prefix) - -PKGFILES_CSWphp5openssl = .*/lib/php/extensions/.*/openssl.* - define CSWphp5openssl_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_pcntl/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_pcntl/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_pcntl/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = pcntl -PACKAGES += CSWphp5pcntl - -CATALOGNAME_CSWphp5pcntl = php5_pcntl -SPKG_DESC_CSWphp5pcntl = pcntl Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5pcntl = CSWphp5 - -CONFIGURE_ARGS += --enable-pcntl=shared - -PKGFILES_CSWphp5pcntl = .*/lib/php/extensions/.*/pcntl.* - define CSWphp5pcntl_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_pdo/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_pdo/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_pdo/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,16 +1,5 @@ PHP5EXT_NAME = pdo -PACKAGES += CSWphp5pdo - -CATALOGNAME_CSWphp5pdo = php5_pdo -SPKG_DESC_CSWphp5pdo = A database access abstraction module for PHP applications -RUNTIME_DEP_PKGS_CSWphp5pdo = CSWphp5 - -CONFIGURE_ARGS += --enable-pdo=shared - -PKGFILES_CSWphp5pdo = .*/lib/php/extensions/.*/pdo\.so* -PKGFILES_CSWphp5pdo = .*/include/php/ext/pdo.* - define CSWphp5pdo_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_pdomysql/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_pdomysql/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_pdomysql/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,16 +1,5 @@ PHP5EXT_NAME = pdomysql -PACKAGES += CSWphp5pdomysql - -CATALOGNAME_CSWphp5pdomysql = php5_pdomysql -SPKG_DESC_CSWphp5pdomysql = A MySQL specific database access abstraction module for PHP applications -RUNTIME_DEP_PKGS_CSWphp5pdomysql = CSWphp5 CSWmysql5rt CSWzlib CSWphp5pdo - -CONFIGURE_ARGS += --with-pdo-mysql=shared,$(prefix) -CONFIGURE_ARGS += --with-zlib-dir=$(prefix) - -PKGFILES_CSWphp5pdomysql = .*/lib/php/extensions/.*/pdo_mysql.* - define CSWphp5pdomysql_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_pdoodbc/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_pdoodbc/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_pdoodbc/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = pdoodbc -PACKAGES += CSWphp5pdoodbc - -CATALOGNAME_CSWphp5pdoodbc = php5_pdoodbc -SPKG_DESC_CSWphp5pdoodbc = An ODBC specific database access abstraction module for PHP applications -RUNTIME_DEP_PKGS_CSWphp5pdoodbc = CSWphp5 CSWunixodbc CSWphp5pdo - -CONFIGURE_ARGS += --with-pdo-odbc=shared,unixODBC,$(prefix) - -PKGFILES_CSWphp5pdoodbc = .*/lib/php/extensions/.*/pdo_odbc.* - define CSWphp5pdoodbc_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_pdopgsql/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_pdopgsql/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_pdopgsql/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,17 +1,5 @@ PHP5EXT_NAME = pdopgsql -PACKAGES += CSWphp5pdopgsql - -CATALOGNAME_CSWphp5pdopgsql = php5_pdopgsql -SPKG_DESC_CSWphp5pdopgsql = A PgSQL specific database access abstraction module for PHP applications -RUNTIME_DEP_PKGS_CSWphp5pdopgsql = CSWphp5 CSWlibpq CSWphp5pdo - -PATCHFILES += pdopgsql.diff - -CONFIGURE_ARGS += --with-pdo-pgsql=shared,$(prefix)/postgresql - -PKGFILES_CSWphp5pdopgsql = .*/lib/php/extensions/.*/pdo_pgsql.* - define CSWphp5pdopgsql_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_pdosqlite/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_pdosqlite/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_pdosqlite/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = pdosqlite -PACKAGES += CSWphp5pdosqlite - -CATALOGNAME_CSWphp5pdosqlite = php5_pdosqlite -SPKG_DESC_CSWphp5pdosqlite = A Sqlite specific database access abstraction module for PHP applications -RUNTIME_DEP_PKGS_CSWphp5pdosqlite = CSWphp5 CSWphp5pdo - -CONFIGURE_ARGS += --with-pdo-sqlite=shared,$(prefix) - -PKGFILES_CSWphp5pdosqlite = .*/lib/php/extensions/.*/pdo_sqlite.* - define CSWphp5pdosqlite_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_pgsql/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_pgsql/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_pgsql/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,17 +1,5 @@ PHP5EXT_NAME = pgsql -PACKAGES += CSWphp5pgsql - -CATALOGNAME_CSWphp5pgsql = php5_pgsql -SPKG_DESC_CSWphp5pgsql = pgsql Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5pgsql = CSWphp5 CSWlibpq - -PATCHFILES += pgsql.diff - -CONFIGURE_ARGS += --with-pgsql=shared,$(prefix)/postgresql - -PKGFILES_CSWphp5pgsql = .*/lib/php/extensions/.*/pgsql.* - define CSWphp5pgsql_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_posix/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_posix/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_posix/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = posix -PACKAGES += CSWphp5posix - -CATALOGNAME_CSWphp5posix = php5_posix -SPKG_DESC_CSWphp5posix = posix Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5posix = CSWphp5 - -CONFIGURE_ARGS += --enable-posix=shared - -PKGFILES_CSWphp5posix = .*/lib/php/extensions/.*/posix.* - define CSWphp5posix_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_pspell/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_pspell/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_pspell/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = pspell -PACKAGES += CSWphp5pspell - -CATALOGNAME_CSWphp5pspell = php5_pspell -SPKG_DESC_CSWphp5pspell = pspell Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5pspell = CSWphp5 CSWaspell - -CONFIGURE_ARGS += --with-pspell=shared,$(prefix) - -PKGFILES_CSWphp5pspell = .*/lib/php/extensions/.*/pspell.* - define CSWphp5pspell_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_readline/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_readline/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_readline/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,16 +1,5 @@ PHP5EXT_NAME = readline -PACKAGES += CSWphp5readline - -CATALOGNAME_CSWphp5readline = php5_readline -SPKG_DESC_CSWphp5readline = readline Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5readline = CSWphp5 CSWreadline CSWncurses - -CONFIGURE_ARGS += --with-libedit=no -CONFIGURE_ARGS += --with-readline=shared,/opt/csw - -PKGFILES_CSWphp5readline = .*/lib/php/extensions/.*/readline.* - define CSWphp5readline_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_session/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_session/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_session/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,16 +1,5 @@ PHP5EXT_NAME = session -PACKAGES += CSWphp5session - -CATALOGNAME_CSWphp5session = php5_session -SPKG_DESC_CSWphp5session = session Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5session = CSWphp5 CSWlibmm - -CONFIGURE_ARGS += --enable-session=shared - -PKGFILES_CSWphp5session = .*/lib/php/extensions/.*/session.* -PKGFILES_CSWphp5session = .*/include/php/ext/session.* - define CSWphp5session_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_shmop/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_shmop/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_shmop/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = shmop -PACKAGES += CSWphp5shmop - -CATALOGNAME_CSWphp5shmop = php5_shmop -SPKG_DESC_CSWphp5shmop = shmop Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5shmop = CSWphp5 - -CONFIGURE_ARGS += --enable-shmop=shared - -PKGFILES_CSWphp5shmop = .*/lib/php/extensions/.*/shmop.* - define CSWphp5shmop_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_simplexml/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_simplexml/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_simplexml/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,11 +1,5 @@ PHP5EXT_NAME = simplexml -## build this static, php can not run without it. -## it is more efficient to have this built into the php binary - -CONFIGURE_ARGS += --enable-simplexml -CONFIGURE_ARGS += --with-libxml-dir=$(prefix) - define CSWphp5simplexml_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_snmp/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_snmp/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_snmp/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = snmp -PACKAGES += CSWphp5snmp - -CATALOGNAME_CSWphp5snmp = php5_snmp -SPKG_DESC_CSWphp5snmp = snmp Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5snmp = CSWphp5 CSWnetsnmp CSWosslrt CSWtcpwrap - -CONFIGURE_ARGS += --with-snmp=shared,$(prefix) - -PKGFILES_CSWphp5snmp = .*/lib/php/extensions/.*/snmp.* - define CSWphp5snmp_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_soap/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_soap/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_soap/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,16 +1,5 @@ PHP5EXT_NAME = soap -PACKAGES += CSWphp5soap - -CATALOGNAME_CSWphp5soap = php5_soap -SPKG_DESC_CSWphp5soap = soap Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5soap = CSWphp5 CSWiconv CSWlibxml2 CSWzlib - -CONFIGURE_ARGS += --enable-soap=shared -CONFIGURE_ARGS += --with-libxml-dir=$(prefix) - -PKGFILES_CSWphp5soap = .*/lib/php/extensions/.*/soap.* - define CSWphp5soap_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_sockets/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_sockets/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_sockets/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = sockets -PACKAGES += CSWphp5sockets - -CATALOGNAME_CSWphp5sockets = php5_sockets -SPKG_DESC_CSWphp5sockets = sockets Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5sockets = CSWphp5 - -CONFIGURE_ARGS += --enable-sockets=shared - -PKGFILES_CSWphp5sockets = .*/lib/php/extensions/.*/sockets.* - define CSWphp5sockets_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_sqlite/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_sqlite/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_sqlite/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,17 +1,5 @@ PHP5EXT_NAME = sqlite -PACKAGES += CSWphp5sqlite - -CATALOGNAME_CSWphp5sqlite = php5_sqlite -SPKG_DESC_CSWphp5sqlite = sqlite Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5sqlite = CSWphp5 CSWsqlite - -CONFIGURE_ARGS += --with-sqlite=shared,$(prefix) -CONFIGURE_ARGS += --enable-sqlite-utf8 - -PKGFILES_CSWphp5sqlite = .*/lib/php/extensions/.*/sqlite.* -PKGFILES_CSWphp5sqlite = .*/include/php/ext/sqlite.* - define CSWphp5sqlite_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_sysvmsg/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_sysvmsg/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_sysvmsg/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = sysvmsg -PACKAGES += CSWphp5sysvmsg - -CATALOGNAME_CSWphp5sysvmsg = php5_sysvmsg -SPKG_DESC_CSWphp5sysvmsg = sysvmsg Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5sysvmsg = CSWphp5 - -CONFIGURE_ARGS += --enable-sysvmsg=shared - -PKGFILES_CSWphp5sysvmsg = .*/lib/php/extensions/.*/sysvmsg.* - define CSWphp5sysvmsg_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_sysvsem/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_sysvsem/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_sysvsem/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = sysvsem -PACKAGES += CSWphp5sysvsem - -CATALOGNAME_CSWphp5sysvsem = php5_sysvsem -SPKG_DESC_CSWphp5sysvsem = sysvsem Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5sysvsem = CSWphp5 - -CONFIGURE_ARGS += --enable-sysvsem=shared - -PKGFILES_CSWphp5sysvsem = .*/lib/php/extensions/.*/sysvsem.* - define CSWphp5sysvsem_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_sysvshm/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_sysvshm/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_sysvshm/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = sysvshm -PACKAGES += CSWphp5sysvshm - -CATALOGNAME_CSWphp5sysvshm = php5_sysvshm -SPKG_DESC_CSWphp5sysvshm = sysvshm Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5sysvshm = CSWphp5 - -CONFIGURE_ARGS += --enable-sysvshm=shared - -PKGFILES_CSWphp5sysvshm = .*/lib/php/extensions/.*/sysvshm.* - define CSWphp5sysvshm_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_tidy/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_tidy/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_tidy/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = tidy -PACKAGES += CSWphp5tidy - -CATALOGNAME_CSWphp5tidy = php5_tidy -SPKG_DESC_CSWphp5tidy = tidy Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5tidy = CSWphp5 CSWhtmltidy - -CONFIGURE_ARGS += --with-tidy=shared,$(prefix) - -PKGFILES_CSWphp5tidy = .*/lib/php/extensions/.*/tidy.* - define CSWphp5tidy_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_tokenizer/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_tokenizer/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_tokenizer/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,15 +1,5 @@ PHP5EXT_NAME = tokenizer -PACKAGES += CSWphp5tokenizer - -CATALOGNAME_CSWphp5tokenizer = php5_tokenizer -SPKG_DESC_CSWphp5tokenizer = tokenizer Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5tokenizer = CSWphp5 - -CONFIGURE_ARGS += --enable-tokenizer=shared - -PKGFILES_CSWphp5tokenizer = .*/lib/php/extensions/.*/tokenizer.* - define CSWphp5tokenizer_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_wddx/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_wddx/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_wddx/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,17 +1,5 @@ PHP5EXT_NAME = wddx -PACKAGES += CSWphp5wddx - -CATALOGNAME_CSWphp5wddx = php5_wddx -SPKG_DESC_CSWphp5wddx = wddx Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5wddx = CSWphp5 - -CONFIGURE_ARGS += --enable-wddx=shared -CONFIGURE_ARGS += --with-libxml-dir=$(prefix) -CONFIGURE_ARGS += --with-libexpat-dir=$(prefix) - -PKGFILES_CSWphp5wddx = .*/lib/php/extensions/.*/wddx.* - define CSWphp5wddx_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_xml/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_xml/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_xml/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,9 +1,5 @@ PHP5EXT_NAME = xml -CONFIGURE_ARGS += --enable-xml -CONFIGURE_ARGS += --with-libxml-dir=$(prefix) -CONFIGURE_ARGS += --with-libexpat-dir=$(prefix) - define CSWphp5xml_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_xmlreader/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_xmlreader/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_xmlreader/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,16 +1,5 @@ PHP5EXT_NAME = xmlreader -PACKAGES += CSWphp5xmlreader - -CATALOGNAME_CSWphp5xmlreader = php5_xmlreader -SPKG_DESC_CSWphp5xmlreader = xmlreader Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5xmlreader = CSWphp5 CSWiconv CSWlibxml2 CSWzlib - -CONFIGURE_ARGS += --enable-xmlreader=shared -CONFIGURE_ARGS += --with-libxml-dir=$(prefix) - -PKGFILES_CSWphp5xmlreader = .*/lib/php/extensions/.*/xmlreader.* - define CSWphp5xmlreader_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_xmlrpc/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_xmlrpc/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_xmlrpc/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,18 +1,5 @@ PHP5EXT_NAME = xmlrpc -PACKAGES += CSWphp5xmlrpc - -CATALOGNAME_CSWphp5xmlrpc = php5_xmlrpc -SPKG_DESC_CSWphp5xmlrpc = xmlrpc Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5xmlrpc = CSWphp5 CSWiconv CSWlibxml2 CSWzlib CSWexpat - -CONFIGURE_ARGS += --with-xmlrpc=shared -CONFIGURE_ARGS += --with-libxml-dir=$(prefix) -CONFIGURE_ARGS += --with-iconv-dir=$(prefix) -CONFIGURE_ARGS += --with-libexpat-dir=$(prefix) - -PKGFILES_CSWphp5xmlrpc = .*/lib/php/extensions/.*/xmlrpc.* - define CSWphp5xmlrpc_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_xmlwriter/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_xmlwriter/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_xmlwriter/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,16 +1,5 @@ PHP5EXT_NAME = xmlwriter -PACKAGES += CSWphp5xmlwriter - -CATALOGNAME_CSWphp5xmlwriter = php5_xmlwriter -SPKG_DESC_CSWphp5xmlwriter = xmlwriter Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5xmlwriter = CSWphp5 CSWiconv CSWlibxml2 CSWzlib - -CONFIGURE_ARGS += --enable-xmlwriter=shared -CONFIGURE_ARGS += --with-libxml-dir=$(prefix) - -PKGFILES_CSWphp5xmlwriter = .*/lib/php/extensions/.*/xmlwriter.* - define CSWphp5xmlwriter_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_xsl/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_xsl/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_xsl/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,16 +1,5 @@ PHP5EXT_NAME = xsl -PACKAGES += CSWphp5xsl - -CATALOGNAME_CSWphp5xsl = php5_xsl -SPKG_DESC_CSWphp5xsl = xsl Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5xsl = CSWphp5 CSWiconv CSWlibxml2 -RUNTIME_DEP_PKGS_CSWphp5xsl += CSWlibxslt CSWzlib - -CONFIGURE_ARGS += --with-xsl=shared,$(prefix) - -PKGFILES_CSWphp5xsl = .*/lib/php/extensions/.*/xsl.* - define CSWphp5xsl_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_zip/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_zip/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_zip/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,16 +1,5 @@ PHP5EXT_NAME = zip -PACKAGES += CSWphp5zip - -CATALOGNAME_CSWphp5zip = php5_zip -SPKG_DESC_CSWphp5zip = zip Extention for PHP5 -RUNTIME_DEP_PKGS_CSWphp5zip = CSWphp5 CSWzlib - -CONFIGURE_ARGS += --enable-zip=shared -CONFIGURE_ARGS += --with-zlib-dir=$(prefix) - -PKGFILES_CSWphp5zip = .*/lib/php/extensions/.*/zip.* - define CSWphp5zip_postinstall #!/bin/sh Modified: csw/mgar/pkg/php5/trunk/extensions/php5_zlib/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/extensions/php5_zlib/Makefile 2011-02-28 00:27:12 UTC (rev 13494) +++ csw/mgar/pkg/php5/trunk/extensions/php5_zlib/Makefile 2011-02-28 03:03:58 UTC (rev 13495) @@ -1,8 +1,5 @@ PHP5EXT_NAME = zlib - -CONFIGURE_ARGS += --with-zlib=$(prefix) - define CSWphp5zlib_postinstall #!/bin/sh Copied: csw/mgar/pkg/php5/trunk/files/odbc.diff (from rev 13494, csw/mgar/pkg/php5/trunk/extensions/php5_odbc/files/odbc.diff) =================================================================== --- csw/mgar/pkg/php5/trunk/files/odbc.diff (rev 0) +++ csw/mgar/pkg/php5/trunk/files/odbc.diff 2011-02-28 03:03:58 UTC (rev 13495) @@ -0,0 +1,462 @@ +--- php-5.2.6/ext/odbc/config.m4.orig 2009-02-25 12:04:48.140914150 -0600 ++++ php-5.2.6/ext/odbc/config.m4 2009-02-25 12:15:55.740367734 -0600 +@@ -8,402 +8,6 @@ + fi + ]) + +-dnl +-dnl Figure out which library file to link with for the Solid support. +-dnl +-AC_DEFUN([PHP_ODBC_FIND_SOLID_LIBS],[ +- AC_MSG_CHECKING([Solid library file]) +- ac_solid_uname_r=`uname -r 2>/dev/null` +- ac_solid_uname_s=`uname -s 2>/dev/null` +- case $ac_solid_uname_s in +- AIX) ac_solid_os=a3x;; # a4x for AIX4/ Solid 2.3/3.0 only +- HP-UX) ac_solid_os=h9x;; # h1x for hpux11, h0x for hpux10 +- IRIX) ac_solid_os=irx;; # Solid 2.3(?)/ 3.0 only +- Linux) +- if ldd -v /bin/sh | grep GLIBC > /dev/null; then +- AC_DEFINE(SS_LINUX,1,[Needed in sqlunix.h ]) +- ac_solid_os=l2x +- else +- AC_DEFINE(SS_LINUX,1,[Needed in sqlunix.h ]) +- ac_solid_os=lux +- fi;; +- SunOS) +- ac_solid_os=ssx;; # should we deal with SunOS 4? +- FreeBSD) +- if test `expr $ac_solid_uname_r : '\(.\)'` -gt "2"; then +- AC_DEFINE(SS_FBX,1,[Needed in sqlunix.h for wchar defs ]) +- ac_solid_os=fex +- else +- AC_DEFINE(SS_FBX,1,[Needed in sqlunix.h for wchar defs ]) +- ac_solid_os=fbx +- fi;; +- esac +- +- if test -f $1/soc${ac_solid_os}35.a; then +- ac_solid_version=35 +- ac_solid_prefix=soc +- elif test -f $1/scl${ac_solid_os}30.a; then +- ac_solid_version=30 +- ac_solid_prefix=scl +- elif test -f $1/scl${ac_solid_os}23.a; then +- ac_solid_version=23 +- ac_solid_prefix=scl +- fi +- +-# +-# Check for the library files, and setup the ODBC_LIBS path... +-# +-if test ! -f $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so -a \ +- ! -f $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a; then +- # +- # we have an error and should bail out, as we can't find the libs! +- # +- echo "" +- echo "*********************************************************************" +- echo "* Unable to locate $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so or $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a" +- echo "* Please correct this by creating the following links and reconfiguring:" +- echo "* $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a -> $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.a" +- echo "* $1/${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so -> $1/lib${ac_solid_prefix}${ac_solid_os}${ac_solid_version}.so" +- echo "*********************************************************************" +-else +- ODBC_LFLAGS=-L$1 +- ODBC_LIBS=-l${ac_solid_prefix}${ac_solid_os}${ac_solid_version} +-fi +- +- AC_MSG_RESULT(`echo $ODBC_LIBS | sed -e 's!.*/!!'`) +-]) +- +- +-dnl +-dnl Figure out which library file to link with for the Empress support. +-dnl +- +-AC_DEFUN([PHP_ODBC_FIND_EMPRESS_LIBS],[ +- AC_MSG_CHECKING([Empress library file]) +- ODBC_LIBS=`echo $1/libempodbccl.so | cut -d' ' -f1` +- if test ! -f $ODBC_LIBS; then +- ODBC_LIBS=`echo $1/libempodbccl.so | cut -d' ' -f1` +- fi +- AC_MSG_RESULT(`echo $ODBC_LIBS | sed -e 's!.*/!!'`) +-]) +- +-AC_DEFUN([PHP_ODBC_FIND_EMPRESS_BCS_LIBS],[ +- AC_MSG_CHECKING([Empress local access library file]) +- ODBCBCS_LIBS=`echo $1/libempodbcbcs.a | cut -d' ' -f1` +- if test ! -f $ODBCBCS_LIBS; then +- ODBCBCS_LIBS=`echo $1/libempodbcbcs.a | cut -d' ' -f1` +- fi +- AC_MSG_RESULT(`echo $ODBCBCS_LIBS | sed -e 's!.*/!!'`) +-]) +- +-dnl +-dnl configure options +-dnl +-if test -z "$ODBC_TYPE"; then +-PHP_ARG_WITH(adabas,, +-[ --with-adabas[=DIR] Include Adabas D support [/usr/local]]) +- +- if test "$PHP_ADABAS" != "no"; then +- AC_MSG_CHECKING([for Adabas support]) +- if test "$PHP_ADABAS" = "yes"; then +- PHP_ADABAS=/usr/local +- fi +- PHP_ADD_INCLUDE($PHP_ADABAS/incl) +- PHP_ADD_LIBPATH($PHP_ADABAS/$PHP_LIBDIR) +- ODBC_OBJS="$PHP_ADABAS/$PHP_LIBDIR/odbclib.a" +- ODBC_LIB="$abs_builddir/ext/odbc/libodbc_adabas.a" +- $srcdir/build/shtool mkdir -f -p ext/odbc +- rm -f "$ODBC_LIB" +- cp "$ODBC_OBJS" "$ODBC_LIB" +- PHP_ADD_LIBRARY(sqlptc) +- PHP_ADD_LIBRARY(sqlrte) +- PHP_ADD_LIBRARY_WITH_PATH(odbc_adabas, $abs_builddir/ext/odbc) +- ODBC_TYPE=adabas +- ODBC_INCDIR=$PHP_ADABAS/incl +- PHP_ODBC_CHECK_HEADER(sqlext.h) +- AC_DEFINE(HAVE_ADABAS,1,[ ]) +- AC_MSG_RESULT([$ext_output]) +- fi +-fi +- +-if test -z "$ODBC_TYPE"; then +-PHP_ARG_WITH(sapdb,, +-[ --with-sapdb[=DIR] Include SAP DB support [/usr/local]]) +- +- if test "$PHP_SAPDB" != "no"; then +- AC_MSG_CHECKING([for SAP DB support]) +- if test "$PHP_SAPDB" = "yes"; then +- PHP_SAPDB=/usr/local +- fi +- PHP_ADD_INCLUDE($PHP_SAPDB/incl) +- PHP_ADD_LIBPATH($PHP_SAPDB/$PHP_LIBDIR) +- PHP_ADD_LIBRARY(sqlod) +- ODBC_TYPE=sapdb +- AC_DEFINE(HAVE_SAPDB,1,[ ]) +- AC_MSG_RESULT([$ext_output]) +- fi +-fi +- +-if test -z "$ODBC_TYPE"; then +-PHP_ARG_WITH(solid,, +-[ --with-solid[=DIR] Include Solid support [/usr/local/solid]]) +- +- if test "$PHP_SOLID" != "no"; then +- AC_MSG_CHECKING(for Solid support) +- if test "$PHP_SOLID" = "yes"; then +- PHP_SOLID=/usr/local/solid +- fi +- ODBC_INCDIR=$PHP_SOLID/include +- ODBC_LIBDIR=$PHP_SOLID/$PHP_LIBDIR +- ODBC_INCLUDE=-I$ODBC_INCDIR +- ODBC_TYPE=solid +- if test -f $ODBC_LIBDIR/soc*35.a; then +- AC_DEFINE(HAVE_SOLID_35,1,[ ]) +- elif test -f $ODBC_LIBDIR/scl*30.a; then +- AC_DEFINE(HAVE_SOLID_30,1,[ ]) +- elif test -f $ODBC_LIBDIR/scl*23.a; then +- AC_DEFINE(HAVE_SOLID,1,[ ]) +- fi +- AC_MSG_RESULT([$ext_output]) +- PHP_ODBC_FIND_SOLID_LIBS($ODBC_LIBDIR) +- fi +-fi +- +-if test -z "$ODBC_TYPE"; then +-PHP_ARG_WITH(ibm-db2,, +-[ --with-ibm-db2[=DIR] Include IBM DB2 support [/home/db2inst1/sqllib]]) +- +- if test "$PHP_IBM_DB2" != "no"; then +- AC_MSG_CHECKING(for IBM DB2 support) +- if test "$PHP_IBM_DB2" = "yes"; then +- ODBC_INCDIR=/home/db2inst1/sqllib/include +- ODBC_LIBDIR=/home/db2inst1/sqllib/lib +- else +- ODBC_INCDIR=$PHP_IBM_DB2/include +- ODBC_LIBDIR=$PHP_IBM_DB2/$PHP_LIBDIR +- fi +- +- PHP_ODBC_CHECK_HEADER(sqlcli1.h) +- +- ODBC_INCLUDE=-I$ODBC_INCDIR +- ODBC_LFLAGS=-L$ODBC_LIBDIR +- ODBC_TYPE=ibm-db2 +- ODBC_LIBS=-ldb2 +- +- PHP_TEST_BUILD(SQLExecute, [ +- AC_DEFINE(HAVE_IBMDB2,1,[ ]) +- AC_MSG_RESULT([$ext_output]) +- ], [ +- AC_MSG_RESULT(no) +- AC_MSG_ERROR([ +-build test failed. Please check the config.log for details. +-You need to source your DB2 environment before running PHP configure: +-# . \$IBM_DB2/db2profile +-]) +- ], [ +- $ODBC_LFLAGS $ODBC_LIBS +- ]) +- fi +-fi +- +-if test -z "$ODBC_TYPE"; then +-PHP_ARG_WITH(ODBCRouter,, +-[ --with-ODBCRouter[=DIR] Include ODBCRouter.com support [/usr]]) +- +- if test "$PHP_ODBCROUTER" != "no"; then +- AC_MSG_CHECKING(for ODBCRouter.com support) +- if test "$PHP_ODBCROUTER" = "yes"; then +- PHP_ODBCROUTER=/usr +- fi +- ODBC_INCDIR=$PHP_ODBCROUTER/include +- ODBC_LIBDIR=$PHP_ODBCROUTER/lib +- ODBC_LFLAGS=-L$ODBC_LIBDIR +- ODBC_INCLUDE=-I$ODBC_INCDIR +- ODBC_LIBS=-lodbcsdk +- ODBC_TYPE=ODBCRouter +- AC_DEFINE(HAVE_ODBC_ROUTER,1,[ ]) +- AC_MSG_RESULT([$ext_output]) +- fi +-fi +- +-if test -z "$ODBC_TYPE"; then +-PHP_ARG_WITH(empress,, +-[ --with-empress[=DIR] Include Empress support [\$EMPRESSPATH] +- (Empress Version >= 8.60 required)]) +- +- if test "$PHP_EMPRESS" != "no"; then +- AC_MSG_CHECKING(for Empress support) +- if test "$PHP_EMPRESS" = "yes"; then +- ODBC_INCDIR=$EMPRESSPATH/include/odbc +- ODBC_LIBDIR=$EMPRESSPATH/shlib +- else +- ODBC_INCDIR=$PHP_EMPRESS/include/odbc +- ODBC_LIBDIR=$PHP_EMPRESS/shlib +- fi +- ODBC_INCLUDE=-I$ODBC_INCDIR +- ODBC_LFLAGS=-L$ODBC_LIBDIR +- ODBC_TYPE=empress +- AC_DEFINE(HAVE_EMPRESS,1,[ ]) +- AC_MSG_RESULT([$ext_output]) +- PHP_ODBC_FIND_EMPRESS_LIBS($ODBC_LIBDIR) +- fi +-fi +- +-if test -z "$ODBC_TYPE"; then +-PHP_ARG_WITH(empress-bcs,, +-[ --with-empress-bcs[=DIR] +- Include Empress Local Access support [\$EMPRESSPATH] +- (Empress Version >= 8.60 required)]) +- +- if test "$PHP_EMPRESS_BCS" != "no"; then +- AC_MSG_CHECKING(for Empress local access support) +- if test "$PHP_EMPRESS_BCS" = "yes"; then +- ODBC_INCDIR=$EMPRESSPATH/include/odbc +- ODBC_LIBDIR=$EMPRESSPATH/shlib +- else +- ODBC_INCDIR=$PHP_EMPRESS_BCS/include/odbc +- ODBC_LIBDIR=$PHP_EMPRESS_BCS/shlib +- fi +- CC="empocc -bcs";export CC; +- LD="empocc -bcs";export LD; +- ODBC_INCLUDE=-I$ODBC_INCDIR +- ODBC_LFLAGS=-L$ODBC_LIBDIR +- LIST=`empocc -listlines -bcs -o a a.c` +- +- NEWLIST= +- for I in $LIST +- do +- case $I in +- $EMPRESSPATH/odbccl/lib/* | \ +- $EMPRESSPATH/rdbms/lib/* | \ +- $EMPRESSPATH/common/lib/*) +- NEWLIST="$NEWLIST $I" +- ;; +- esac +- done +- ODBC_LIBS="-lempphpbcs -lms -lmscfg -lbasic -lbasic_os -lnlscstab -lnlsmsgtab -lm -ldl -lcrypt" +- ODBC_TYPE=empress-bcs +- AC_DEFINE(HAVE_EMPRESS,1,[ ]) +- AC_MSG_RESULT([$ext_output]) +- PHP_ODBC_FIND_EMPRESS_BCS_LIBS($ODBC_LIBDIR) +- fi +-fi +- +-if test -z "$ODBC_TYPE"; then +-PHP_ARG_WITH(birdstep,, +-[ --with-birdstep[=DIR] Include Birdstep support [/usr/local/birdstep]]) +- +- if test "$PHP_BIRDSTEP" != "no"; then +- AC_MSG_CHECKING(for Birdstep support) +- if test "$PHP_BIRDSTEP" = "yes"; then +- ODBC_INCDIR=/usr/local/birdstep/include +- ODBC_LIBDIR=/usr/local/birdstep/lib +- else +- ODBC_INCDIR=$PHP_BIRDSTEP/include +- ODBC_LIBDIR=$PHP_BIRDSTEP/$PHP_LIBDIR +- fi +- +- case $host_alias in +- *aix*[)] +- AC_DEFINE(AIX,1,[ ]);; +- *hpux*[)] +- AC_DEFINE(HPUX,1,[ ]);; +- *linux*[)] +- AC_DEFINE(LINUX,1,[ ]);; +- *qnx*[)] +- AC_DEFINE(NEUTRINO,1,[ ]);; +- i?86-*-solaris*[)] +- AC_DEFINE(ISOLARIS,1,[ ]);; +- sparc-*-solaris*[)] +- AC_DEFINE(SOLARIS,1,[ ]);; +- *unixware*[)] +- AC_DEFINE(UNIXWARE,1,[ ]);; +- esac +- +- ODBC_INCLUDE=-I$ODBC_INCDIR +- ODBC_TYPE=birdstep +- ODBC_LFLAGS=-L$ODBC_LIBDIR +- ODBC_LIBS="-lCadm -lCdict -lCenc -lCrdm -lCrpc -lCrdbc -lCrm -lCuapi -lutil" +- +- if test -f "$ODBC_LIBDIR/libCrdbc32.$SHLIB_SUFFIX_NAME"; then +- ODBC_LIBS="-lCrdbc32 -lCadm32 -lCncp32 -lCrm32 -lCsql32 -lCdict32 -lCrdm32 -lCrpc32 -lutil" +- elif test -f "$ODBC_LIBDIR/libCrdbc.$SHLIB_SUFFIX_NAME"; then +- ODBC_LIBS="-lCrdbc -lCadm -lCncp -lCrm -lCsql -lCdict -lCrdm -lCrpc -lutil" +- fi +- +- AC_DEFINE(HAVE_BIRDSTEP,1,[ ]) +- AC_MSG_RESULT([$ext_output]) +- fi +-fi +- +-if test -z "$ODBC_TYPE"; then +-PHP_ARG_WITH(custom-odbc,, +-[ --with-custom-odbc[=DIR] +- Include user defined ODBC support. DIR is ODBC install base +- directory [/usr/local]. Make sure to define CUSTOM_ODBC_LIBS and +- have some odbc.h in your include dirs. f.e. you should define +- following for Sybase SQL Anywhere 5.5.00 on QNX, prior to +- running this configure script: +- CPPFLAGS=\"-DODBC_QNX -DSQLANY_BUG\" +- LDFLAGS=-lunix +- CUSTOM_ODBC_LIBS=\"-ldblib -lodbc\"]) +- +- if test "$PHP_CUSTOM_ODBC" != "no"; then +- AC_MSG_CHECKING(for a custom ODBC support) +- if test "$PHP_CUSTOM_ODBC" = "yes"; then +- PHP_CUSTOM_ODBC=/usr/local +- fi +- ODBC_INCDIR=$PHP_CUSTOM_ODBC/include +- ODBC_LIBDIR=$PHP_CUSTOM_ODBC/$PHP_LIBDIR +- ODBC_LFLAGS=-L$ODBC_LIBDIR +- ODBC_INCLUDE=-I$ODBC_INCDIR +- ODBC_LIBS=$CUSTOM_ODBC_LIBS +- ODBC_TYPE=custom-odbc +- AC_DEFINE(HAVE_CODBC,1,[ ]) +- AC_MSG_RESULT([$ext_ouput]) +- fi +-fi +- +-if test -z "$ODBC_TYPE"; then +-PHP_ARG_WITH(iodbc,, +-[ --with-iodbc[=DIR] Include iODBC support [/usr/local]]) +- +- if test "$PHP_IODBC" != "no"; then +- AC_MSG_CHECKING(for iODBC support) +- if test "$PHP_IODBC" = "yes"; then +- PHP_IODBC=/usr/local +- fi +- PHP_ADD_LIBRARY_WITH_PATH(iodbc, $PHP_IODBC/$PHP_LIBDIR) +- PHP_ADD_INCLUDE($PHP_IODBC/include, 1) +- ODBC_TYPE=iodbc +- ODBC_INCLUDE=-I$PHP_IODBC/include +- ODBC_LFLAGS=-L$PHP_IODBC/$PHP_LIBDIR +- ODBC_LIBS=-liodbc +- AC_DEFINE(HAVE_IODBC,1,[ ]) +- AC_DEFINE(HAVE_ODBC2,1,[ ]) +- AC_MSG_RESULT([$ext_output]) +- fi +-fi +- +-if test -z "$ODBC_TYPE"; then +-PHP_ARG_WITH(esoob,, +-[ --with-esoob[=DIR] Include Easysoft OOB support [/usr/local/easysoft/oob/client]]) +- +- if test "$PHP_ESOOB" != "no"; then +- AC_MSG_CHECKING(for Easysoft ODBC-ODBC Bridge support) +- if test "$PHP_ESOOB" = "yes"; then +- PHP_ESOOB=/usr/local/easysoft/oob/client +- fi +- ODBC_INCDIR=$PHP_ESOOB/include +- ODBC_LIBDIR=$PHP_ESOOB/$PHP_LIBDIR +- ODBC_LFLAGS=-L$ODBC_LIBDIR +- ODBC_INCLUDE=-I$ODBC_INCDIR +- ODBC_LIBS=-lesoobclient +- ODBC_TYPE=esoob +- AC_DEFINE(HAVE_ESOOB,1,[ ]) +- AC_MSG_RESULT([$ext_output]) +- fi +-fi + + if test -z "$ODBC_TYPE"; then + PHP_ARG_WITH(unixODBC,, +@@ -426,56 +30,6 @@ + fi + fi + +-if test -z "$ODBC_TYPE"; then +-PHP_ARG_WITH(dbmaker,, +-[ --with-dbmaker[=DIR] Include DBMaker support]) +- +- if test "$PHP_DBMAKER" != "no"; then +- AC_MSG_CHECKING(for DBMaker support) +- if test "$PHP_DBMAKER" = "yes"; then +- # find dbmaker's home directory +- DBMAKER_HOME=`grep "^dbmaker:" /etc/passwd | $AWK -F: '{print $6}'` +- +- # check DBMaker version (from 5.0 to 2.0) +- DBMAKER_VERSION=5.0 +- +- while test ! -d $DBMAKER_HOME/$DBMAKER_VERSION -a "$DBMAKER_VERSION" != "2.9"; do +- DM_VER=`echo $DBMAKER_VERSION | sed -e 's/\.//' | $AWK '{ print $1-1;}'` +- MAJOR_V=`echo $DM_VER | $AWK '{ print $1/10; }' | $AWK -F. '{ print $1; }'` +- MINOR_V=`echo $DM_VER | $AWK '{ print $1%10; }'` +- DBMAKER_VERSION=$MAJOR_V.$MINOR_V +- done +- +- if test "$DBMAKER_VERSION" = "2.9"; then +- PHP_DBMAKER=$DBMAKER_HOME +- else +- PHP_DBMAKER=$DBMAKER_HOME/$DBMAKER_VERSION +- fi +- fi +- +- ODBC_INCDIR=$PHP_DBMAKER/include +- ODBC_LIBDIR=$PHP_DBMAKER/$PHP_LIBDIR +- ODBC_INCLUDE=-I$ODBC_INCDIR +- ODBC_LFLAGS=-L$ODBC_LIBDIR +- ODBC_INCLUDE=-I$ODBC_INCDIR +- ODBC_LIBS="-ldmapic -lc" +- ODBC_TYPE=dbmaker +- +- AC_DEFINE(HAVE_DBMAKER,1,[Whether you want DBMaker]) +- +- if test "$ext_shared" = "yes"; then +- AC_MSG_RESULT([yes (shared)]) +- ODBC_LIBS="-ldmapic -lc -lm" +- ODBC_SHARED="odbc.la" +- else +- AC_MSG_RESULT([yes (static)]) +- PHP_ADD_LIBRARY_WITH_PATH(dmapic, $ODBC_LIBDIR) +- PHP_ADD_INCLUDE($ODBC_INCDIR) +- ODBC_STATIC="libphpext_odbc.la" +- fi +- fi +-fi +- + dnl + dnl Extension setup + dnl Copied: csw/mgar/pkg/php5/trunk/files/pdopgsql.diff (from rev 13494, csw/mgar/pkg/php5/trunk/extensions/php5_pdopgsql/files/pdopgsql.diff) =================================================================== --- csw/mgar/pkg/php5/trunk/files/pdopgsql.diff (rev 0) +++ csw/mgar/pkg/php5/trunk/files/pdopgsql.diff 2011-02-28 03:03:58 UTC (rev 13495) @@ -0,0 +1,13 @@ +--- php-5.2.6/ext/pdo_pgsql/config.m4.orig 2009-02-19 15:57:33.757262166 -0600 ++++ php-5.2.6/ext/pdo_pgsql/config.m4 2009-02-19 15:58:15.092308743 -0600 +@@ -13,8 +13,8 @@ + + AC_MSG_CHECKING(for pg_config) + for i in $PHP_PDO_PGSQL $PHP_PDO_PGSQL/bin /usr/local/pgsql/bin /usr/local/bin /usr/bin ""; do +- if test -x $i/pg_config; then +- PG_CONFIG="$i/pg_config" ++ if test -x $i/pg_config32; then ++ PG_CONFIG="$i/pg_config32" + break; + fi + done Copied: csw/mgar/pkg/php5/trunk/files/pgsql.diff (from rev 13494, csw/mgar/pkg/php5/trunk/extensions/php5_pgsql/files/pgsql.diff) =================================================================== --- csw/mgar/pkg/php5/trunk/files/pgsql.diff (rev 0) +++ csw/mgar/pkg/php5/trunk/files/pgsql.diff 2011-02-28 03:03:58 UTC (rev 13495) @@ -0,0 +1,13 @@ +--- php-5.2.6/ext/pgsql/config.m4.orig 2009-02-25 11:46:48.919725515 -0600 ++++ php-5.2.6/ext/pgsql/config.m4 2009-02-25 11:48:01.054898559 -0600 +@@ -11,8 +11,8 @@ + + AC_MSG_CHECKING(for pg_config) + for i in $PHP_PGSQL $PHP_PGSQL/bin /usr/local/pgsql/bin /usr/local/bin /usr/bin ""; do +- if test -x $i/pg_config; then +- PG_CONFIG="$i/pg_config" ++ if test -x $i/pg_config32; then ++ PG_CONFIG="$i/pg_config32" + break; + fi + done This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Mon Feb 28 04:10:45 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Mon, 28 Feb 2011 03:10:45 +0000 Subject: [csw-devel] SF.net SVN: gar:[13496] csw/mgar/pkg/php5/trunk/Makefile Message-ID: Revision: 13496 http://gar.svn.sourceforge.net/gar/?rev=13496&view=rev Author: bdwalton Date: 2011-02-28 03:10:44 +0000 (Mon, 28 Feb 2011) Log Message: ----------- php5/trunk: de-dup a few descriptions Modified Paths: -------------- csw/mgar/pkg/php5/trunk/Makefile Modified: csw/mgar/pkg/php5/trunk/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/Makefile 2011-02-28 03:03:58 UTC (rev 13495) +++ csw/mgar/pkg/php5/trunk/Makefile 2011-02-28 03:10:44 UTC (rev 13496) @@ -215,7 +215,7 @@ RUNTIME_DEP_PKGS_CSWphp5pdo = CSWphp5 CATALOGNAME_CSWphp5pdomysql = php5_pdomysql -SPKG_DESC_CSWphp5pdomysql = A MySQL specific database access abstraction module for PHP applications +SPKG_DESC_CSWphp5pdomysql = A MySQL specific database access abstraction module for PHP applications (pdo version) RUNTIME_DEP_PKGS_CSWphp5pdomysql = CSWphp5 CSWmysql5rt CSWzlib CSWphp5pdo CATALOGNAME_CSWphp5pdoodbc = php5_pdoodbc @@ -223,11 +223,11 @@ RUNTIME_DEP_PKGS_CSWphp5pdoodbc = CSWphp5 CSWunixodbc CSWphp5pdo CATALOGNAME_CSWphp5pdopgsql = php5_pdopgsql -SPKG_DESC_CSWphp5pdopgsql = A PgSQL specific database access abstraction module for PHP applications +SPKG_DESC_CSWphp5pdopgsql = A PgSQL specific database access abstraction module for PHP applications (pdo version) RUNTIME_DEP_PKGS_CSWphp5pdopgsql = CSWphp5 CSWlibpq CSWphp5pdo CATALOGNAME_CSWphp5pdosqlite = php5_pdosqlite -SPKG_DESC_CSWphp5pdosqlite = A Sqlite specific database access abstraction module for PHP applications +SPKG_DESC_CSWphp5pdosqlite = A Sqlite specific database access abstraction module for PHP applications (pdo version) RUNTIME_DEP_PKGS_CSWphp5pdosqlite = CSWphp5 CSWphp5pdo CATALOGNAME_CSWphp5pgsql = php5_pgsql This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Mon Feb 28 04:41:35 2011 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Mon, 28 Feb 2011 03:41:35 +0000 Subject: [csw-devel] SF.net SVN: gar:[13497] csw/mgar/pkg/php5/trunk/Makefile Message-ID: Revision: 13497 http://gar.svn.sourceforge.net/gar/?rev=13497&view=rev Author: bdwalton Date: 2011-02-28 03:41:35 +0000 (Mon, 28 Feb 2011) Log Message: ----------- php5/trunk: start recording build dependencies Modified Paths: -------------- csw/mgar/pkg/php5/trunk/Makefile Modified: csw/mgar/pkg/php5/trunk/Makefile =================================================================== --- csw/mgar/pkg/php5/trunk/Makefile 2011-02-28 03:10:44 UTC (rev 13496) +++ csw/mgar/pkg/php5/trunk/Makefile 2011-02-28 03:41:35 UTC (rev 13497) @@ -83,6 +83,8 @@ PACKAGES += CSWphp5xsl PACKAGES += CSWphp5zip +BUILD_DEP_PKGS += CSWlibgdbm-dev + CATALOGNAME_CSWphp5 = php5 SPKG_DESC_CSWphp5 = A High-Level Scripting Language This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.