--- config-manager-0.4.orig/Makefile.am +++ config-manager-0.4/Makefile.am @@ -36,7 +36,7 @@ cm_LDADD = @LIBGETOPT@ EXTRA_DIST = \ - cm.py \ + cm.py \ HOWTO \ sample-config.txt \ setup.py \ --- config-manager-0.4.orig/Makefile.in +++ config-manager-0.4/Makefile.in @@ -254,7 +254,7 @@ cm_LDADD = @LIBGETOPT@ EXTRA_DIST = \ - cm.py \ + cm.py \ HOWTO \ sample-config.txt \ setup.py \ --- config-manager-0.4.orig/debian/README.Debian +++ config-manager-0.4/debian/README.Debian @@ -0,0 +1,34 @@ +config-manager for Debian +------------------------- + +The semantics for 'cm update' differ somewhat from the original +upstream version. In past versions the following sequence would fail: + + vi config + + cm build config + + vi config # add another path + + cm build config + # cm barfs due to existing paths + + cm update config + # new path isn't built + +Once you had modified the config, you could neither build nor update +it. Now though, the following sequence *DOES* work (cleared with +upstream): + + vi config + + cm build config + + vi config # add another (non-nested path) + + cm update config + +This change will eventually be incorporated upstream but feedback +would be welcome. + + -- Anand Kumria , Thu, 11 Aug 2005 02:24:37 +1000 --- config-manager-0.4.orig/debian/changelog +++ config-manager-0.4/debian/changelog @@ -0,0 +1,154 @@ +config-manager (0.4-2.2) unstable; urgency=medium + + * Non-maintainer upload. + * Build using dh-python instead of python-support. This also fixes a + reproducibility issue due to umask variations. Closes: #786126 + * Use dh-autoreconf to do retooling at every build. Closes: #727346 + + -- Mattia Rizzolo Sat, 12 Dec 2015 23:59:00 +0000 + +config-manager (0.4-2.1) unstable; urgency=low + + * Non-maintainer upload. + * Fix FTBFS with gcc 4.7 by fixing missing includes. + Thanks to Cyril Brulebois for the patch. (Closes: #667141) + * Fix syntax error in config_manager/implementations/svn_vcs.py + (Closes: #572808) (LP: #453349) + + -- Salvatore Bonaccorso Wed, 09 May 2012 22:59:05 +0200 + +config-manager (0.4-2) unstable; urgency=low + + * Fix debian/copyright to more comprehensively list copyright holders. + + -- Robert Collins Sun, 30 Aug 2009 07:29:12 +1000 + +config-manager (0.4-1) unstable; urgency=low + + * New upstream, release. (Closes: #544151) + + -- Robert Collins Sat, 29 Aug 2009 18:00:08 +1000 + +config-manager (0.3-3.1ubuntu2) intrepid; urgency=low + + * Don't depend on pybaz, as it has been removed. Make a failure to import + pybaz non-fatal, to allow for local installs. (LP: #235952) + + -- James Westby Wed, 08 Oct 2008 13:20:22 +0100 + +config-manager (0.3-3.1ubuntu1) intrepid; urgency=low + + * Merge from debian unstable, remaining changes: + + setup.py: set #!/usr/bin/python and not #!/usr/bin/python2.4 + + Modify Maintainer value to match the DebianMaintainerField + specification. + + debian/control: Make the package independent of the python version. + * debian/control: + - Dropping support for baz/bazaar, becasue pybaz was removed from hardy + (Removal Request: https://bugs.launchpad.net/ubuntu/+source/bazaar/+bug/214955) + + -- Stephan Hermann Mon, 05 May 2008 12:45:41 +0200 + +config-manager (0.3-3.1) unstable; urgency=medium + + * Non-maintainer upload. + * Fix FTBFS with GCC 4.3 (Closes: #413485). + + -- Luk Claes Sat, 08 Mar 2008 15:11:32 +0000 + +config-manager (0.3-3ubuntu2) hardy; urgency=low + + * gcc4.3 fix upload: + - src/cm.cc: added #include + - src/ConfigSource.cc: added #include + - src/Directory.cc: added #include + - libgetopt/src/OptionSet.cc: added #include + Thanks to Martin Michlmayr + Patch taken from http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=413485 + * setup.py: set #!/usr/bin/python and not #!/usr/bin/python2.4 + + -- Stephan Hermann Thu, 24 Jan 2008 19:08:57 +0100 + +config-manager (0.3-3ubuntu1) feisty; urgency=low + + * Make the package independent of the python version. + + -- Matthias Klose Sun, 14 Jan 2007 23:42:59 +0100 + +config-manager (0.3-3) unstable; urgency=low + + * Update to revision 159 of the python side, which brings in the + config-manager.implementations library (Closes: #366598) + * Remove extraneous File:: qualifier (Closes: #375866) + * Fixup spelling mistake (Closes: #363213) + * Update copyright with new location + * Note that config-manager is GPLv2 (or later) + * Move to priority 'extra' as both bazaar and pybaz have + + -- Anand Kumria Thu, 6 Jul 2006 10:15:25 +1000 + +config-manager (0.3-2) unstable; urgency=low + + * Use correct version of python (2.4) + + -- Anand Kumria Sat, 31 Dec 2005 15:22:26 +1100 + +config-manager (0.3-1) unstable; urgency=low + + * Update the python config-manage portion + + -- Anand Kumria Sat, 31 Dec 2005 14:23:03 +1100 + +config-manager (0.2-1) unstable; urgency=low + + * Import some changes from upstream unreleased branch so that the + Python version of config manager works as intended + + -- Anand Kumria Mon, 24 Oct 2005 13:01:11 +1000 + +config-manager (0.1p123-1) unstable; urgency=low + + * Many new upstream releases + * Incorporate new python version of config manager + + -- Anand Kumria Thu, 20 Oct 2005 07:24:20 +1000 + +config-manager (0.1p83-3) unstable; urgency=low + + * Annual package cleanup + * Update upstream location (Closes: #308262) + * Apply patches, written by Andreas Jochens, so that building with gcc-4.0 + succeeds (Closes: #258581, #294288) + * Apply Jamie Wilkinson's patches to remove bashisms (Closes: #289102) + * Allow (simple) changes to the config (Closes: #288887) + * Rebuild for C++ 4.0 ABI transition + + -- Anand Kumria Thu, 11 Aug 2005 02:24:37 +1000 + +config-manager (0.1p83-2) unstable; urgency=low + + * Update description. + + -- Anand Kumria Sun, 8 Aug 2004 19:15:10 +1000 + +config-manager (0.1p83-1) unstable; urgency=low + + * New upstream release + * Also support Subversion (SVN) + + -- Anand Kumria Mon, 19 Jul 2004 22:27:50 +1000 + +config-manager (0.1p53-2) unstable; urgency=low + + * make ./configure executable. + * reduce the diff by not including pristine trees + + -- Anand Kumria Wed, 14 Jan 2004 02:46:24 +1100 + +config-manager (0.1p53-1) unstable; urgency=low + + * Initial Release. + * Merry Christmas Robert. + + -- Anand Kumria Thu, 25 Dec 2003 00:13:26 +1100 + --- config-manager-0.4.orig/debian/cm.1 +++ config-manager-0.4/debian/cm.1 @@ -0,0 +1,45 @@ +.TH "CONFIG-MANAGER" "1" +.SH "NAME" +cm \(em Work with configs. +.SH "SYNOPSIS" +.PP +\fBcm\fR [\fB-a\fP] [\fB-v\fP] [\fB-d\fP] [\fB-s\fP] [\fB-p\fP] [\fB-r\fP] [\fB-n\fP] +.SH "DESCRIPTION" +.PP +This manual page documents briefly the \fBcm\fR tool. +.PP +This manual page was written for the \fBDebian\fP distribution +because the original program does not have a manual page. +.PP +\fBcm\fR is a program that manages +directory trees. The components of a directory tree are specified +by a recipe (also known as a config). +.PP +A recipe can specify that the directories components should +be retrieved via Arch, CVS, HTTP or FTP as appropriate. +.SH "OPTIONS" +.PP +These programs follow the usual GNU command line syntax, +with long options starting with two dashes (`\-'). A summary of +options is included below. For a complete description, see the +\fBInfo\fP files. +.IP "\fB-h\fP \fB\-\-help\fP " 10 +Show summary of options. +.IP "\fB-v\fP \fB\-\-version\fP " 10 +Show version of program. +.SH "SEE ALSO" +.PP +tla (1) +.SH "AUTHOR" +.PP +This manual page was written by Anand Kumria wildfire@progsoc.org for +the \fBDebian\fP system (but may be used by others). Permission is +granted to copy, distribute and/or modify this document under +the terms of the GNU General Public License, Version 2 any +later version published by the Free Software Foundation. + +.PP +On Debian systems, the complete text of the GNU General Public +License can be found in /usr/share/common-licenses/GPL. + +.\" created by instant / docbook-to-man, Sun 30 Aug 2009, 07:31 --- config-manager-0.4.orig/debian/cm.sh +++ config-manager-0.4/debian/cm.sh @@ -0,0 +1,42 @@ +#!/bin/bash + +# config-manager is transitioning from being a C++ binary +# to being a Python script. Unfortunately this means that +# not all features of the C++ binary are supported by the +# Python version. + +# Here we attempt to detect if the features being requested +# only require the Python version otherwise we default to +# using the binary + +# the last argument is supposed to be the config +if [ -r $BASH_ARGV ]; then + CMFILE=$BASH_ARGV +fi + +if [ "X$CMFILE" == "X" ]; then + # It ain't a file, so we'll punt and invoke the Python one + exec /usr/lib/config-manager/cm.py "$@" +fi + +# okay, we have a config file (supposedly) +# let's strip out any comments first +TMPCMFILE=`/bin/tempfile` +if [ $? -ne 0 ]; then + printf "$0: failed to create temporary file\n" + exit 1 +fi +grep -v "^#" $CMFILE >> $TMPCMFILE + +# now, with our temporary file, if we only +# find 'http' we should be able to use the +# python version, otherwise it'll be the C++ one +COUNT=`grep -c -v http $TMPCMFILE` + +/bin/rm -f $TMPCMFILE + +if [ "X$COUNT" == "X0" ]; then + exec /usr/lib/config-manager/cm.py "$@" +else + exec /usr/lib/config-manager/cm.bin "$@" +fi --- config-manager-0.4.orig/debian/compat +++ config-manager-0.4/debian/compat @@ -0,0 +1 @@ +7 --- config-manager-0.4.orig/debian/config-manager.manpages +++ config-manager-0.4/debian/config-manager.manpages @@ -0,0 +1 @@ +debian/cm.1 --- config-manager-0.4.orig/debian/control +++ config-manager-0.4/debian/control @@ -0,0 +1,25 @@ +Source: config-manager +Section: devel +Priority: extra +Maintainer: Robert Collins +Build-Depends: debhelper (>= 7.0.0), python-dev, python (>= 2.4), bzr (>=0.6), dh-python, + libgetopt++-dev, docbook-to-man, dh-autoreconf +Standards-Version: 3.8.3.0 + +Package: config-manager +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}, bzr (>= 0.6), python (>= 2.4) +Description: manage directories with Arch, Bazaar, CVS, HTTP, FTP and/or Subversion + config-manager is designed to manage directory trees. The components of + a directory may be specified by a location from any of: + . + - Arch + - Bazaar (bzr) + - CVS + - FTP + - HTTP + - Subversion (svn) + . + These directory trees are described by recipes (also known as + configs) and are typically used to build software although nothing + within config-manager prevents their use in, for example, web sites. --- config-manager-0.4.orig/debian/copyright +++ config-manager-0.4/debian/copyright @@ -0,0 +1,72 @@ +This package was debianized by Anand Kumria on +Thu, 25 Dec 2003 00:09:41 +1100. + +It was downloaded from +using Arch and specifying a particular branch. The branchs were: +config-manager: rbtcollins@hotmail.com--barch/config-manager--devo--0.1 +libgetopt: rbtcollins@hotmail.com--barch/libgetoptplusplus--own-getopt--1.0 + +More recently, (August 2005) the upstream location has changed to +. + +Once again, (July 2006), the upstream location has changed. It is now at +. + +Its current home (as of 2008) is . + +Let's hope it stays there. + +Upstream Authors: + Robert Collins + James Blackwell + Elliot Murphy + Rob Weir + Jamie Wilkinson + +Copyright 2003-2009 Robert Collins + +src/ConfigSVNSource.* are (C) 2004 Rob Weir + +lib/config_manager/implementations/svn_vcs.py and +lib/config_manager/implementations/tests/test_svn_vcs_implementation.py +are (C) 2005 Jamie Wilkinson + +tests/TestUtil.py is (C) 2004 Canonical Limited + +config-manager itself is licensed under the GNU General Public Licence (version +2 or later). A copy of which can be found on Debian systems at the location +/usr/share/common-licenses/GPL-2 + +optparse.py, which is a modified form of the python command line parser +is copyright by: +Copyright (c) 2001-2003 Gregory P. Ward. All rights reserved. +Copyright (c) 2002-2003 Python Software Foundation. All rights reserved. + +And licenced under the standard Python Software Foundation licence: + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * 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. + + * Neither the name of the author nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "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 OR +CONTRIBUTORS 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. --- config-manager-0.4.orig/debian/dirs +++ config-manager-0.4/debian/dirs @@ -0,0 +1,2 @@ +usr/bin +usr/lib/config-manager --- config-manager-0.4.orig/debian/docs +++ config-manager-0.4/debian/docs @@ -0,0 +1,3 @@ +README +HOWTO +sample-config.txt --- config-manager-0.4.orig/debian/manpage.sgml +++ config-manager-0.4/debian/manpage.sgml @@ -0,0 +1,158 @@ + manpage.1'. You may view + the manual page with: `docbook-to-man manpage.sgml | nroff -man | + less'. A typical entry in a Makefile or Makefile.am is: + +manpage.1: manpage.sgml + docbook-to-man $< > $@ + + + The docbook-to-man binary is found in the docbook-to-man package. + Please remember that if you create the nroff version in one of the + debian/rules file targets (such as build), you will need to include + docbook-to-man in your Build-Depends control field. + + --> + + + Anand"> + Kumria"> + + December 25, 2003"> + + 1"> + wildfire@progsoc.org"> + + CONFIG-MANAGER"> + + + Debian"> + GNU"> + GPL"> +]> + + + +
+ &dhemail; +
+ + &dhfirstname; + &dhsurname; + + + 2003 + &dhusername; + + &dhdate; +
+ + &dhucpackage; + + &dhsection; + + + &command; + + Work with configs. + + + + cm + + + + + + + + + + + + DESCRIPTION + + This manual page documents briefly the cm tool. + + This manual page was written for the &debian; distribution + because the original program does not have a manual page. + + &command; is a program that manages + directory trees. The components of a directory tree are specified + by a recipe (also known as a config). + + A recipe can specify that the directories components should + be retrieved via Arch, CVS, HTTP or FTP as appropriate. + + + + OPTIONS + + These programs follow the usual &gnu; command line syntax, + with long options starting with two dashes (`-'). A summary of + options is included below. For a complete description, see the + Info files. + + + + + + + + Show summary of options. + + + + + + + + Show version of program. + + + + + + SEE ALSO + + tla (1) + + + + AUTHOR + + This manual page was written by &dhusername; &dhemail; for + the &debian; system (but may be used by others). Permission is + granted to copy, distribute and/or modify this document under + the terms of the &gnu; General Public License, Version 2 any + later version published by the Free Software Foundation. + + + On Debian systems, the complete text of the GNU General Public + License can be found in /usr/share/common-licenses/GPL. + + + +
+ + + + --- config-manager-0.4.orig/debian/rules +++ config-manager-0.4/debian/rules @@ -0,0 +1,103 @@ +#!/usr/bin/make -f +# -*- makefile -*- +# Derived from the sample debian/rules that uses debhelper. +# GNU copyright 1997 to 1999 by Joey Hess. + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + + +# These are used for cross-compiling and for saving the configure script +# from having to guess our platform (since we know it already) +DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) + + +CFLAGS = -Wall -g + +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + CFLAGS += -O0 +else + CFLAGS += -O2 +endif +ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) + INSTALL_PROGRAM += -s +endif + +config.status: configure + dh_testdir + dh_autoreconf + # must make it executable + chmod +x ./configure + + # Add here commands to configure the package. + LIBGETOPT=/usr/lib/libgetopt++.la CFLAGS="$(CFLAGS)" ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info + + +build: build-stamp + +build-stamp: config.status + dh_testdir + + # Add here commands to compile the package. + $(MAKE) + /usr/bin/docbook-to-man debian/manpage.sgml > debian/cm.1 + + touch build-stamp + +clean: + dh_testdir + dh_testroot + rm -f build-stamp + # Add here commands to clean up after the build process. + -$(MAKE) distclean + rm -fr build + + dh_autoreconf_clean + dh_clean + +install: build + dh_testdir + dh_testroot + dh_prep + dh_installdirs + + $(MAKE) install DESTDIR=$(CURDIR)/debian/config-manager + # for now, remove libgetopt + rm -rf $(CURDIR)/debian/config-manager/usr/lib/libgetopt++* + rm -rf $(CURDIR)/debian/config-manager/usr/include/getopt++ + -rmdir $(CURDIR)/debian/config-manager/usr/include + # rename the two cm backends into place. + mv $(CURDIR)/debian/config-manager/usr/bin/cm $(CURDIR)/debian/config-manager/usr/lib/config-manager/cm.bin + mv $(CURDIR)/debian/config-manager/usr/bin/cm.py $(CURDIR)/debian/config-manager/usr/lib/config-manager/cm.py + # install our shell script + cp debian/cm.sh $(CURDIR)/debian/config-manager/usr/bin/cm + chmod 755 $(CURDIR)/debian/config-manager/usr/bin/cm + + +# Build architecture-independent files here. +binary-indep: build install +# We have nothing to do by default. + +# Build architecture-dependent files here. +binary-arch: build install + dh_testdir + dh_testroot + dh_installchangelogs + dh_installdocs + dh_installexamples + dh_install + dh_installman + dh_link + dh_strip + dh_compress + dh_fixperms + dh_python2 + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install --- config-manager-0.4.orig/debian/source.lintian-overrides +++ config-manager-0.4/debian/source.lintian-overrides @@ -0,0 +1 @@ +config-manager source: debian-rules-ignores-make-clean-error --- config-manager-0.4.orig/lib/config_manager/implementations/svn_vcs.py +++ config-manager-0.4/lib/config_manager/implementations/svn_vcs.py @@ -42,9 +42,9 @@ print "svn checkout %s %s" % (url, to) os.system("svn checkout %s %s" % (url, to)) - def update(self, location): - print "svn update %s" % (location,) - os.system("svn update %s" % (location,) + def update(self, location): + print "svn update %s" % (location,) + os.system("svn update %s" % (location,)) def get_test_repo(self): return SubversionVCSRepo() --- config-manager-0.4.orig/src/ConfigArchSource.cc +++ config-manager-0.4/src/ConfigArchSource.cc @@ -25,6 +25,7 @@ #include #include #include +#include #include "Path.h" using namespace std; --- config-manager-0.4.orig/src/cm.cc +++ config-manager-0.4/src/cm.cc @@ -30,6 +30,7 @@ #include #include #include +#include #include "ConfigSource.h" #include "ConfigArchSource.h" #include "FileSystemVisitor.h"