cvs-buildpackage-5.23/0000755000232200023220000000000011070011614015024 5ustar pbuilderpbuildercvs-buildpackage-5.23/cvs-upgrade.10000644000232200023220000002370511005261404017337 0ustar pbuilderpbuilder.\" Hey, Emacs! This is an -*- nroff -*- source file. .\" Copyright (c) 1997 Manoj Srivastava .\" .\" This is free documentation; 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. .\" .\" The GNU General Public License's references to "object code" .\" and "executables" are to be interpreted as the output of any .\" document formatting or typesetting system, including .\" intermediate and printed output. .\" .\" This manual 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 manual; if not, write to the Free .\" Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA .\" 02111-1307, USA. .\" .\" $Id: cvs-upgrade.1,v 1.18 2002/11/09 02:46:53 srivasta Exp $ .\" .TH CVS\-UPGRADE 1 "May 13 1999" "Debian" "Debian GNU/Linux manual" .SH NAME cvs\-upgrade \- upgrade a debian source package kept in a CVS repository .SH SYNOPSIS .B cvs\-upgrade .I [options] .B .B .B [] .SH DESCRIPTION This manual page explains the Debian .B "cvs\-upgrade" utility, which is used to upgrade Debian source packages in a .I CVS repository. It expect a properly conditioned new upstream sources in the .I cvs-buildpackage work directory .PP The upstream sources are imported to the vendor branch and tagged .I upstream_version_ with all dots translated to underscores. At this point the .B cvs\-upgrade utility pauses automatic actions, since manual intervention is required to resolve any conflicts that may have occurred. It reminds the user about checking out the sources, resolving conflicts, and tagging the debianized sources, using .I debian_version_- with all dots translated to underscores. .PP Please note that this command does not actually change the working directory, or any checked out copies. If you do not have a working directory, you may simply do the following manually: .RS 2 .B cvs co -jupstream_version_ -jupstream_version_ .RE .PP If you already have a checked out working directory, please do: .RS 2 .B cvs update -d -jupstream_version_ -jupstream_version__ .RE .\" and do not forget to run .\" .B cvs-co-upgrade. .PP .B cvs-upgrade expects the package name, upstream version, and, if relevant, the Debian revision on the command line. It also expects to find a properly conditioned new upstream source archive, in .orig.tar.gz format, in the .I cvs-buildpackage working directory. Please note that the cvs-buildpackage work directory referred to here is the scratch directory where this program works, not the directory that the human uses to work in. .PP .B cvs\-upgrade reads the same config file .I /etc/cvsdeb.conf as the the other cvs-* utilities do. People may use of the dry-run option to inspect the steps this utility takes. .PP .\" Please look at .\" .B cvs\-co\-upgrade .\" to see how to handle files and directories that may have been added to .\" or deleted from the upstream sources. Combined with the companion utilities .B cvs\-buildpackage and .B cvs\-inject, this provides an infrastructure to facilitate the use of .B CVS by Debian maintainers. This allows one to keep separate CVS branches of a package for .I stable, .I unstable, and possibly .I experimental distributions, along with the other benefits of a version control system. .SH CAVEATS Please note that the current behaviour of .B cvs\-upgrade is to ignore files that match the default list of file name patterns to be ignored (this is built into cvs); and that any .B .cvsignore files in the upstream sources shall be honoured. This should be fine as long as upstream sources do not include files that match CVS ignore patterns and yet should be in the sources. The current list of ignored file name patterns is: .RS .B RCS SCCS CVS CVS.adm RCSLOG cvslog.* tags TAGS .make.state .B .nse_depinfo *~ #* .#* ,* _$* *$ *.old *.bak *.BAK *.orig *.rej .del-* .B *.a *.olb *.o *.obj *.so *.exe *.Z *.elc *.ln core .RE .PP If you wish to modify this behaviour, there are ways to do this (you should see .B CVS documentation). .TP .B o) The per-repository list in .I `$CVSROOT/CVSROOT/cvsignore' is appended to the list, if that file exists. .TP .B o) The per-user list in .I `.cvsignore' in your home directory is appended to the list, if it exists. .TP .B o) Any entries in the environment variable .I $CVSIGNORE is appended to the list. .PP In any of the places listed above, a single exclamation mark .B (`!') clears the ignore list. This can be used if you want to store any file which normally is ignored by CVS. Also, any .I .cvsignore file found in the source directory is also honoured. .PP .SH OPTIONS .TP 20 .B \-h Print out a usage message. .TP .B \-m If present, this option directs this program to include the latest debian changelog, if any, into the commit message. This overrides the environment variable .B CVSDEB_USE_CHANGELOG .TP .BR \-M The name of the CVS module. This argument overrides the settings in the environment variable .B CVSDEB_MODULE. There is no corresponding config file variable. .TP .BR \-F There are two things .B CVS may choke on .I symbolic links and .I CVS directories in the source tree. Also, there are times when one may not want to honour the upstream .I .cvsignore files. Without this option, the .B cvs-upgrade program shall exit with an error message. This option causes .B cvs-upgrade to ask whether you want to delete the offending files. If you answer y, it removes them and continues; else it shall exit with an error message. This argument overrides the settings in the environment variable .B CVSDEB_FORCECLEAN, which in turn overrides the setting in the configuration file, .B conf_forceclean. .TP .B \-T The CVS tag to use for exporting sources, rather than constructing one from the version. This assumes you know what you are doing. .TP .B \-U The CVS tag to use for the upstream tag, rather than constructing one from the upstream version. This assumes you know what you are doing. .TP .BR \-x The name of the default CVS prefix. This argument overrides the settings in the environment variable .B CVSDEB_PREFIX, which in turn overrides the setting in the configuration file, .B conf_prefix. .TP .B \-R Root of the original sources archive. We expect to find the .I _.orig.tar.gz file under .I /package\ name>/ unless the cvs-buildpackage work directory has been set, or we want to export the original sources from the vendor branch of the .I CVS tree. If the cvs-buildpackage work directory is set anywhere, (command line, configuration file, environment variable), the root directory value is ignored, since we only need the root directory to set defaults for the work directory. This argument overrides the settings in the environment variable .B CVSDEB_ROOTDIR, and the configuration file variable .B conf_rootdir. Please note that the cvs-buildpackage work directory referred to here is the scratch directory where this program works, not the directory that the human uses to work in. This should probably not be a sub dir of .B CVSROOT, since cvs shall refuse to export packages there, and the script shall fail. .TP .B \-W The working directory, into which the sources will be exported out of CVS and which should contain the original .I _.orig.tar.gz Please note that it is not essential to have the original sources, as this script will check out the vendor branch version tagged as .B upstream_version_ (without the Debian revision). Setting this variable overrides the settings for the root directory. This argument also overrides the settings in the environment variable .B CVSDEB_WORKDIR, and in the configuration file variable .B conf_workdir. This should probably not be a sub dir of .B CVSROOT, since cvs shall refuse to export packages there, and the script shall fail. .TP .B \-d Turn on debugging output. This lists the version numbers, the work and root directories, as well as the CVS tag used to export the sources. This overrides the .I DEBUG variable in the configuration file. .TP .B \-ctp Include .IB package _ at the start of the CVS tag. This overrides the .B CVSDEB_PACKAGEINTAG environment variable and the .B conf_forcetag configuration file option. The default is not to include the prefix. .TP .B \-n The no exec (or dry-run) option, causing .B cvs\-upgrade to print out all actions that would be taken without actually executing them. .TP .B \-v Make the utility more verbose. .TP .B CVSDEB_IMPORTSUBSTMODE You are also allowed to specify an environment variable, .B CVSDEB_IMPORTSUBSTMODE, that overrides the default substitution option of -ko -d. This is useful when you want to import a package that has a bunch of binary files in the source tree (like emacs or rscheme). .SH FILES Apart from the runtime options, .B cvs\-upgrade also looks for site\-wide defaults in the file .I /etc/cvsdeb.conf. After that, it looks for and reads .I ~/.cvsdeb.conf The default configuration allows there to be a site-wide override for the root or the cvs-buildpackage working directories on the site, but the .I cvsdeb.conf files are actually Bourne shell snippets, and any legal shell directives may be included in there. .B Note: Caution is urged with this file, since you can totally change the way that the script behaves by suitable editing this file. .SH "SEE ALSO" .BR cvs-buildpackage (1), .BR cvs-inject (1), .\" .BR cvs-co-upgrade (1), .BR cvsdeb.conf (5), .BR cvs (1). .SH AUTHOR This manual page was written Manoj Srivastava , for the Debian GNU/Linux system. cvs-buildpackage-5.23/get-orig.sh0000755000232200023220000000242111005261404017101 0ustar pbuilderpbuilder#!/bin/bash # -*- Mode: Sh -*- # get-orig.sh --- # Author : Marc Haber # Last Modified By : Manoj Srivastava # Last Modified On : Tue Dec 24 00:24:28 2002 # Last Machine Used: glaurung.green-gryphon.com # Update Count : 2 # Status : Unknown, Use with caution! # HISTORY : # Description : # Example script to add to the hook to get the original sources # BASEURL="http://your.favorite.debian.mirror/debian" SUFFIX="orig.tar.gz" SECTION="main" POOL="debian" #case $package in # if you have local pools, set here POOL, SECTION or direct SOURCETAR # path for your local packages. #esac if [ -z "$SOURCETAR" ]; then case $POOL in local) SOURCETAR="$BASEURL/localpool/$SECTION/$package/${package}_${upstream_version}.$SUFFIX";; debian) SOURCETAR="$BASEURL/pool/$SECTION/${package:0:1}/$package/${package}_${upstream_version}.$SUFFIX";; *) echo >&2 "ERR: illegal pool defined"; exit 1 ;; esac fi if [ -n "$SOURCETAR" ]; then echo "curl --remote-name $SOURCETAR" if ! curl --remote-name $SOURCETAR; then echo >&2 "ERR: can't download $SOURCETAR" exit 1 fi else echo >&2 "ERR: no original tar ball for ${package}_${upstream_version} is available. Stop." exit 1 fi cvs-buildpackage-5.23/cvs-co-upgrade.10000644000232200023220000001451611005261404017736 0ustar pbuilderpbuilder.\" Hey, Emacs! This is an -*- nroff -*- source file. .\" Copyright (c) 1999 Manoj Srivastava .\" Author : Manoj Srivastava ( srivasta@glaurung.green-gryphon.com ) .\" Created On : Thu May 13 13:59:23 1999 .\" Created On Node : glaurung.green-gryphon.com .\" Last Modified By : Manoj Srivastava .\" Last Modified On : Tue Jan 30 01:48:25 2001 .\" Last Machine Used: glaurung.green-gryphon.com .\" Update Count : 14 .\" Status : Unknown, Use with caution! .\" HISTORY : .\" Description : .\" This is free documentation; 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. .\" .\" The GNU General Public License's references to "object code" .\" and "executables" are to be interpreted as the output of any .\" document formatting or typesetting system, including .\" intermediate and printed output. .\" .\" This manual 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 manual; if not, write to the Free .\" Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA .\" 02111-1307, USA. .\" .\" $Id: cvs-co-upgrade.1,v 1.4 2002/10/29 23:18:43 srivasta Exp $ .\" .TH CVS\-CO\-UPGRADE 1 "May 13 1999" "Debian" "Debian GNU/Linux manual" .SH NAME cvs\-co\-upgrade \- utility for handling deleted and new files during upgrades .SH SYNOPSIS .B cvs\-co\-upgrade .I [options] .B .B .B .SH DESCRIPTION This manual page explains the Debian .B "cvs\-co\-upgrade" utility, which creates cvs commands to handle file deleted and added between two upstream source package versions. It is used to help upgrade the main trunk (or the checked out version) of a Debian source package (and probably any two tar files, for that matter). The program creates a list of cvs commands to that should be applied to the checked out source to take care of new or deleted files in the new upstream source. .PP It expects the package name, the older upstream version number, and the new upstream version on the command line. It also expects to find properly conditioned upstream sources (for both the previous and the new upstream version), in .orig.tar.gz format, in the .I cvs-buildpackage work directory Please note that the cvs-buildpackage work directory referred to here is the scratch directory where this program works, not the directory that the human uses to work in. .PP Given the command .B cvs-co-upgrade foo 0.1.0 0.2.2 It looks for .B foo_0.1.0.orig.tar.gz and .B foo_0.2.2_orig.tar.gz, builds a listing of files on each tarball, diff's them, and outputs the list of .B cvs commands that should be applied in the checked out source. One may then try .B cvs-co-upgrade foo 0.1.0 0.2.2 | sh -s to apply the changes required. .PP .B cvs\-co\-upgrade reads the same config file .I /etc/cvsdeb.conf as the the other cvs-* utilities do. People may use of the dry-run option to inspect the steps this utility takes. .SH OPTIONS .TP 20 .B \-h Print out a usage message. .TP .BR \-M The name of the CVS module. This argument overrides the settings in the environment variable .B CVSDEB_MODULE. There is no corresponding config file variable. .TP .BR \-x The name of the default CVS prefix. This argument overrides the settings in the environment variable .B CVSDEB_PREFIX, which in turn overrides the setting in the configuration file, .B conf_prefix. .TP .B \-R Root of the original sources archive. We expect to find the .I _.orig.tar.gz file under .I /package\ name>/ unless the cvs-buildpackage work directory has been set, or we want to export the original sources from the vendor branch of the .I CVS tree. If the cvs-buildpackage work directory is set anywhere, (command line, configuration file, environment variable), the root directory value is ignored, since we only need the root directory to set defaults for the work directory. This argument overrides the settings in the environment variable .B CVSDEB_ROOTDIR, and the configuration file variable .B conf_rootdir. Please note that the cvs-buildpackage work directory referred to here is the scratch directory where this program works, not the directory that the human uses to work in. .TP .B \-W The working directory, into which the sources will be exported out of CVS and which should contain the original .I _.orig.tar.gz Please note that it is not essential to have the original sources, as this script will check out the vendor branch version tagged as .B upstream_version_ (without the Debian revision). Setting this variable overrides the settings for the root directory. This argument also overrides the settings in the environment variable .B CVSDEB_WORKDIR, and in the configuration file variable .B conf_workdir. .TP .B \-d Turn on debugging output. This lists the version numbers, the work and root directories, as well as the CVS tag used to export the sources. This overrides the .I DEBUG variable in the configuration file. .TP .B \-n The no exec (or dry-run) option, causing .B cvs\-co\-upgrade to print out all actions that would be taken without actually executing them. .TP .B \-v Make the utility more verbose. .SH FILES Apart from the runtime options, .B cvs\-co\-upgrade also looks for site\-wide defaults in the file .I /etc/cvsdeb.conf. After that, it looks for and reads .I ~/.cvsdeb.conf The default configuration allows there to be a site-wide override for the root or the cvs-buildpackage working directories on the site, but the .I cvsdeb.conf files are actually Bourne shell snippets, and any legal shell directives may be included in there. .B Note: Caution is urged with this file, since you can totally change the way that the script behaves by suitable editing this file. .SH "SEE ALSO" .BR cvs-buildpackage (1), .BR cvs-inject (1), .BR cvsdeb.conf (5), .BR cvs (1). .SH AUTHOR This manual page was written Manoj Srivastava , for the Debian GNU/Linux system. cvs-buildpackage-5.23/cvs-inject0000755000232200023220000004454011005261404017030 0ustar pbuilderpbuilder#! /bin/bash # -*- Mode: Sh -*- # cvs-inject --- # Author : Manoj Srivastava ( srivasta@tiamat.datasync.com ) # Created On : Mon May 26 14:23:17 1997 # Created On Node : tiamat.datasync.com # Last Modified By : Manoj Srivastava # Last Modified On : Sun Jun 6 12:11:36 2004 # Last Machine Used: glaurung.internal.golden-gryphon.com # Update Count : 327 # Status : Unknown, Use with caution! # HISTORY : # Description : # $Id: cvs-inject,v 1.41 2003/08/26 08:04:46 srivasta Exp $ # # Make sure we abort on error set -e declare -a argv progname="`basename \"$0\"`" pversion='$Revision: 1.41 $' setq() { # Variable Value Doc string if [ "x$2" = "x" ]; then echo >&2 "$progname: Unable to determine $3" exit 1; else if [ ! "x$Verbose" = "x" ]; then echo "$progname: $3 is $2"; fi eval "$1=\"\$2\""; fi } withecho () { echo " $@" >&2 "$@" } usageversion () { cat >&2 <.dsc Options: -h print this message -F Force removal of CVS directories and symbolic links before import. This should be used with caution!! -m Add a cvs message based on the changelog -M CVS module name. -R Root directory. -T CVS Tag to use -U Upstream tag to use -W Working directory. -d Set Debug Level -n "Dry-run" mode - No action taken, only print commands. -v Make the command verbose -ctp Include _ at start of CVS tag. -x CVS default module prefix. Note that the current behaviour of cvs-inject is to ignore any files that match the default list of file name patterns to be ignored (this is built into cvs); and that any .cvsignore files in the upstream sources shall be honoured. END } # We need a debian source control file if [ $# = 0 ]; then usageversion; exit 1; fi # The defaults rootdir='/usr/local/src/Packages' tmpdir="temp-$progname" docmd='YES' action='withecho' DEBUG=0 VERBOSE=0 # parse Command line # Note that we use `"$@"' to let each command-line parameter expand to a # separate word. The quotes around `$@' are essential! # We need TEMP as the `eval set --' would nuke the return value of getopt. TEMP=$(getopt -a -s bash -o hFmM:R:T:U:W:nvcd:x:c --long ctp,help \ -n 'cvs-inject' -- "$@") if [ $? != 0 ] ; then echo "Terminating..." >&2 ; exit 1 ; fi # Note the quotes around `$TEMP': they are essential! eval set -- "$TEMP" while true ; do case "$1" in -h|--help) usageversion; exit 0 ; shift ;; -F) opt_forceclean=1 ; shift ;; -m) opt_use_changelog=1 ; shift ;; -M) opt_cvsmodule="$2" ; shift 2 ;; -R) opt_rootdir="$2" ; shift 2 ;; -T) opt_tag="$2" ; shift 2 ;; -U) opt_utag="$2" ; shift 2 ;; -W) opt_workdir="$2" ; shift 2 ;; -n) action='echo';docmd='NO' ; shift ;; -v) VERBOSE=1 ; shift ;; -d) opt_DEBUG="$2" ; shift 2 ;; -x) opt_prefix="$2" ; shift 2 ;; -c|--ctp) opt_packageintag=1 ; shift ;; --) shift ; break ;; *) echo >&2 "Internal error!($i)" usageversion; exit 1 ;; esac done for arg in ${1+"$@"}; do case "$arg" in *.dsc) if [ "X$opt_dsc" = "X" ]; then opt_dsc="$arg"; else echo >&2 "I can only deal with one Debian Source Control" echo >&2 "file at a time. I think I already have one " echo >&2 "in $opt_dsc. So, whats this $arg ?" exit 1 fi ;; *) echo >&2 "Unknown argument $arg. I understand only a" echo >&2 "Debian Source Control file name as an argument" usageversion; exit 1 ;; esac done CVS_QUIET="-Q" TAR_QUIET="" if [ $VERBOSE -gt 0 ]; then echo "Initializing ..." CVS_QUIET="-q" TAR_QUIET="v" fi # did the user specify a dsc file? if [ "X$opt_dsc" = "X" ]; then echo "package descscription file needs to be specified" 1>&2 usageversion; exit 1 fi if [ "X$CVSROOT" = "X" ]; then echo "You should have set the CVSROOT env variable." 1>&2 usageversion; exit 1 fi # can we read the dsc file? if [ ! -r $opt_dsc ]; then echo "package descscription file $opt_dsc is not available" 1>&2 usageversion; exit 1 fi # Load site defaults and over rides. if [ -f /etc/cvsdeb.conf ]; then . /etc/cvsdeb.conf fi # Load user defaults and over rides. if [ -f ~/.cvsdeb.conf ]; then . ~/.cvsdeb.conf fi # If asked to debug on command line, that's what we get if [ ! "x$opt_DEBUG" = "x" ]; then DEBUG="$opt_DEBUG" fi if [ "$DEBUG" -gt 0 ]; then CVS_QUIET="" TAR_QUIET="vv" fi # Command line, env variable, config file, or default if [ ! "x$opt_rootdir" = "x" ]; then rootdir="$opt_rootdir" elif [ ! "x$CVSDEB_ROOTDIR" = "x" ]; then rootdir="$CVSDEB_ROOTDIR" elif [ ! "x$conf_rootdir" = "x" ]; then rootdir="$conf_rootdir" fi # Command line, env variable, config file, or default if [ ! "x$opt_prefix" = "x" ]; then prefix="$opt_prefix" elif [ ! "x$CVSDEB_PREFIX" = "x" ]; then prefix="$CVSDEB_PREFIX" elif [ ! "x$conf_prefix" = "x" ]; then prefix="$conf_prefix" else prefix="" fi # Command line, env variable, config file, or default if [ ! "x$opt_packageintag" = "x" ]; then packageintag="$opt_packageintag" elif [ ! "x$CVSDEB_PACKAGEINTAG" = "x" ]; then packageintag="$CVSDEB_PACKAGEINTAG" elif [ ! "x$conf_packageintag" = "x" ]; then packageintag="$conf_packageintag" else packageintag="" fi # put a slash at the end of the prefix if [ "X$prefix" != "X" ]; then prefix="$prefix/"; prefix=`echo $prefix | sed 's://:/:g'`; fi filename=`basename $opt_dsc .dsc` package=`cat $opt_dsc | perl -wnle 'm/^\s*Source\s*:\s*(\S+)/io && print $1;'` version=`cat $opt_dsc | perl -wnle 'm/^\s*Version\s*:\s*(\S+)/io && print $1;' | head -n 1` # Command line, env variable, or default if [ ! "x$opt_cvsmodule" = "x" ]; then cvsmodule="$opt_cvsmodule" elif [ ! "x$CVSDEB_MODULE" = "x" ]; then cvsmodule="$CVSDEB_MODULE" else cvsmodule="${prefix}$package" fi non_epoch_version=$(echo -n "$version" | perl -pe 's/^\d+://') upstream_version=$(echo -n "$non_epoch_version" | sed -e 's/-[^-]*$//') if [ "x$opt_tag" != "x" ]; then cvstag="$opt_tag" else cvstag=$(echo -n "debian_version_$non_epoch_version" | \ tr -c -- "-_a-zA-Z0-9" "_") fi if [ "X$opt_utag" != "X" ]; then cvs_upstream_tag="$opt_utag" else cvs_upstream_tag=$(echo -n "upstream_version_$upstream_version" | \ tr -c -- "-_a-zA-Z0-9" "_") fi if [ "x$packageintag" != x ]; then cvstag=$(echo -n "${package}_$cvstag"| tr -c -- "-_a-zA-Z0-9" "_") cvs_upstream_tag=$(echo -n "${package}_$cvs_upstream_tag"| \ tr -c -- "-_a-zA-Z0-9" "_") fi if [ "X$version" != "X$upstream_version" ]; then debian_version=$(echo $non_epoch_version | \ perl -nle 'm/-([^-]*)$/ && print $1') DEB_ONLY='FALSE' else DEB_ONLY='TRUE' if [ $VERBOSE -gt 0 ]; then echo "" echo "Debian only package" fi fi if [ $DEBUG ]; then echo "package=${package} cvsmodule=$cvsmodule" echo "upstream_version=${upstream_version} " echo "cvs_upstream_tag=${cvs_upstream_tag} " if [ "X$DEB_ONLY" = "XTRUE" ]; then echo "Debian only package" else echo "debian_version=${debian_version} cvstag=${cvstag}" fi fi # Command line, env variable, config file, or default if [ ! "x$opt_workdir" = "x" ]; then workdir="$opt_workdir" elif [ ! "x$CVSDEB_WORKDIR" = "x" ]; then workdir="$CVSDEB_WORKDIR" elif [ ! "x$conf_workdir" = "x" ]; then workdir="$conf_workdir" else workdir="$rootdir/$package" fi # Command line, env variable, config file, or default if [ ! "x$opt_forceclean" = "x" ]; then forceclean="$opt_forceclean" elif [ ! "x$CVSDEB_FORCECLEAN" = "x" ]; then forceclean="$CVSDEB_FORCECLEAN" elif [ ! "x$conf_forceclean" = "x" ]; then forceclean="$conf_forceclean" else forceclean="" fi # Command line, env variable, config file, or default if [ ! "x$opt_use_changelog" = "x" ]; then use_changelog="$opt_use_changelog" elif [ ! "x$CVSDEB_USE_CHANGELOG" = "x" ]; then use_changelog="$CVSDEB_USE_CHANGELOG" elif [ ! "x$conf_use_changelog" = "x" ]; then use_changelog="$conf_use_changelog" else use_changelog="" fi # env variable, or default if [ ! "x$CVSDEB_IMPORTSUBSTMODE" = "x" ]; then importsubstmode="$CVSDEB_IMPORTSUBSTMODE" else importsubstmode="-ko -d" fi sourcedir=`dirname $opt_dsc` srcfile=`basename $opt_dsc` #set the absolute path name to the dsc file if [ $VERBOSE -gt 0 ]; then echo "" echo "# Getting the absolute path name to the dsc file" fi cd "$sourcedir" sourcedir=`pwd` opt_dsc="$sourcedir/$srcfile" ###################################################################### ###################################################################### ###################################################################### ###################################################################### ###################################################################### # clean up the temporary locations clean_up() { if [ $VERBOSE -gt 0 ]; then echo "" echo "# Cleaning up" fi $action cd "${workdir}" if [ "X$docmd" = "XYES" ]; then if [ -d "$tmpdir" ]; then $action rm -rf "$tmpdir" if [ -d "${tmpdir}" ]; then echo "Hmm. Something went wrong trying to remove the temp dir" echo "Retrying." $action chmod -r u+w "${tmpdir}" $action rm -rf "${tmpdir}" fi fi else $action rm -rf "$tmpdir" fi } # check for symbolic links in the upstream sources check_symlinks() { if [ $VERBOSE -gt 0 ]; then echo "# Check Symlinks in" $(pwd) fi symbolic_links=$(find . -type l -print) if [ "X$symbolic_links" != "X" ]; then if [ "X$forceclean" != "X" ]; then echo >&2 "You have asked me to remove symbolic links I find." echo >&2 "since cvs import chokes on them. I have found" echo >&2 "the following symbolic links:" echo >&2 "$symbolic_links" echo >&2 "" ans="" while [ "X$ans" = "X" ]; do echo -n >&2 "Shall I remove the links?[y/n]" read ans; case $ans in y*|Y*) $action rm -f $symbolic_links ;; *) echo >&2 "Please delete the following" echo >&2 "links and try again." echo >&2 "$symbolic_links" clean_up; exit 1 esac done else echo >&2 "The upstream sources contain symbolic links." echo >&2 "CVS ignores symblic links, you have to handle link " echo >&2 "creation in the modules file (-e and -o args)" echo >&2 "Since this causes an error on import, I can't." echo >&2 "handle this. Please delete the following" echo >&2 "links and try again." echo >&2 "$symbolic_links" clean_up; exit 1 fi fi } check_CVS_dirs() { if [ $VERBOSE -gt 0 ]; then echo "# Check CVS Dirs in" $(pwd) fi CVS_dirs=$(find . -type d -name CVS -print) if [ "X$CVS_dirs" != "X" ]; then if [ "X$forceclean" != "X" ]; then echo >&2 "You have asked me to remove CVS dirs I find." echo >&2 "since cvs import chokes on them. I have found" echo >&2 "the following dirs:" echo >&2 "$CVS_dirs" echo >&2 "" ans="" while [ "X$ans" = "X" ]; do echo -n >&2 "Shall I remove the Directories?[y/n]" read ans; case $ans in y*|Y*) $action rm -rf $CVS_dirs ;; *) echo >&2 "Please delete the following" echo >&2 "CVS directories and try again." echo >&2 "$CVS_dirs" clean_up; exit 1 esac done else echo >&2 "The upstream sources contain CVS directories." echo >&2 "This I can't handle. Please delete the following" echo >&2 "directories and try again." echo >&2 "$CVS_dirs" clean_up; exit 1 fi fi } check_CVS_ignore() { if [ $VERBOSE -gt 0 ]; then echo "# Check CVS ignores in" $(pwd) fi CVS_ignores=$(find . -type f -name .cvsignore -print) if [ "X$CVS_ignores" != "X" ]; then if [ "X$forceclean" != "X" ]; then echo >&2 "You have asked me to remove .cvsignore I find." echo >&2 "since cvs import may be adversly affected.. " echo >&2 "I have found the following dirfiles:" echo >&2 "$CVS_ignores" echo >&2 "" ans="" while [ "X$ans" = "X" ]; do echo -n >&2 "Shall I remove the files?[y/n]" read ans; case $ans in y*|Y*) $action rm -f $CVS_ignores ;; *) echo >&2 "Please delete the following" echo >&2 "CVS .ignore files and try again." echo >&2 "$CVS_ignores" clean_up; exit 1 esac done fi fi } # Importing the upstream sources import_orig() { if [ $VERBOSE -gt 0 ]; then echo "" echo "# Import the original source tree" fi $action cd "$1" if [ "X$docmd" = "XYES" ]; then check_symlinks; check_CVS_dirs; check_CVS_ignore; else echo "check_symlinks" echo "check_CVS_dirs" echo "check_CVS_ignore" fi if [ ! "X$use_changelog" = "X" -a -f debian/changelog ]; then changes=`dpkg-parsechangelog | grep '^ '` fi if [ -d ./debian/ ]; then HAVE_DEBIAN_DIR='YES'; fi argv=(cvs $CVS_QUIET import ${importsubstmode} \ -m"Imported upstream version $upstream_version. $changes" "${cvsmodule}" source-dist "${cvs_upstream_tag}") $action "${argv[@]}" $action cd .. } # co_import() { # For non debian only packages if [ $VERBOSE -gt 0 ]; then echo "" echo "# Extracting the imported files" fi $action cvs co "${cvsmodule}" # Where did it go? if [ ! -d "$package-${upstream_version}" ]; then if [ -d "${prefix}$package-${upstream_version}" ]; then mv "${prefix}$package-${upstream_version}" \ "${package}-${upstream_version}"; fi fi $action cd "$package-${upstream_version}"; # make sure that the debianized version does not have any problems # either. if [ "X$docmd" = "XYES" ]; then check_symlinks; check_CVS_dirs; check_CVS_ignore; else echo "check_symlinks" echo "check_CVS_dirs" echo "check_CVS_ignore" fi # these sources should be clean enough to overlay on top of what # we have exported. if [ "X$docmd" = "XYES" ]; then if [ "X$action" = "Xwithecho" ]; then echo "tar cf - . | (cd ../${cvsmodule}; tar ${TAR_QUIET}xf -)" fi tar cf - . | (cd "../${cvsmodule}"; tar "${TAR_QUIET}xf" -) else echo "tar cf - . | (cd ../${cvsmodule}; tar ${TAR_QUIET}xf -)" fi $action cd .. } # commit debianized tree (non debian only packages commit_debianized() { # For non debian only packages if [ $VERBOSE -gt 0 ]; then echo "" echo "# Committing the Debianized version" fi $action cd "${cvsmodule}" if [ "X$HAVE_DEBIAN_DIR" != "XYES" ]; then $action cvs add debian fi if [ "X$docmd" = "XYES" ]; then done="" while [ "X$done" != "X1" ]; do dirs=$(cvs -n update | sed -n 's:^\? ::p') if [ "X$dirs" = "X" ]; then done=1 break fi # for item in $(cvs -n update | sed -n 's:^\? ::p'); do # dir=$(dirname $item) # file=$(basename $item) # (cd $dir; cvs add $file) # done if [ "X$action" = "Xwithecho" ]; then echo "cvs add " fi cvs -n update | sed -n 's:^\? ::p' | sed 's/ /\\ /g' | \ xargs -n1 -i! -e sh -c ' dir=$(dirname "!"); file=$(basename "!"); cd $dir; cvs add "$file" ' done else echo "cvs add " fi if [ ! "X$use_changelog" = "X" -a -f debian/changelog ]; then changes=`dpkg-parsechangelog | grep '^ '` fi argv=(cvs commit -m"Added debian changes for version $version. $changes") $action "${argv[@]}" $action cvs $CVS_QUIET tag -d "${cvstag}" $action cvs $CVS_QUIET tag -F "${cvstag}" $action cd "${workdir}/$tmpdir" } ###################################################################### ###################################################################### ###################################################################### ###################################################################### if [ ! -d "$workdir" ]; then $action mkdir -p "$workdir" fi if [ "X$docmd" = "XYES" ]; then if [ ! -d "$workdir" ]; then echo "Could not create $workdir" exit 1; fi fi $action cd "$workdir" if [ -e "$tmpdir" ]; then echo >&2 "$workdir/$tmpdir directory exists" echo >&2 "It shall be scribbled on if I continue" echo >&2 "Aborting" exit 1; fi $action mkdir "$tmpdir" if [ "X$docmd" = "XYES" ]; then if [ ! -d "$tmpdir" ]; then echo >&2 "The working directory ($workdir) is not writable" exit 1 fi fi $action cd "$tmpdir" # extract the sources if [ $VERBOSE -gt 0 ]; then echo "" echo "# Extracting the source" fi $action dpkg-source -su -x "$opt_dsc" if [ $? != 0 ]; then echo "Error extracting package: exiting" 1>&2 exit 1 fi if [ "X$docmd" = "XYES" ]; then if [ ! -d "${package}-${upstream_version}" ]; then echo >&2 "No ${workdir}/$tmpdir/${package}-${upstream_version}" echo >&2 "Error extracting source" echo >&2 "Aborting" clean_up; exit 1 fi if [ "X$DEB_ONLY" = "XFALSE" ]; then if [ ! -d "${package}-${upstream_version}.orig" ]; then echo >&2 "Warning!!!!!!" echo >&2 "No ${workdir}/$tmpdir/${package}-${upstream_version}" echo >&2 "Though the version number indicates this is not a Debian" echo >&2 "Native Package, it seems to be one. This is a policy" echo >&2 "violation. This should be corrected." ans="" while [ "X$ans" = "X" ]; do echo -n >&2 "Do you wish to continue?[y/N]" read ans; case $ans in y*|Y*) echo >&2 "OK. Continuing anyway." ;; *) echo >&2 "Aborting"; clean_up; exit 1 esac done fi fi fi # import original source tree. if [ "X$DEB_ONLY" = "XFALSE" ]; then import_orig "${package}-${upstream_version}.orig"; # extract the imported files, and add the debianized ones co_import; # And commit the debianized files commit_debianized; else import_orig "${package}-${upstream_version}" if [ $VERBOSE -gt 0 ]; then echo "" echo "# Extracting imported files" fi $action cvs $CVS_QUIET co "${cvsmodule}" if [ $VERBOSE -gt 0 ]; then echo "" echo "# Tagging the files with debian version" fi $action cd "${cvsmodule}" $action cvs $CVS_QUIET tag -F "${cvstag}" $action cd "${workdir}/$tmpdir" fi clean_up echo "$package registered under CVS" exit 0 cvs-buildpackage-5.23/HOWTO0000644000232200023220000004522111005261404015655 0ustar pbuilderpbuilderUsing CVS together with Debian GNU/Linux packages ------------------------------------------------- This short document is only intended to give a short help in converting packages to CVS management. It is probably only interesting for a few people who are not very familiar with CVS and version management. Also, there is a script in /usr/share/doc/cvs-buildpackage called cvs-pkginit (both the script and the man page are gzipped), which will print out a synopsis of this HOWTO document. For example, to convert a package foo, version bar1, Debian revision 3, try % cvs-pkginit foo bar1 3 and look at the synopsis. Better yet, read the manual page, cvs-inject(1). Oldenburg, 6/2/97 Joey (joey@debian.org) / Martin Schulze / Mobile, Manoj Srivastava srivasta@debian.org $Id: HOWTO,v 1.18 2003/07/03 18:29:40 srivasta Exp $ Note: in the following discussion, the entities in angle brackets <> are meant to be changed for each case, and everything else is to be taken literally. For example, if you are talking about a package with upstream version 2.1.82, then <$version> means 2.1.82, and upstream_version_<$version | tr -c "[-_a-zA-Z0-9]" "_" > means upstream_version_2_1_82. 1. Set up CVS $ CVSROOT=/where/your/repository/will/be $ export CVSROOT $ cvs init $ mkdir $CVSROOT/debian This allows you to separate your Debian packages from anything else in your repository, either currently or in the future. Even if you think you may not need CVS for anything else, it is easier to classify your repository now than to be sorry later (it is a mess moving things around in your repository later). Note: you shall need to set conf_prefix=debian In the cvsdeb.conf file (it is not so by default). (note: /etc/cvsdeb.conf or ~/.cvsdeb.conf can be used) If more than one person is supposed to use CVS, you have to make sure they can actually modify the repository using CVS. Choose a group (or a set of groups) that have access to a part of the repository, and set the permissions: # chgrp $CVSROOT/debian # chmod g+ws $CVSROOT/debian This makes sure that members of the archive group are allowed to configure the repository. Now you have to make sure that the correct groups of people are able to modify parts of the repository. # mkdir $CVSROOT/debian/ # chgrp $CVSROOT/debian/ # chmod g+ws $CVSROOT/debian/ # mkdir $CVSROOT/debian/ # chgrp $CVSROOT/debian/ # chmod g+ws $CVSROOT/debian/ As a normal user you should also make your CVS repository public, either by using "-d /where/your/repository/will/be" or by putting such a fragment into your profile. $ CVSROOT=/where/your/repository/will/be $ export CVSROOT 2. Use Modules # cvs checkout CVSROOT # cd CVSROOT # vi modules In the following, should be the package name as in debian/changelog file. Add the following lines, the first is essential, the second can be duplicated and is self-explanatory: modules CVSROOT modules debian/ # cvs commit -m 'Define first modules' 3. Prepare to use CVS With the addition of cvs-inject, this process is essentially just one line. Assuming you have created a set of files for upload, including the orig.tar.gz, the .dsc. and the diff.gz file, just say: $ cvs-inject and you are done. (The old method was huge, it is now an appendix at the end of this message, the only reason it is still there is if you are curious about how the guts of this thing works.) Please make sure that the file debian/rules is executable, since this way it shall be executable when exported, and there will be no problems running dpkg-buildpackage on the exported sources. In general, make sure *all* files have the right permissions before you add them to the CVS repository. If you have set up CVS as root, and have not set group write permissions, you need to create $CVSROOT/debian/ (note that is you use the debian/ dir you need to set conf_prefix=debian) as root and change the group or user ownership in the repository to the particular group or user respectively. The CVS import will print one warning that it cannot create the debian/ directory, but that's fine. Also note that in some cases, there have been problems reported in creating the package directory despite having set up the modules file. That is to say, sometimes the package is created in $CVSROOT/ rather than $CVSROOT/debian/ as it should be. In this case, you can specify '-Mdebian/' explicitly, or manually move the directory in the repository once it is created. (Note: this is probably a bug in CVS, it is being investigated.) Note that the upstream sources are imported with a -ko (take care of binary files), but not the subsequent local changes you may make. Please note that epoch numbers are ignored while determining the CVS tag name (they are generally used to change dpkg's opinion of package ordering, and are generally not relevant as CVS tags). 4. Prepare a release Before you can run some of the Debian commands that will build a package, you first have to commit local modifications. Change directory to your local checked out package dir (which is where you make your modifications), and run: $ cvs commit -m Next, you use the 'cvs tag' command to tag all the various files in the CVS-managed sources as belonging to a release: $ cvs tag debian_version_- Note: you can skip this if you run cvs-buildpackage, in the next step, with the '-F' flag. 5. Make a release You could either use the cvs-buildpackage mechanism (preferred), or an manual export. First test the cvs-buildpackage stuff as a dry run in the top level directory of your checked out package (make sure that the tags match) like so: $ cvs-buildpackage -d -n -rfakeroot If you have a problem, check whether you have configured /etc/cvsdeb.conf or ~/.cvsdeb.conf properly. Note: this HOWTO does not lead you through setting up cvs-buildpackage, please ensure that you understand the concept of the rootdir (which is a scratch dir where cvs-buildpackage exports packages to and builds them), and that this is distinct from the directory where you checkl out the packages and edit things. Once you've confirmed that everything looks correct, do the real run, either using fakeroot to gain root privileges: $ cvs-buildpackage -rfakeroot or, as an alternative to fakeroot, you can use sudo or super or whatever: $ cvs-buildpackage -rsudo Note: Wehn the -op option is used, then cvs-buildpackage will first unpack the orig.tar.gz, and then apply a diff produced by cvs to bring that unpacked tree up-to-date with what is in CVS. cvs-buildpackage will make debian/rules executable, but is unable to set any other permissions. If you need permissions set specially, you will need to use the -Ef option to specify a script that handles other permission, or go with the default behaviour of exporting everythingh out of CVS. For large packages kept in a remote repository, the -op optiona may increase speed significantly. Or, to do it all manually: Check out the package. $ cvs export -d $WORKDIR/- \ -r debian_version_- \ Where WORKDIR is the scratch directory where the package shall be exported and built. Now you can go on with the normal release export mechanism. ______________________________________________________________________ You are done! Congratulations! Here are a few tasks you can do on your source tree: ______________________________________________________________________ 6. Remove or rename a file The normal way to move a file is to copy OLD to NEW, and then issue the normal CVS commands to remove OLD from the repository, and add NEW to it. (Both OLD and NEW could contain relative paths, for example `foo/bar.c'). $ mv OLD NEW $ cvs remove OLD $ cvs add NEW $ cvs commit -m "Renamed OLD to NEW" OLD NEW This is the simplest way to move a file, it is not error-prone, and it preserves the history of what was done. Note that to access the history of the file you must specify the old or the new name, depending on what portion of the history you are accessing. For example, `cvs log OLD' will give the log up until the time of the rename. 7. Updating a module with the import command When a new release of the source arrives, you import it into the repository with the same `import' command that you used to set up the repository in the first place. The only difference is that you specify a different release tag this time, and a different message. This is easier now with the cvs-upgrade program. Put the orig.tar.gz file in the working directory for your site (typically /usr/local/src/Packages/). The upstream sources should be put in /_.orig.tar.gz $ cvs-upgrade This shall unpack the original sources, and import them on the vendor branch. Since the upgrade may involve conflicts, this is not fully automated; cvs-upgrade stops to let you handle any conflicts, reminding you resolve conflicts, check things in, and tag the new version. Now, we have to incorporate the changes we made into the new revision. This is how to do it: If you do not have a checked out working directory: $ cd /where/your/source/tree/will/reside $ cvs checkout -jsource-dist:yesterday -jsource-dist $ cd /where/your/source/tree/will/reside/ If you already have a working directory: $ cd /where/your/source/tree/will/reside/ $ cvs update -jsource-dist:yesterday -jsource-dist The above command will check out the latest revision of , merging the changes made on the vendor branch `source-dist' since yesterday into the working copy. If any conflicts arise during the merge they should be resolved in the normal way. Then, the modified files may be committed. Using a date, as suggested above, assumes that you do not import more than one release of a product per day. If you do, you can always use something like this instead: $ cvs checkout -jupstream_version_ \ -jupstream_version_ \ Or, in the working directory: $ cvs update -jupstream_version_ \ -jupstream_version_ In this case, the two above commands are equivalent. For files that have not been modified locally, the newly created revision becomes the head revision. So, check and see if all the files have been correctly updated. Especially, remember to change the debian/changelog file! Now you are ready to prepare a release. 8. Remove the source tree to conserve disk space To remove the actual working source tree you are advised not to use rm -rf but use the CVS command that also tests if you have made any local changes that are not committed yet. $ cd /where/your/source/tree/will/reside/ $ cvs release -d 9. Glossary Tags symbolic names for revisions Repository Archive of source files 10 Appendix: A: CVS TAG CONVENTIONS |======================================================================| |Upstream Version | | |Debian Revision | | |Orig tar file name | package_.orig.tar.gz | |Debian package name | package_-_.deb | |CVS Vendor tag | upstream_version_ | |CVS current tag | debian_version_ | |======================================================================| Examples: |======================================================================| | | upstream sources | Debian only package | |======================================================================| |Upstream Version | 2.76 | 3.38 | |Debian Revision | 1.2 | | |Orig tar file name | make_2.76.orig.tar.gz | | |Debian package name | make_2.76-1.2_i386.deb | kpkg_3.38_i386.deb | |CVS Vendor tag | upstream_version_2_76 | upstream_version_3_38 | |CVS current tag | debian_version_2_76-1_2| debian_version_3_38 | |======================================================================| Note that the epoch numbers are ignored while determining the CVS tag name (they are generally used to change dpkg's opinion of package ordering, and are generally not relevant for CVS tags). B: THE OLD METHOD OF INJECTING SOURCES Insert your source tree with the following commands (assuming you already have debianized it, and there is on orig.tar.gz file). Note that the upstream sources are imported with a -ko (take care of binary files), but not local changes we make. Please note that epoch numbers are ignored while determining the CVS tag name (they are generally used to change dpkg's opinion of package ordering, and are generally not relevant for CVS tags). Change to the directory to where you have your non-CVS unpacked debianized development source tree, which is what we are trying to inject into CVS (this is not under CVSROOT, generally). I REPEAT: In the following, should be the package name as in the debian/changelog file. $ cd /where/your/source/tree/resides/ $ tar zvvfx _.orig.tar.gz $ cd _.orig $ cvs import -ko -m 'Import of bare source' \ debian/ source-dist \ upstream_version_ You may change the branch tag source-dist to whatever you wish. (The cvs-buildpackage maintainer habitually uses the tag upstream (which is a study in redundancy ;-). If you have set up CVS as root, and have not set group write permissions, you need to create $CVSROOT/debian/ as root and change the group or user ownership in the repository to the particular group or user respectively. The CVS import will print one warning that it cannot create the debian/ directory, but that's fine. The next step is to check out the whole tree and incorporate all of your changes. $ cd /where/your/source/tree/will/reside $ cvs checkout If you have already created a debianized version but haven't used CVS before you might want to run the following commands to incorporate your changes. After that you should tag that release to be able to check it out sometimes later. $ cd /where/your/source/tree/resides/- $ diff -qrBbw . /where/your/source/tree/will/reside// | grep -v CVS $ FILES_CHANGED_LOCALLY="" $ tar cf - $FILES_CHANGED_LOCALLY | \ tar -C /where/your/source/tree/will/reside/ -xvpf - $ cd /where/your/source/tree/will/reside/ Please make sure that the file debian/rules is executable, since this way it shall be executable when exported, and there will be no problems running dpkg-buildpackage on the exported sources. In general, make sure *all* files have the right permission before you add them to the CVS repository. $ cd /where/your/source/tree/will/reside/ $ cvs add debian Also, please note that you have to add all additional files manually which should be placed in the repository, especially all files in the debian subdirectory. Also, please note that the cvs add command does NOT work recursively, so you shall have to manually add whatever subdirectories you have. (cd debian; cvs add *) A nice thing is that running cvs update will show you the status of all files in the directory $ cd /where/your/source/tree/will/reside/ $ cvs update The output looks like: cvs update: Updating . M Makefile cvs update: Updating debian A rules ? example1 M means modified (has to be committed), A means Added (has to be committed), ? means CVS does not know about the file (needs to be added, maybe?). When you are satisfied that nothing has been missed, and all files have the required permissions, you are ready to commit. $ cd /where/your/source/tree/will/reside/ $ cvs commit -m 'Made all debian changes' $ cvs tag debian_version_- . The new source tree will reside in a directory that doesn't contain the version number. This is no problem as we'll see later. If instead you are creating the debian directory from scratch (may be simpler, though less automated) $ mkdir debian Create all needed debian files and add them into source control. $ cvs add debian $ cd debian $ cvs add * After that the next check in will include all your files. $ cd /where/your/source/tree/will/reside/ $ cvs commit -m When you are satisfied, you may remove the old version of the working directory. Be very sure you are removing the right directory! $ rm -rf ../.old APPENDIX B: Using pbuilder Please refer to the pbuilder documentation to set up pbuilder, and create the required base tar file as described. In order to hook that pbuilder chroot configuration, all you need to do is either add the following line to your ~/.cvsdeb.conf: conf_buildpackage='pdebuild --auto-debsign --buildresult ../' or call cvs-buildpackage with the following option: % cvs-buildpackage ... -C'pdebuild --auto-debsign --buildresult ../' Since the gpg signing is done after the fact, do not set conf_rootcommand or conf_dpkg_options=(-pgpg "${dpkg_options[@]}"); pbuilder handles all this for you. cvs-buildpackage-5.23/debian/0000755000232200023220000000000011070011614016246 5ustar pbuilderpbuildercvs-buildpackage-5.23/debian/local.mk0000644000232200023220000000353011005261405017675 0ustar pbuilderpbuilder############################ -*- Mode: Makefile -*- ########################### ## local.mk --- ## Author : Manoj Srivastava ( srivasta@glaurung.green-gryphon.com ) ## Created On : Sat Nov 15 10:42:10 2003 ## Created On Node : glaurung.green-gryphon.com ## Last Modified By : Manoj Srivastava ## Last Modified On : Wed Sep 6 12:38:22 2006 ## Last Machine Used: glaurung.internal.golden-gryphon.com ## Update Count : 15 ## Status : Unknown, Use with caution! ## HISTORY : ## Description : ## ## arch-tag: b07b1015-30ba-4b46-915f-78c776a808f4 ## ############################################################################### BUILD/cvs-buildpackage:: check/cvs-buildpackage INST/cvs-buildpackage:: install/cvs-buildpackage BIN/cvs-buildpackage:: binary/cvs-buildpackage testdir: $(testdir) CLEAN/cvs-buildpackage:: $(checkdir) $(REASON) -rm -rf $(TMPTOP) check/cvs-buildpackage: $(REASON) $(checkdir) $(MAKE) build install/cvs-buildpackage: testroot $(REASON) $(checkdir) rm -rf $(TMPTOP) $(TMPTOP).deb $(make_directory) $(ETCDIR) $(make_directory) $(BINDIR) $(make_directory) $(MAN1DIR) $(make_directory) $(MAN5DIR) $(make_directory) $(LINTIANDIR) echo '$(package): description-synopsis-might-not-be-phrased-properly' \ >> $(LINTIANDIR)/$(package) $(MAKE) prefix=$(TMPTOP) install binary/cvs-buildpackage: testroot $(REASON) $(chekdir) $(make_directory) $(TMPTOP)/DEBIAN # $(install_program) debian/postinst $(TMPTOP)/DEBIAN/postinst # $(install_program) debian/prerm $(TMPTOP)/DEBIAN/prerm $(install_file) debian/conffiles $(TMPTOP)/DEBIAN/conffiles dpkg-gencontrol -p$(package) -isp -P$(TMPTOP) $(create_md5sum) $(TMPTOP) chown -R root:root $(TMPTOP) chmod -R u+w,go=rX $(TMPTOP) dpkg --build $(TMPTOP) .. cvs-buildpackage-5.23/debian/control0000644000232200023220000000307211070007625017662 0ustar pbuilderpbuilderSource: cvs-buildpackage Priority: optional Section: devel Maintainer: Debian QA Group Standards-Version: 3.8.0 Package: cvs-buildpackage Priority: optional Section: devel Description: A set of Debian package scripts for CVS source trees. This package provides the capability to inject or import Debian source packages into a CVS repository, build a Debian package from the CVS repository, and helps in integrating upstream changes into the repository. . The import or inject process takes a dsc (Debian source control) file, and imports it into CVS. The module path can maintains distribution and section information; for example, one may inject hemm/hemm/devel/make into the repository. . The build process works analogously to dpkg-buildpackage, and can be used from within the checked out source tree, or with additional information, can be used from anywhere. In the latter case, you can build any previous version of the package, as long as the corresponding orig.tar.gz file is still around. The build script checks out the relevant version from the CVS repository, and runs dpkg-buildpackage to create the Debian package. . Combined, these utilities provide an infrastructure to facilitate the use of CVS by Debian maintainers. This allows one to keep separate CVS branches of a package for stable, unstable, and possibly experimental distributions, along with the other benefits of a version control system. . This can be used to generate a unified CVS source tree, for example. Depends: dpkg-dev (>= 1.4.0.9), cvs Architecture: all cvs-buildpackage-5.23/debian/changelog0000644000232200023220000012443511070007643020140 0ustar pbuilderpbuildercvs-buildpackage (5.23) unstable; urgency=low * QA upload. * Fixed parallel builds, thanks to Daniel Schepler. (Closes: #445818) * Upgraded standards version to 3.8.0. -- Jelmer Vernooij Mon, 29 Sep 2008 01:13:28 +0200 cvs-buildpackage (5.22) unstable; urgency=low * Orphan the package. I no longer use CVS, and am unable to spend time maintaining this as well as this deserves. -- Manoj Srivastava Mon, 28 Apr 2008 00:36:03 -0500 cvs-buildpackage (5.21) unstable; urgency=low * Fixed minor typos in man pages. * Bug fix: "cvs-buildpackage: Unknown macro in cvs-upgrade.1, cvsdeb.conf.5 and cvs-inject.1", thanks to Thomas Huriaux (Closes: #421012). -- Manoj Srivastava Sat, 07 Jul 2007 11:57:23 -0500 cvs-buildpackage (5.20) unstable; urgency=low * Bug fix: "cvs-buildpackage: typos in 'cvs-upgrade -n' output", thanks to Henning Makholm (Closes: #322944). -- Manoj Srivastava Thu, 22 Sep 2005 13:26:55 -0500 cvs-buildpackage (5.19) unstable; urgency=low * Bug fix: "cvs-buildpackage: missing -b option in getopt()", thanks to Marcelo Bezerra (Closes: #298947). -- Manoj Srivastava Thu, 17 Mar 2005 02:57:16 -0600 cvs-buildpackage (5.18) unstable; urgency=low * Fixed use of tail as well. * Bug fix: "/usr/bin/cvs-inject: deprecated use of `head -1'", thanks to Robert Luberda (Closes: #270604). -- Manoj Srivastava Mon, 20 Sep 2004 16:32:37 -0500 cvs-buildpackage (5.17) unstable; urgency=low * Bug fix: "typo in /usr/bin/cvs-buildpackage", thanks to Bastian Kleineidam (Closes: #248101). * Bug fix: "cvs-inject: unknown option -v (mentioned in manpage)", thanks to Henrique de Moraes Holschuh (Closes: #249630). -- Manoj Srivastava Sun, 6 Jun 2004 12:14:34 -0500 cvs-buildpackage (5.16) unstable; urgency=low * Bug fix: "cvs-buildpackage: use apt to get .orig.tar.gz from Debian mirror", thanks to Henning Makholm. This adds an -A option to cvs-buildpackage, which makes it try apt-get for producing missing .orig.tar.gz files. The option is not on by default, because that might cause systems with dial-up net access to try to bring the link up unexpectedly (or lead to long time-out delays while apt tries to contact a mirror). Many thanks for this functionality. (Closes: #227995). * Bug fix: "cvs-upgrade(1) still refers to cvs-co-upgrade", thanks to Matt Zimmerman (Closes: #227582). -- Manoj Srivastava Mon, 16 Feb 2004 19:50:28 -0600 cvs-buildpackage (5.15) unstable; urgency=low * Bug fix: "cvs-buildpackage: missing newline at end of /etc/cvsdeb.conf", thanks to Julian Gilbey (Closes: #225068). -- Manoj Srivastava Fri, 2 Jan 2004 11:53:43 -0600 cvs-buildpackage (5.14) unstable; urgency=low * Bug fix: "typo (-- vs. -) in description in cvs-inject manpage", thanks to Anthony DeRobertis (Closes: #222802). -- Manoj Srivastava Sat, 6 Dec 2003 10:04:53 -0600 cvs-buildpackage (5.13) unstable; urgency=low * Change usage message of cvs-buildpackage to correctly document -m and -d. closes: Bug#217944 -- Manoj Srivastava Fri, 31 Oct 2003 12:52:31 -0600 cvs-buildpackage (5.12) unstable; urgency=low * cvs-upgrade rejects "-v" (verbose) option due to a typo in the getopt invocation. Thanks to David Coe closes: Bug#209372 -- Manoj Srivastava Wed, 10 Sep 2003 14:57:30 -0500 cvs-buildpackage (5.11) unstable; urgency=low * Handle the case where upstream tarballs have files where the owner does not have write permissions, causing rm -rf of the temp dir to fail. closes: Bug#207285 -- Manoj Srivastava Tue, 26 Aug 2003 03:04:25 -0500 cvs-buildpackage (5.10) unstable; urgency=medium * The quotes around the $cvsdeb_packageopts variable were causing problems when the variable was empty. Fixed. -- Manoj Srivastava Fri, 22 Aug 2003 12:24:16 -0500 cvs-buildpackage (5.09) unstable; urgency=low * Added a new configuration file option to allow appending options to the buildpackage program. There are options alerady for the default dpkg-buildpackage script, and you can change it (to pbuilder, say) and prepend options to the builder ptogram, this new option allows you to append options to the builder package invocation. * Changed the chown invocation in the rules file to use : as a separator, not ., to meet the latest POSIX rules. -- Manoj Srivastava Mon, 18 Aug 2003 14:01:16 -0500 cvs-buildpackage (5.08) unstable; urgency=low * Added examples to the man pages and the HOWTO to show how to hook into the pbuilder system for building debian packages in a chroot. * Now cvs-buildpackage sets the value of CVSROOT from the CVS/Root file. closes: Bug#199259 -- Manoj Srivastava Thu, 3 Jul 2003 13:29:32 -0500 cvs-buildpackage (5.07) unstable; urgency=low * Add the long --help option in addition to the -h option. closes: Bug#190580 -- Manoj Srivastava Fri, 25 Apr 2003 14:18:08 -0500 cvs-buildpackage (5.06) unstable; urgency=low * Add a missing .TP in cvs-buildpackage(1). closes: Bug#189674 -- Manoj Srivastava Sat, 19 Apr 2003 23:40:41 -0500 cvs-buildpackage (5.05) unstable; urgency=low * The rdiff patch introduced in 5.03 changed the standard fullexport behaviour: In fullexport mode, cvs-buildpackage now always exports the upstream source from CVS, even if an .orig.tar.gz is present. The patch from Daniel Kobras fixes this. closes: Bug#188700 * Fixed man page typo. closee: Bug#188506 -- Manoj Srivastava Sun, 13 Apr 2003 17:04:52 -0500 cvs-buildpackage (5.04) unstable; urgency=low * Fixed typo to make -op work. closes: Bug#186427 -- Manoj Srivastava Thu, 27 Mar 2003 01:17:51 -0600 cvs-buildpackage (5.03) unstable; urgency=low * Added a major change (initially coded by David B. Harris, and expanded by me) to include a alternate mechanism for cvs-buildpackage; rather than just exporting the module out of CVS, we can unpack the original tarfile, and apply a patch to bring it up to date. This is useful if the repository is remote. This does have its drawbaclks: since patch does not generally create files with the correct permissions, special care has to be taken to ensure the permissions are right; a hook has been provided for a script to run and fix the permissions back up. Also, export processes the CVS keywords, whoch won't be done in the rdiff approach. The default remain the old way of doing things. closes: Bug#186205 -- Manoj Srivastava Wed, 26 Mar 2003 00:37:04 -0600 cvs-buildpackage (5.02) unstable; urgency=low * Add missing -b option to cvs-buildpackage (how come no one noticed it was misssing before?) closes: Bug#182766 -- Manoj Srivastava Thu, 13 Mar 2003 12:05:51 -0600 cvs-buildpackage (5.01) unstable; urgency=low * removed dependency on fileutils. closes: Bug#175048, Bug#175697 * The -d option is now passed to dpkg-buildpackage, and no longer turns on debuggin. The ENV var DEBUG may be used. closes: Bug#172124 -- Manoj Srivastava Sun, 9 Feb 2003 13:23:29 -0600 cvs-buildpackage (4.06) unstable; urgency=low * Another try at fixing the root dir check. closes: Bug#170549, Bug#171093 -- Manoj Srivastava Tue, 24 Dec 2002 13:12:24 -0600 cvs-buildpackage (4.05) unstable; urgency=low * Do not test for existence of the root and work dir prematurely, ie, before the conf files has been included. closes: Bug#169150 -- Manoj Srivastava Thu, 14 Nov 2002 18:15:23 -0600 cvs-buildpackage (4.04) unstable; urgency=low * Pass -uc, not --uc, to dpkg-buildpackage, since that does not understand gnu style long options. closes: Bug#168955 * Fix command line -W and -R argument parsing. Apparently, tis has been a bug since woody. closes: Bug#168963 * Fix the man to reflect renaming the command option from -B to -C closes: Bug#168989 -- Manoj Srivastava Wed, 13 Nov 2002 21:37:11 -0600 cvs-buildpackage (4.03) unstable; urgency=low * Fix argument parsing for -tC closes: Bug#168583 -- Manoj Srivastava Sun, 10 Nov 2002 14:53:54 -0600 cvs-buildpackage (4.02) unstable; urgency=low * Since we fixed Bug#154365 in version 4.00, the watchdog script cvs-co-upgrade, has become unnecessary (since we do not miss files on upgrading, we do not need to check for missing files). Additionally, the reson that prompted the removal is Bug#168009: the script did not cope well with older tar formats that did not mark directories with a trailing / in the tar ztf output. closes: Bug#168009 * Use getopt(1) closes: Bug#82373 -- Manoj Srivastava Fri, 8 Nov 2002 20:46:47 -0600 cvs-buildpackage (4.01) unstable; urgency=low * Added in spell check patch from Brian Nelson. closes: Bug#163263 -- Manoj Srivastava Tue, 29 Oct 2002 17:17:51 -0600 cvs-buildpackage (4.00) unstable; urgency=low * NOTE: The option -B to specify a buld command has changed to -C, in order not to shadow the -B option of dpkg-buildpackage. This break with backward compatibility is the reason for the version bump. closes: Bug#155444 * use which instead of command -v * Allow a hook script to be specified in the configuration file. closes: Bug#157027, Bug#157028 * Fixed a wrongly placed diagnositc output. closes: Bug#156653 * Removed -jsource-dist:yesterday -jsource-dist:today merge options when using cvs-upgrade to incorporate new upstream changes. These commands, however, do not work in general for a CVS source that has had its "source-dist" branch updated by cvs-upgrade. The reason for this is that cvs-upgrade, by default, uses the "-d" flag when it imports the new upstream source. Therefore, all of the files are tagged with their modification time as the time of import. If the files in the upstream tar file have been modified within the last 24 hours then everything works fine. If, on the other hand, the files were modified more than a day ago, which is more often the case when using the pristine upstream tar, then "source-dist:yesterday" and "source-dist:today" evaluate to the same version numbers, and thus the branch merge commands listed above miss the changes made in the upstream source. Many thanks to Brian Mays for pointing this out. closes: Bug#154365 * Fixed typo This -> Thus closes: Bug#157022 * Allow one to specify how to acquire the original tar ball in case it does not exist in the workdir. Or to complain loudly, and abort, or take any other action you wish. closes: Bug#157024, Bug#153834, Bug#157025 * export non_epoch_version upstream_version debian_version cvstag package cvs_upstream_tag, so that they shall be available to the hook scripts. closes: Bug#157032 -- Manoj Srivastava Sun, 1 Sep 2002 23:38:55 -0500 cvs-buildpackage (3.43) unstable; urgency=low * document the default used for the workdir. closes: Bug#146892 -- Manoj Srivastava Tue, 14 May 2002 22:45:37 -0500 cvs-buildpackage (3.42) unstable; urgency=high * Urk, Did not include part of the patch to fix versions numbers, and now we translate newlines at the ned of var names to spurious _'s. closes: Bug#134998 -- Manoj Srivastava Thu, 21 Feb 2002 09:08:54 -0600 cvs-buildpackage (3.41) unstable; urgency=low * Thetr expression introduced in the previous version was bogus. Many thanks to Peter Muir for catching tghe error, coming up with a solution, and testing it. I generalized it to all three scripts. closes: Bug#134746 -- Manoj Srivastava Tue, 19 Feb 2002 22:30:44 -0600 cvs-buildpackage (3.40) unstable; urgency=low * It appears that cvs-buildpackage will generate a tag such as upstream_version_3_37+2_3_1 from a version number 3.37+2.3.1. However, only [-_a-zA-Z0-9] are valid in tags, so really instead of just translating . to _, every non-[-_a-zA-Z0-9] character should probably be so translated. closes: Bug#134496 -- Manoj Srivastava Sun, 17 Feb 2002 20:33:53 -0600 cvs-buildpackage (3.39) unstable; urgency=low * Fixed a minor typo. closes: Bug#133826 -- Manoj Srivastava Sat, 16 Feb 2002 18:29:11 -0600 cvs-buildpackage (3.38) unstable; urgency=low * cvs-upgrade has the same bug cvs-inject had. closes: Bug#132029 -- Manoj Srivastava Sun, 3 Feb 2002 14:11:24 -0600 cvs-buildpackage (3.37) unstable; urgency=low * Fixed typo that broke the upstream tag when usig the ctp option. closes: Bug#130195, Bug#130198 -- Manoj Srivastava Sun, 20 Jan 2002 22:25:03 -0600 cvs-buildpackage (3.36) unstable; urgency=low * Specify that the working directory specification needs be an absolute path name. closes: Bug#122975 -- Manoj Srivastava Fri, 21 Dec 2001 16:41:49 -0600 cvs-buildpackage (3.35) unstable; urgency=low * Remove mention of /usr/doc from the package. closes: Bug#121975 * Put quotes around rm -rf closes: Bug#119552 -- Manoj Srivastava Sat, 1 Dec 2001 19:12:17 -0600 cvs-buildpackage (3.34) unstable; urgency=low * -d Use the file's modification time as the time of import. Since we were not using this during import, we were losing information about timestamps. Using -d should set the timestamps to whatever they are in the upstream sources. closes: Bug#117982 * The cvs-co-upgrade code does not grok epochs, so a fatal warning has now been added to with a rider, and is not longer fatal. closes: Bug#118661 -- Manoj Srivastava Mon, 12 Nov 2001 15:22:04 -0600 cvs-buildpackage (3.33) unstable; urgency=low * For packages with versions in the name, using the -ctp option is not possible due to cvs choking on the '.' in the tag. This was fixed thanks to Stephen Zander closes: Bug#112949 * The leading ./ was confusing cvs-co-upgrade. Fixed thanks to Rob Browning closes: Bug#113088 -- Manoj Srivastava Fri, 21 Sep 2001 22:13:45 -0500 cvs-buildpackage (3.32) unstable; urgency=low * changes start on the same line as "Imported..." and "Added...", which was ugly. closes: Bug#108229 -- Manoj Srivastava Mon, 20 Aug 2001 02:46:07 -0500 cvs-buildpackage (3.31) unstable; urgency=low * Added additional information in cvs-upgrade while checking in stuff. closes: Bug#104355 -- Manoj Srivastava Thu, 12 Jul 2001 12:07:00 -0500 cvs-buildpackage (3.30) unstable; urgency=low * Fixed a typo in cvs-inject man page. closes: Bug#101661 * cvs-buildpackage currently checks whether the upstream source contains a directory named debian but doesn't use this info later on. This has now been fixed. closes: Bug#97423 * Use cvs rtag to delete the current tag on all files (even those in the attic). This deals with the following case: (a) tag with debian_version_2_8_7 (b) remove file 'foo.c' (cvs rm; cvs ci), (c) retag. With 'cvs tag' it won't remove the tag from the file foo.c; with 'cvs rtag', it will. When invoking cvs-buildpackage -F rtag has the right semantics. closes: Bug#101818 * Set CVSROOT if empty and CVS/Root is present (abort if we can't figure out what CVSROOT should be (all this is in cvs-buildpackage proper). closes: Bug#101822 -- Manoj Srivastava Thu, 5 Jul 2001 15:23:08 -0500 cvs-buildpackage (3.29) unstable; urgency=low * A patch from Henrique de Moraes Holschuh fixes a missing quote, as well as providing other clean up. closes: Bug#96713 * ore -> more. closes: Bug#96741 * Fixed typo and other problems with an error echo in cvs-co-upgrade. Thanks to Julian Gilbey for catching this. closes: Bug#96742 * Fix cvs-co-upgrade with a different reg exp for building lists of files, again thanks to Julian Gilbey . close: Bug#96743 -- Manoj Srivastava Tue, 8 May 2001 17:30:51 -0500 cvs-buildpackage (3.28) unstable; urgency=low * Handle source which unpacks flat (i.e., not into one single directory). closes: Bug#86048 * Added support for user specified cvs tags, and user specified upstream cvs tags. These assume you know what you are doing. closes: Bug#87866 * Mentioned ~.cvsdeb.conf in the README and the HOWTO. It already was there in all the man pages. closes: Bug#89198 * Added a hook script in cvs-buildpackage that is to be called before invoking dpkg-buildpackage. closes: Bug#94381 * documented the use of use changelog in cvs-inject and cvs-upgrade. closes: Bug#87190 -- Manoj Srivastava Sat, 5 May 2001 00:47:32 -0500 cvs-buildpackage (3.27) unstable; urgency=low * Fixed single wuote --> double wuote thinko in cvs-inject. closes: Bug#84418 * Fixed test in cvs-inject so that it does not produce a diagnostic. closes: Bug#84882 -- Manoj Srivastava Sun, 4 Feb 2001 17:35:50 -0600 cvs-buildpackage (3.26) unstable; urgency=low * Matt Zimmerman has an interesting idea that it is merely oe CVS dir check that is keeping cvs-inject from being to inject multiple versions of a debian source package in sequence. Thus, this version of cvs-inject should be idempotent. -- Manoj Srivastava Fri, 2 Feb 2001 14:42:13 -0600 cvs-buildpackage (3.25) unstable; urgency=low * Made the initial import CVS log contain more useful information. Thanks to a patch from Matt Zimmerman . closes: Bug#84418 -- Manoj Srivastava Thu, 1 Feb 2001 20:18:34 -0600 cvs-buildpackage (3.24) unstable; urgency=low * Added an additional check to see if the debian diff creates spurious CVS dirs or symbolic links. Also reset the variable user input was dumped into in various places. closes: Bug#84337 * Fixed a manpage typo. closes: Bug#84246 * In cvs upgrade, when we are asked to tag the source automatically, we should delete tag and retag, rather than merely use tag -F, since that causes zombies to spring out of the attic. -- Manoj Srivastava Wed, 31 Jan 2001 23:31:38 -0600 cvs-buildpackage (3.23) unstable; urgency=low * Added a caveat about the recreated orig.tar.gz not being the same as the pristine sources, and even different for consecutive runs of cvs-buildpackage. closes: Bug#82208 * it is really cvs-co-upgrade, not pkg-upgrade. closes: Bug#82883 * Added some more hints that the workdir we are talking about is where the program does its work, not where you should keep your checked out sources. closes: Bug#80328 -- Manoj Srivastava Tue, 30 Jan 2001 01:52:38 -0600 cvs-buildpackage (3.22) unstable; urgency=low * Fixed a typo in the HOWTO. closes: Bug#71140 * added a note to the man page explaining working dirs. closes: Bug#80328 -- Manoj Srivastava Tue, 26 Dec 2000 23:36:17 -0600 cvs-buildpackage (3.21) unstable; urgency=low * Do not run install-docs -r in prerm, since we do not isntall any in the first place. closes: Bug#69566 -- Manoj Srivastava Mon, 21 Aug 2000 09:21:18 -0500 cvs-buildpackage (3.20) unstable; urgency=low * Added the configuration option/ command line option/ENV variable to allow people to set toher build programs rather than dpkg-buildpackage (debbuild was suggested as an option). Also, one could just set this command to 'chroot /opt/root dpkg-buildpackage' and build in a chroot jail. closes: Bug#66188, Bug#66189 -- Manoj Srivastava Tue, 11 Jul 2000 23:40:10 -0500 cvs-buildpackage (3.19) unstable; urgency=low * cvs-inject now removes CVS directories that were created by the debian diff file. This should also work with upstream sources that also contain the debian dir natively; and should not affect debian-only packages. closes: Bug#65541 -- Manoj Srivastava Tue, 11 Jul 2000 02:21:56 -0500 cvs-buildpackage (3.18) frozen unstable; urgency=low * Added a dependency on fileutiles >=4.0, since the package would fail to install with older fileutils. -- Manoj Srivastava Tue, 28 Mar 2000 02:59:59 -0600 cvs-buildpackage (3.17) frozen unstable; urgency=low * Fixed a couple of typos in cvs-inject, which could potentially cause data loss (changed an test -f test into a test -e test). This needs to go into potato. * Use absolute links when related links would not work, for the /usr/doc/latex2tml symlink. * Add into the docs that the scratch working directory should not be a subdirectory of CVSROOT, since cvs is very likely to refuse to export a package there. -- Manoj Srivastava Wed, 22 Mar 2000 01:21:33 -0600 cvs-buildpackage (3.16) frozen unstable; urgency=low * Fixed typos in cvs-upgrades informational output. closes: Bug#58564 * Fixed an upgrade bug when /usr/doc happens to be a symlink, and does not point to /usr/share/doc. A couple of people were bitten by this. -- Manoj Srivastava Mon, 28 Feb 2000 22:27:05 -0600 cvs-buildpackage (3.15) frozen unstable; urgency=low * The postinst was vulnerable to being affected by symlinks (if, for some reason, the prerm failed). This has happended for latex2html; and created a grave bug. * There was a bug in the postinst in a case statement, that caused installation to fail for certain situations. * Also fixed an lintian warning -- Manoj Srivastava Tue, 8 Feb 2000 14:47:27 -0600 cvs-buildpackage (3.14) frozen unstable; urgency=medium * Un backwhacked tildes in man pages. closes: Bug#50884 * Do not use $() in a double quote context. closes: Bug#47646 * Added a strict check configuration option. closes: Bug#50839 * Fix a typo: %changes -> $changes. closes: Bug#52758 -- Manoj Srivastava Tue, 25 Jan 2000 16:08:53 -0600 cvs-buildpackage (3.13) unstable; urgency=low * Made cvs-inject (optionally) more permissive. I did not apply the patch in the big report directly, since the package being injected is in violation of policy; and I would rather let the human decide. Courtesy of Joey Hess closes: Bug#44041 * Added blank space in directory name handling for cvs-inject, using the patrch in the report. Courtesy of Joey Hess (this is really ugly, joey) closes: Bug#44564 * Documented the fact that one has to update the working directory manually after cvs-upgrade is run. closes: Bug#45327 * Moved to FHS compliance. -- Manoj Srivastava Fri, 8 Oct 1999 06:56:37 -0500 cvs-buildpackage (3.12) unstable; urgency=low * Finally fix exessive quoting (I hope). closes: Bug#43639 * Added a work around for CVS bug reported in 24585. closes: Bug#43409 -- Manoj Srivastava Mon, 30 Aug 1999 22:17:47 -0500 cvs-buildpackage (3.11) unstable; urgency=high * discovered a thinko because of which cvs-buildpackage was ignoring module prefixes in some cases. Reported by Joey Hess. * Added a section detailing the predefined variable to the cvsdeb.conf.5 man page. * Added support for using the Debian changelog entry as the CVS entry in cvs-inject and cvs-upgrade (conf file and env variable, no command line option yet). -- Manoj Srivastava Thu, 19 Aug 1999 10:58:52 -0500 cvs-buildpackage (3.10) unstable; urgency=low * Removed quotes around the file names in arg to rm. closes: Bug#43191 * Mentioned in various places in the HOWTO that if you use the CVSROOT/debian dir, you also need to set conf_prefix=debian in the config file. closes: Bug#41109 * I have been unable to reproduce 34545, and after several unsuccesful attempts to get additional information from the reporter, I am closing this report. closes: Bug#34545 -- Manoj Srivastava Thu, 19 Aug 1999 02:30:06 -0500 cvs-buildpackage (3.09) unstable; urgency=low * Added patch from Karl M. Hegbloom * cvs-upgrade (argv): Ditto. * cvs-inject (opt_dsc): Remove quotes around $CVS_QUIET so that when it is empty, there isn't a null argv[n] passed to `cvs'; the argument just goes away. * Use an array variable to pass args to $action whenever there are arguments to be passed that have spaces in them. * closes: Bug#38905 -- Manoj Srivastava Sat, 5 Jun 1999 23:30:05 -0500 cvs-buildpackage (3.08) unstable; urgency=low * Changed read $ans to read ans all over the place. closes: Bug#38532 -- Manoj Srivastava Wed, 2 Jun 1999 17:36:05 -0500 cvs-buildpackage (3.07) unstable; urgency=low * Fix logical error in handling CVSDEB_PREFIX. closes:Bug#37808 -- Manoj Srivastava Sun, 16 May 1999 22:39:27 -0500 cvs-buildpackage (3.06) unstable; urgency=low * Added a new option (-F) to cvs-inject and cvs-upgrade, since they were really choking on symbolic links. There are two things CVS may choke on symbolic links and CVS directories in the source tree. Also, there are times when one may not want to honour the upstream files. Without this option, the cvs-inject program shall exit with an error message. This option causes cvs-inject to ask whether you want to delete the offending files. If you answer y, it removes them and continues; else it shall exit with an error message. This argument overrides the settings in the environment variable CVSDEB_FORCECLEAN, which in turn overrides the setting in the configuration file, conf_forceclean. This seems to work for me, but my tests have been contrived. I'd appreciate it if people were to test these. closes: Bug#34457, Bug#35538 -- Manoj Srivastava Fri, 14 May 1999 23:50:12 -0500 cvs-buildpackage (3.05) unstable; urgency=low * Actually add cvs-co-upgrade -- Manoj Srivastava Thu, 13 May 1999 16:33:26 -0500 cvs-buildpackage (3.04) unstable; urgency=low * Added documentation to clarify what we mean by work directory. closes: BUG#34682 * Allow the user to specify the default import substitution metod (-ko by default). closes: BUG#34335 * Fixed typo in cvs-upgrade man page. closes: BUG#36593 * Added cvs-co-upgrade to handle differences between two upstream versions. closes: Bug#34544, Bug#33464 -- Manoj Srivastava Thu, 13 May 1999 15:43:20 -0500 cvs-buildpackage (3.03) unstable; urgency=low * Changed regexps that determine the upstream and debian versions to account for non-numeric debian revisions, and upstream versions that have hyphens in them. The first part closes: 33257 * Added support for including package name in the CVS tag, allowing for overlapping packages. closes: Bug#32836 * Extended the patch for cvs-buildpackage to cvs-inject and cvs-upgrade, to keep al components in sync. -- Manoj Srivastava Mon, 22 Feb 1999 02:43:34 -0600 cvs-buildpackage (3.02) unstable; urgency=low * Changed the FSF address in the comments in the man pages. The copyright file was already fine. fixes: BUG#32198 -- Manoj Srivastava Wed, 27 Jan 1999 00:35:50 -0600 cvs-buildpackage (3.01) unstable; urgency=low * Added in spelling fixes and minor modifications from Adam Di Carlo. (This was much appreciated). closes: BUG#30105 * Make cvs-upgrade also advice using the -d flag to cvs-update (also from Adam Di Carlo). closes: BUG#30106 -- Manoj Srivastava Sat, 28 Nov 1998 10:59:14 -0600 cvs-buildpackage (2.12) unstable; urgency=low * Fixed documentation rules about how the debian revision tag is generated. closes: BUG#28451 * Mentioned in cvs-upgrade how to upgrade a working CVS directory using cvs update. * Ran a spell check on the HOWTO and README. closes: BUG#28452 * Fixed a typo in cvs-inject.1, it should be upstream_version_, not upstream_versions_. closes: BUG#28459 * Documented conf_prefix in cvsdeb.conf.5. closes: BUG#28460 * Fixed a typo in cvs-upgrade that confused it while upgrading a Debian-only package. The apparent unquoted arguments to -m are a display artifact, as the report noted, the command does the right thing anyway. I do not think it is worth the effort required in fixing the anomaly, but I shall do so if there is sufficient demand. closes: BUG#28461 * Fixed more typos in cvsdeb.conf.5. Mentioned ~/.cvsdeb.conf there as well. Escaped the ~ in cvs-buildpackage.conf.1 closes: BUG#28536 * Put in a safety check in cvs-inject to make it more paranoid about changing dirs. I can't reportduce problems people seem to be having. -- Manoj Srivastava Wed, 28 Oct 1998 17:00:37 -0600 cvs-buildpackage (2.11) unstable; urgency=low * Use /tmp/$$/. directory instead of /tmp/$$.x files. close: Bug#27842 -- Manoj Srivastava Wed, 14 Oct 1998 01:17:42 -0500 cvs-buildpackage (2.10) unstable; urgency=low * The cvs-buildpackage program now honors the CVSDEB_PREFIX environment variable, just like cvs-inject and cvs-upgrade programs. It does not honor the configuration variable conf_prefix (it never has), and this is now documented. -- Manoj Srivastava Wed, 23 Sep 1998 02:56:51 -0500 cvs-buildpackage (2.09) unstable; urgency=low * Fix a couple of typos involving version and name specification. closes: BUG#26973, BUG#26974 -- Manoj Srivastava Wed, 23 Sep 1998 01:21:38 -0500 cvs-buildpackage (2.08) unstable; urgency=low * cvs-upgrade: update the documents emphasizing that the code needs to be checked out again using cvs co -j -j options. -- Manoj Srivastava Fri, 18 Sep 1998 02:25:27 -0500 cvs-buildpackage (2.07) unstable; urgency=low * Do not include the name of the module as part of tag when trying to reconstitute the orig file. closes: BUG#26632 -- Manoj Srivastava Fri, 11 Sep 1998 12:54:12 -0500 cvs-buildpackage (2.06) unstable; urgency=low * Added missing quote in cvs-inject. -- Manoj Srivastava Mon, 7 Sep 1998 04:53:00 -0500 cvs-buildpackage (2.05) unstable; urgency=low * cd to the working dir for cvs-buildpackage to work around a bug in CVS. closes: BUG#26251 -- Manoj Srivastava Tue, 1 Sep 1998 00:03:34 -0500 cvs-buildpackage (2.04) unstable; urgency=low * Removed most unneeded eval invocations from the scripts. Thanks to Ian Jackson for piting this out. * Make dpkg_options a Bash array variable, so that one can transparently pass arguments off to dpkg-buildpackage. Without this, we were splitting up spaces in arguments while passing it to dpkg-buildpackage. closes: BUG#26237 * Moved the verbose help section in cvs-upgrade to the front, so that error messages during upgrade do not get lost. * Document that conf_dpkg_options is also an array variable now. -- Manoj Srivastava Sun, 30 Aug 1998 13:46:48 -0500 cvs-buildpackage (2.03) unstable; urgency=low * Incorporated patch for the HOWTO file from Adam P. Harris which fixes typos and clariies a few things. closes: BUG#25550 * Added a dependency for cvs (should have done that earlier), since we need it to do _anything_. closes: BUG#25551 -- Manoj Srivastava Tue, 11 Aug 1998 15:47:47 -0500 cvs-buildpackage (2.02) unstable; urgency=low * Anchor the regular expressions in cvs-inject and cvs-buildpackage. The upstream version would otherwise be parsed incorrectly. -- Manoj Srivastava Fri, 24 Jul 1998 14:00:48 -0500 cvs-buildpackage (2.01) unstable; urgency=low * Modified the man pages to indicate how users may import files which are normally ignored by CVS. * Modified the conffile to report the real location of the defaults. Took the option to fix spellings. Patch by "Karl M. Hegbloom" closes: Bug#23701 * Added even more documentation to emphasize the fact that setting the working directory directly makes the root directory setting irrelevant; in other words, the root directory is merely used to derive a default for the working directory. closes: BUG#23627 -- Manoj Srivastava Tue, 14 Jul 1998 11:51:42 -0500 cvs-buildpackage (1.14) frozen unstable; urgency=low * BUG-FIX: Updated the cvsdeb.conf.5 man page to reflect new options included in the previous releases. * cvs-buildpackage now checks for and offers to abort if there are uncommitted files in the source tree. * Now, one may opt to have a default mechanism of gaining root access for a buildo (I always use fakeroot, and can now put it in /etc/cvsdeb.conf or ~/.cvsdeb,conf). One can now just call cvs-buildpackage with no options and build a package ;-) -- Manoj Srivastava Fri, 3 Apr 1998 10:52:12 -0600 cvs-buildpackage (1.13) unstable; urgency=low * Both cvs-inject and cvs-upgrade warn about the presence of symbolic links in the upstream source. CVS ignores these files, and without the warning data could be lost. The operation continues without error. * Both cvs-inject and cvs-upgrade warn about the presence of CVS directories in upstream source. This cannot be handled, and the operation aborts gracefully, and informs the user fo the offending directories. * There is a new option to cvs-buildpackage (with env var and config file support too) to force a cvs tag -F operation before exporting the sources. This only works in the source directory (you know cvs-buildpackage couls be called from anywhere, as long as you give the repository, package name, and version, right?), since cvs tag does not make sense otherwise. The default is the old behaviour. closes: Bug#20229. -- Manoj Srivastava Wed, 1 Apr 1998 16:10:34 -0600 cvs-buildpackage (1.12) unstable; urgency=low * Fixed documentation typos. closes: Bug#19527 -- Manoj Srivastava Sat, 14 Mar 1998 23:34:27 -0600 cvs-buildpackage (1.11) unstable; urgency=low * Fixed typos in cvs-upgrade; and fixed the debian tag. closes: Bug#19528 * Moved the setting of cvsmodule lower in cvs-inject, so that $package is set. Closes: Bug#19612 -- Manoj Srivastava Sat, 14 Mar 1998 18:03:02 -0600 cvs-buildpackage (1.10) unstable; urgency=low * Added a missing quote to cvs-upgrade -- Manoj Srivastava Fri, 6 Mar 1998 01:01:24 -0600 cvs-buildpackage (1.9) unstable; urgency=low * Fixed typo in extended description. closes: Bug:18944 -- Manoj Srivastava Thu, 5 Mar 1998 18:42:34 -0600 cvs-buildpackage (1.8) unstable; urgency=low * Changed >$2 into >&2 as it should have been in the first place in cvs-upgrade. * cvs-upgrade and cvs-inject now follow cvs-buildpackage wrt -M and -x; -M is the module name, in toto, -x gives a default prefix to the module name, and can be set in the config file. Both may be set in env variables. closes: Bug#18734 * All programs now look for and read ~/.cvsdeb.conf. closes: Bug#18742 -- Manoj Srivastava Mon, 2 Mar 1998 02:22:26 -0600 cvs-buildpackage (1.7) unstable; urgency=low * Fixed a typo in cvs-inject. closes: Bug#18523 * Note that the current behaviour of cvs-{inject,upgrade} is to ignore files that match the default list of files to be ignored (this is built into cvs); and that any .cvsignore files in the upstream sources shall be honoured. This should be fine as long as upstream sources do not include files that match cvs ignore patterns. Currently, the default list of ignored file name patterns is: RCS SCCS CVS CVS.adm RCSLOG cvslog.* tags TAGS .make.state .nse_depinfo *~ #* .#* ,* _$* *$ *.old *.bak *.BAK *.orig *.rej .del-* *.a *.olb *.o *.obj *.so *.exe *.Z *.elc *.ln core -- Manoj Srivastava Mon, 23 Feb 1998 16:28:18 -0600 cvs-buildpackage (1.6) unstable; urgency=low * Upgraded to standards version 2.4.0.0 * Fixed FSF address in the copyright files. * Added cvs-inject * added cvs-upgrade * This is now a complete set or programs for using cvs in debian development. * Updated the HOWTO for the new programs. * Expanded the description. This version satisfies all know lintian warnings. -- Manoj Srivastava Sat, 21 Feb 1998 01:59:26 -0600 cvs-buildpackage (1.5) unstable; urgency=low * Make sure that the copyright file is not compressed. closes:Bug#14382 * Added documentation about cvs TAG conventions, and the fact that we ignore the epoch number in determining cvs tags (this is not a problem since cvs does not have to order the debian versions) * Preserve file modification information from the pristine sources. * *Not included* cvs-inject and cvs-upgrade, as they are not in a releasable state. -- Manoj Srivastava Mon, 1 Dec 1997 14:32:43 -0600 cvs-buildpackage (1.04) unstable; urgency=low * Made the rootget commands always use full path name for , so it works with fakeroot. (specifically, two rm commands in the script were changed to /bin/rm). Reported by Andreas Jellinghaus . * Further enhanced the HOWTO with suggestions from Andreas Jellinghaus . -- Manoj Srivastava Thu, 21 Aug 1997 14:53:20 -0500 cvs-buildpackage (1.03) unstable; urgency=low * Fixed a typo in the README file. This fixes BUG#12196. * Fixed a few typos in the HOWTO document (converted a few hyphens `-' into underscores `_'). * The HOWTO example were putting the package name into the tags, updated the HOWTO to reflect the current working of the script (which does not put package names in tags). * Mentioned the example script cvs-pkginit in the HOWTO. * Rewrote the update import section of the HOWTO. Went through the whole HOWTO and updated the tags shown in the examples to be consistent, and reflect the script. * I do apologize for not checking the HOWTO, and people should not blame joey for this. He wrote an excellent treatise, but cvs-buildpackage is still very inchoate, and it changed from when joey wrote the HOWTO. It is my fault that I did not update the HOWTO before the last release. -- Manoj Srivastava Thu, 21 Aug 1997 11:24:03 -0500 cvs-buildpackage (1.02) unstable; urgency=low * Added various things based on suggestions (and sample code) from Tom Lees . Specifically, the user may now specify o) The cvs tag to use (rather than constructing one from the version number) o) The CVS default module prefix (maybe the modules file should be fixed?) o) an option to clean out the exported source after a successful build * Also, the script now attempts to check out the changelog file to check for the version number, instead of requiring that it be provided when not working inside a checked out source tree. So, it tests if it is user provided, or else it parses debian/changelog, or else it looks for and checks out changelog from the cvs module name if provided, or else, it constructs a module name from the prefix (if any) and the package name and tries checking out the changelog file (whew). * Also, if the original sources are not found, it attempts to recreate it by checking out the latest vendor branch. * Better formatting of the debug output * The cvs operations are quieter than they used to be. * Added the example script cvs-pkginit, which shows how to enter a package into CVS. * Also added a HOWTO document from Martin (Joey) Schulze (joey@debian.org) -- Manoj Srivastava Wed, 20 Aug 1997 16:26:58 -0500 cvs-buildpackage (1.01) unstable; urgency=low * Initial release. -- Manoj Srivastava Sun, 30 May 1997 22:33:47 -0500 cvs-buildpackage-5.23/debian/conffiles0000644000232200023220000000002111005261405020135 0ustar pbuilderpbuilder/etc/cvsdeb.conf cvs-buildpackage-5.23/debian/common/0000755000232200023220000000000011005261406017542 5ustar pbuilderpbuildercvs-buildpackage-5.23/debian/common/targets.mk0000644000232200023220000003302111005261406021543 0ustar pbuilderpbuilder############################ -*- Mode: Makefile -*- ########################### ## targets.mk --- ## Author : Manoj Srivastava ( srivasta@glaurung.green-gryphon.com ) ## Created On : Sat Nov 15 01:10:05 2003 ## Created On Node : glaurung.green-gryphon.com ## Last Modified By : Manoj Srivastava ## Last Modified On : Tue Oct 9 01:50:58 2007 ## Last Machine Used: anzu.internal.golden-gryphon.com ## Update Count : 95 ## Status : Unknown, Use with caution! ## HISTORY : ## Description : The top level targets mandated by policy, as well as ## their dependencies. ## ## arch-tag: a81086a7-00f7-4355-ac56-8f38396935f4 ## ## 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ## ############################################################################### ####################################################################### ####################################################################### ############### Miscellaneous ############### ####################################################################### ####################################################################### source diff: @echo >&2 'source and diff are obsolete - use dpkg-source -b'; false testroot: @test $$(id -u) = 0 || (echo need root priviledges; exit 1) checkpo: $(CHECKPO) # arch-buildpackage likes to call this prebuild: # OK. We have two sets of rules here, one for arch dependent packages, # and one for arch independent packages. We have already calculated a # list of each of these packages. # In each set, we may need to do things in five steps: configure, # build, install, package, and clean. Now, there can be a common # actions to be taken for all the packages, all arch dependent # packages, all all independent packages, and each package # individually at each stage. ########################################################################### # The current code does a number of things: It ensures that the highest # # dependency at any stage (usually the -Common target) depends on the # # stamp-STAGE of the previous stage; so no work on a succeeding stage can # # start before the previous stage is all done. # ########################################################################### ########################################################################### # Next, all targets that have work performed in them do not have stamp # # files on their own, and thus are not depended on directly by other # # targets. Instead, they depend on and are depended up by intermediate # # targets in which no work is done except to create stamp files. Other # # targets just depend on the stamp files; so the build system does not do # # work twice -- targets, which are up to date, are not executed again. # ########################################################################### ####################################################################### ####################################################################### ############### Configuration ############### ####################################################################### ####################################################################### # Work here CONFIG-common:: testdir $(REASON) $(checkdir) stamp-arch-conf: CONFIG-common $(REASON) $(checkdir) @echo done > $@ stamp-indep-conf: CONFIG-common $(REASON) $(checkdir) @echo done > $@ STAMPS_TO_CLEAN += stamp-arch-conf stamp-indep-conf # Work here CONFIG-arch:: stamp-arch-conf $(REASON) $(checkdir) CONFIG-indep:: stamp-indep-conf $(REASON) $(checkdir) stamp-configure-arch: CONFIG-arch $(REASON) @echo done > $@ stamp-configure-indep: CONFIG-indep $(REASON) @echo done > $@ STAMPS_TO_CLEAN += stamp-configure-arch stamp-configure-indep # Work here $(patsubst %,CONFIG/%,$(DEB_ARCH_PACKAGES)) :: CONFIG/% : stamp-configure-arch $(REASON) $(checkdir) $(patsubst %,CONFIG/%,$(DEB_INDEP_PACKAGES)) :: CONFIG/% : stamp-configure-indep $(REASON) $(checkdir) configure-arch-stamp: stamp-configure-arch $(patsubst %,CONFIG/%,$(DEB_ARCH_PACKAGES)) $(REASON) @echo done > $@ configure-indep-stamp: stamp-configure-indep $(patsubst %,CONFIG/%,$(DEB_INDEP_PACKAGES)) $(REASON) @echo done > $@ STAMPS_TO_CLEAN += configure-arch-stamp configure-indep-stamp # required configure-arch: configure-arch-stamp $(REASON) configure-indep: configure-indep-stamp $(REASON) stamp-configure: configure-arch configure-indep $(REASON) @echo done > $@ # required configure: stamp-configure $(REASON) STAMPS_TO_CLEAN += stamp-configure ####################################################################### ####################################################################### ############### Build ############### ####################################################################### ####################################################################### # Work here BUILD-common:: testdir stamp-configure $(REASON) $(checkdir) stamp-arch-build: BUILD-common $(REASON) $(checkdir) @echo done > $@ stamp-indep-build: BUILD-common $(REASON) $(checkdir) @echo done > $@ STAMPS_TO_CLEAN += stamp-arch-build stamp-indep-build # sync. Work here BUILD-arch:: stamp-arch-build $(REASON) $(checkdir) BUILD-indep:: stamp-indep-build $(REASON) $(checkdir) stamp-build-arch: BUILD-arch $(REASON) @echo done > $@ stamp-build-indep: BUILD-indep $(REASON) @echo done > $@ STAMPS_TO_CLEAN += stamp-build-arch stamp-build-indep # Work here $(patsubst %,BUILD/%,$(DEB_ARCH_PACKAGES)) :: BUILD/% : stamp-build-arch $(REASON) $(checkdir) $(patsubst %,BUILD/%,$(DEB_INDEP_PACKAGES)) :: BUILD/% : stamp-build-indep $(REASON) $(checkdir) build-arch-stamp: stamp-build-arch $(patsubst %,BUILD/%,$(DEB_ARCH_PACKAGES)) $(REASON) @echo done > $@ build-indep-stamp: stamp-build-indep $(patsubst %,BUILD/%,$(DEB_INDEP_PACKAGES)) $(REASON) @echo done > $@ STAMPS_TO_CLEAN += build-arch-stamp build-indep-stamp # required build-arch: build-arch-stamp $(REASON) build-indep: build-indep-stamp $(REASON) stamp-build: build-arch build-indep $(REASON) @echo done > $@ # required build: stamp-build $(REASON) STAMPS_TO_CLEAN += stamp-build # Work here POST-BUILD-arch-stamp:: build-arch-stamp $(REASON) @echo done > $@ STAMPS_TO_CLEAN += POST-BUILD-arch-stamp POST-BUILD-indep-stamp:: build-indep-stamp $(REASON) @echo done > $@ STAMPS_TO_CLEAN += POST-BUILD-indep-stamp ####################################################################### ####################################################################### ############### Install ############### ####################################################################### ####################################################################### # Work here INST-common:: testdir stamp-build POST-BUILD-arch-stamp POST-BUILD-indep-stamp $(checkdir) $(REASON) stamp-arch-inst: INST-common $(REASON) $(checkdir) @echo done > $@ stamp-indep-inst: INST-common $(REASON) $(checkdir) @echo done > $@ STAMPS_TO_CLEAN += stamp-arch-inst stamp-indep-inst # sync. Work here INST-arch:: stamp-arch-inst $(REASON) $(checkdir) INST-indep:: stamp-indep-inst $(REASON) $(checkdir) stamp-install-arch: INST-arch $(REASON) @echo done > $@ stamp-install-indep: INST-indep $(REASON) @echo done > $@ STAMPS_TO_CLEAN += stamp-install-arch stamp-install-indep # Work here $(patsubst %,INST/%,$(DEB_ARCH_PACKAGES)) :: INST/% : testroot stamp-install-arch $(REASON) $(checkdir) $(patsubst %,INST/%,$(DEB_INDEP_PACKAGES)) :: INST/% : testroot stamp-install-indep $(REASON) $(checkdir) install-arch-stamp: stamp-install-arch $(patsubst %,INST/%,$(DEB_ARCH_PACKAGES)) $(REASON) $(checkdir) @echo done > $@ install-indep-stamp: stamp-install-indep $(patsubst %,INST/%,$(DEB_INDEP_PACKAGES)) $(REASON) $(checkdir) @echo done > $@ STAMPS_TO_CLEAN += install-arch-stamp install-indep-stamp #required install-arch: install-arch-stamp $(REASON) install-indep: install-indep-stamp $(REASON) stamp-install: install-indep install-arch $(REASON) @echo done > $@ #required install: stamp-install $(REASON) STAMPS_TO_CLEAN += stamp-install ####################################################################### ####################################################################### ############### Package ############### ####################################################################### ####################################################################### # Work here BIN-common:: testdir testroot stamp-install $(REASON) $(checkdir) stamp-arch-bin: testdir testroot BIN-common $(REASON) $(checkdir) @echo done > $@ stamp-indep-bin: testdir testroot BIN-common $(REASON) $(checkdir) @echo done > $@ STAMPS_TO_CLEAN += stamp-arch-bin stamp-indep-bin # sync Work here BIN-arch:: testroot stamp-arch-bin $(REASON) $(checkdir) BIN-indep:: testroot stamp-indep-bin $(REASON) $(checkdir) stamp-binary-arch: BIN-arch $(REASON) @echo done > $@ stamp-binary-indep: BIN-indep $(REASON) @echo done > $@ STAMPS_TO_CLEAN += stamp-binary-arch stamp-binary-indep # Work here $(patsubst %,BIN/%,$(DEB_ARCH_PACKAGES)) :: BIN/% : testroot stamp-binary-arch $(REASON) $(checkdir) $(patsubst %,BIN/%,$(DEB_INDEP_PACKAGES)) :: BIN/% : testroot stamp-binary-indep $(REASON) $(checkdir) binary-arch-stamp: stamp-binary-arch $(patsubst %,BIN/%,$(DEB_ARCH_PACKAGES)) $(REASON) $(checkdir) @echo done > $@ binary-indep-stamp: stamp-binary-indep $(patsubst %,BIN/%,$(DEB_INDEP_PACKAGES)) $(REASON) $(checkdir) @echo done > $@ STAMPS_TO_CLEAN += binary-arch-stamp binary-indep-stamp # required binary-arch: binary-arch-stamp $(REASON) binary-indep: binary-indep-stamp $(REASON) stamp-binary: binary-indep binary-arch $(REASON) @echo done > $@ # required binary: stamp-binary $(REASON) @echo arch package = $(DEB_ARCH_PACKAGES) @echo indep packages = $(DEB_INDEP_PACKAGES) STAMPS_TO_CLEAN += stamp-binary ####################################################################### ####################################################################### ############### Clean ############### ####################################################################### ####################################################################### # Work here CLN-common:: testdir $(REASON) $(checkdir) # sync Work here CLN-arch:: CLN-common $(REASON) $(checkdir) CLN-indep:: CLN-common $(REASON) $(checkdir) # Work here $(patsubst %,CLEAN/%,$(DEB_ARCH_PACKAGES)) :: CLEAN/% : CLN-arch $(REASON) $(checkdir) $(patsubst %,CLEAN/%,$(DEB_INDEP_PACKAGES)) :: CLEAN/% : CLN-indep $(REASON) $(checkdir) clean-arch: CLN-arch $(patsubst %,CLEAN/%,$(DEB_ARCH_PACKAGES)) $(REASON) clean-indep: CLN-indep $(patsubst %,CLEAN/%,$(DEB_INDEP_PACKAGES)) $(REASON) stamp-clean: clean-indep clean-arch $(REASON) $(checkdir) -test -f Makefile && $(MAKE) distclean -rm -f $(FILES_TO_CLEAN) $(STAMPS_TO_CLEAN) -rm -rf $(DIRS_TO_CLEAN) -rm -f core TAGS \ `find . ! -regex '.*/\.git/.*' ! -regex '.*/\{arch\}/.*' \ ! -regex '.*/CVS/.*' ! -regex '.*/\.arch-ids/.*' \ ! -regex '.*/\.svn/.*' \ \( -name '*.orig' -o -name '*.rej' -o -name '*~' -o \ -name '*.bak' -o -name '#*#' -o -name '.*.orig' -o \ -name '.*.rej' -o -name '.SUMS' \) \ -print` clean: stamp-clean $(REASON) ####################################################################### ####################################################################### ############### ############### ####################################################################### ####################################################################### .PHONY: CONFIG-common CONFIG-indep CONFIG-arch configure-arch configure-indep configure \ BUILD-common BUILD-indep BUILD-arch build-arch build-indep build \ INST-common INST-indep INST-arch install-arch install-indep install \ BIN-common BIN-indep BIN-arch binary-arch binary-indep binary \ CLN-common CLN-indep CLN-arch clean-arch clean-indep clean \ $(patsubst %,CONFIG/%,$(DEB_INDEP_PACKAGES)) $(patsubst %,CONFIG/%,$(DEB_ARCH_PACKAGES)) \ $(patsubst %,BUILD/%, $(DEB_INDEP_PACKAGES)) $(patsubst %,BUILD/%, $(DEB_ARCH_PACKAGES)) \ $(patsubst %,INST/%, $(DEB_INDEP_PACKAGES)) $(patsubst %,INST/%, $(DEB_ARCH_PACKAGES)) \ $(patsubst %,BIN/%, $(DEB_INDEP_PACKAGES)) $(patsubst %,BIN/%, $(DEB_ARCH_PACKAGES)) \ $(patsubst %,CLEAN/%, $(DEB_INDEP_PACKAGES)) $(patsubst %,CLEAN/%, $(DEB_ARCH_PACKAGES)) \ implode explode prebuild checkpo #Local variables: #mode: makefile #End: cvs-buildpackage-5.23/debian/common/pkgvars.mk0000644000232200023220000001244711005261406021560 0ustar pbuilderpbuilder############################ -*- Mode: Makefile -*- ########################### ## pkgvars.mk --- ## Author : Manoj Srivastava ( srivasta@glaurung.green-gryphon.com ) ## Created On : Sat Nov 15 02:56:30 2003 ## Created On Node : glaurung.green-gryphon.com ## Last Modified By : Manoj Srivastava ## Last Modified On : Thu Jun 15 12:05:46 2006 ## Last Machine Used: glaurung.internal.golden-gryphon.com ## Update Count : 11 ## Status : Unknown, Use with caution! ## HISTORY : ## Description : This is what allows us toseparate out the top level ## targets, by determining which packages needto be built. ## ## arch-tag: 75fcc720-7389-4eaa-a7ac-c556d3eac331 ## ## ## 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 St, Fifth Floor, Boston, MA 02110-1301 USA ## ############################################################################### # The maintainer information. maintainer := $(shell LC_ALL=C dpkg-parsechangelog | grep ^Maintainer: | \ sed 's/^Maintainer: *//') email := srivasta@debian.org # Priority of this version (or urgency, as dchanges would call it) urgency := $(shell LC_ALL=C dpkg-parsechangelog | grep ^Urgency: | \ sed 's/^Urgency: *//') # Common useful variables DEB_SOURCE_PACKAGE := $(strip $(shell egrep '^Source: ' debian/control | \ cut -f 2 -d ':')) DEB_VERSION := $(strip $(shell LC_ALL=C dpkg-parsechangelog | \ egrep '^Version:' | cut -f 2 -d ' ')) DEB_ISNATIVE := $(strip $(shell LC_ALL=C dpkg-parsechangelog | \ perl -ne 'print if (m/^Version:/g && ! m/^Version:.*\-/);')) DEB_DISTRIBUTION := $(strip $(shell LC_ALL=C dpkg-parsechangelog | \ egrep '^Distribution:' | cut -f 2 -d ' ')) DEB_PACKAGES := $(shell perl -e ' \ $$/=""; \ while(<>){ \ $$p=$$1 if m/^Package:\s*(\S+)/; \ die "duplicate package $$p" if $$seen{$$p}; \ $$seen{$$p}++; print "$$p " if $$p; \ }' debian/control ) DEB_INDEP_PACKAGES := $(shell perl -e ' \ $$/=""; \ while(<>){ \ $$p=$$1 if m/^Package:\s*(\S+)/; \ die "duplicate package $$p" if $$seen{$$p}; \ $$seen{$$p}++; \ $$a=$$1 if m/^Architecture:\s*(\S+)/m; \ next unless ($$a eq "all"); \ print "$$p " if $$p; \ }' debian/control ) DEB_ARCH_PACKAGES := $(shell perl -e ' \ $$/=""; \ while(<>){ \ $$p=$$1 if m/^Package:\s*(\S+)/; \ die "duplicate package $$p" if $$seen{$$p}; \ $$seen{$$p}++; \ $$c=""; \ if (/^Architecture:\s*(.*?)\s*$$/sm) { \ @a = split /\s+/, $$1 }; \ for my $$b (@a) { \ next unless ($$b eq "$(DEB_HOST_ARCH)" || \ $$b eq "any"); \ $$c="$$p"; \ } \ print "$$c " if $$c; \ }' debian/control ) # This package is what we get after removing the psuedo dirs we use in rules package = $(notdir $@) #Local variables: #mode: makefile #End: cvs-buildpackage-5.23/debian/common/debconf.mk0000644000232200023220000000642211005261406021477 0ustar pbuilderpbuilder############################ -*- Mode: Makefile -*- ########################### ## debconf.mk --- ## Author : Manoj Srivastava ( srivasta@glaurung.internal.golden-gryphon.com ) ## Created On : Fri Mar 12 11:11:31 2004 ## Created On Node : glaurung.internal.golden-gryphon.com ## Last Modified By : Manoj Srivastava ## Last Modified On : Mon Apr 11 13:19:10 2005 ## Last Machine Used: glaurung.internal.golden-gryphon.com ## Update Count : 20 ## Status : Unknown, Use with caution! ## HISTORY : ## Description : helps with using debconf ## ## arch-tag: 32b933a9-05ad-4c03-97a8-8644745b832a ## ############################################################################### # The idea behind this scheme is that the maintainer (or whoever's # building the package for upload to unstable) has to build on a # machine with po-debconf installed, but nobody else does. # When building with po-debconf, a format 1 (no encoding specifications, # woody-compatible) debian/templates file is generated in the clean target # and shipped in the source package, but a format 2 (UTF8-encoded, # woody-incompatible) debian/templates file is generated in binary-arch # for the binary package only. # When building without po-debconf, the binary package simply reuses the # woody-compatible debian/templates file that was produced by the clean # target of the maintainer's build. # Also, make sure that debian/control has ${debconf-depends} in the # appropriate Depends: line., and use the following in the binary # target: # dpkg-gencontrol -V'debconf-depends=debconf (>= $(MINDEBCONFVER))' # # WARNING!! You need to create the templates.master file before this all works. ifeq (,$(wildcard /usr/bin/po2debconf)) PO2DEBCONF := no MINDEBCONFVER := 0.5 else PO2DEBCONF := yes MINDEBCONFVER := 1.2.0 endif # Hack for woody compatibility. This makes sure that the # debian/templates file shipped in the source package doesn't specify # encodings, which woody's debconf can't handle. If building on a # system with po-debconf installed the binary-arch target will # generate a better version for sarge. Only do this if there is a # templates.master, or else the debian/templates file can get # damamged. ifeq ($(PO2DEBCONF),yes) ifeq (,$(wildcard debian/templates.master)) define CREATE_COMPATIBLE_TEMPLATE echo Not modifying templates endef else define CREATE_COMPATIBLE_TEMPLATE echo 1 > debian/po/output po2debconf debian/templates.master > debian/templates rm -f debian/po/output endef endif else define CREATE_COMPATIBLE_TEMPLATE echo Not modifying templates endef endif ifeq ($(PO2DEBCONF),yes) ifeq (,$(wildcard debian/templates.master)) define INSTALL_TEMPLATE echo using old template endef else define INSTALL_TEMPLATE po2debconf debian/templates.master > debian/templates endef endif else define INSTALL_TEMPLATE echo using old template endef endif # the tool podebconf-report-po is also a great friend to have in such # circumstances define CHECKPO @for i in debian/po/*.po; do \ if [ -f $$i ]; then \ echo \"Checking: $$i\"; \ msgmerge -U $$i debian/po/templates.pot; \ msgfmt -o /dev/null -c --statistics $$i; \ fi; \ done endef cvs-buildpackage-5.23/debian/common/checklibs0000755000232200023220000000556211005261406021427 0ustar pbuilderpbuilder#! /bin/sh # -*- Mode: Sh -*- # checklibs.sh --- # Author : Manoj Srivastava ( srivasta@glaurung.internal.golden-gryphon.com ) # Created On : Fri Sep 29 15:36:22 2006 # Created On Node : glaurung.internal.golden-gryphon.com # Last Modified By : Manoj Srivastava # Last Modified On : Fri Sep 29 22:53:27 2006 # Last Machine Used: glaurung.internal.golden-gryphon.com # Update Count : 43 # Status : Unknown, Use with caution! # HISTORY : # Description : # # arch-tag: 8ba11489-77fa-45a0-92c4-9c5b162ee119 # # 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # # Make sure we abort on error set -e progname="$(basename \"$0\")" trap 'rm -f search_patterns.txt;' ALRM HUP INT PIPE TERM ABRT FPE BUS QUIT SEGV ILL EXIT # Find all undefined symbols in all ELF objects in this tree readelf -s -D -W $(find . -type f -print0 | xargs -0r file | grep " ELF" | \ awk '{print $1}' | sed -e 's/:$//') | grep UND | grep -v LOCAL | perl -ple 's/.*\s(\S+)\s*$/\^$1\$/g' | sort -u > search_patterns.txt; # Find all the libraries needed in this tree objdump -T --private-headers $(find . -type f -print0 | xargs -0r file | grep " ELF" | \ awk '{print $1}' | sed -e 's/:$//') | grep NEEDED | sort -u | awk '{print $2}' | while read lib; do # For each library, see where it lives o the file system LIB= for library_dir in "/lib" "/usr/lib" $EXTRA_LIBRARY_PATHS; do if [ -e "$library_dir/$lib" ]; then LIB="$library_dir/$lib"; break fi done if [ -z "$LIB" ]; then echo >&2 "Can't find $lib" continue fi # If we fond the library, find what symbols it defines, and if these symbols # are some that we need if readelf -s -D -W $LIB | grep -v UND | perl -ple 's/.*\s(\S+)\s*$/$1/g' | \ sort -u | grep -q -f search_patterns.txt ; then # Library provides at least some symbols we need if [ -n "$DEBUG" ]; then echo "Found $LIB"; fi else # Library does not provide any symbols we need echo "$LIB" ; fi done # Get rid of the intermediate file rm -f search_patterns.txt; exit 0 cvs-buildpackage-5.23/debian/common/copt.mk0000644000232200023220000000172511005261406021045 0ustar pbuilderpbuilder############################ -*- Mode: Makefile -*- ########################### ## copt.mk --- ## Author : Manoj Srivastava ( srivasta@glaurung.green-gryphon.com ) ## Created On : Sat Nov 15 02:48:40 2003 ## Created On Node : glaurung.green-gryphon.com ## Last Modified By : Manoj Srivastava ## Last Modified On : Sat Nov 15 02:49:07 2003 ## Last Machine Used: glaurung.green-gryphon.com ## Update Count : 1 ## Status : Unknown, Use with caution! ## HISTORY : ## Description : ## ## arch-tag: a0045c20-f1b3-4852-9a4b-1a33ebd7c1b8 ## ############################################################################### CC = cc CFLAGS = -O2 PREFIX := /usr # Policy 10.1 says to make this the default CFLAGS += -g ## ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS))) ## endif ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) STRIP += -s LDFLAGS += -s INT_INSTALL_TARGET = install else INT_INSTALL_TARGET = install endif cvs-buildpackage-5.23/debian/common/automake.mk0000644000232200023220000000271011005261406021701 0ustar pbuilderpbuilder############################ -*- Mode: Makefile -*- ########################### ## automake.mk --- ## Author : Manoj Srivastava ( srivasta@glaurung.green-gryphon.com ) ## Created On : Sat Nov 15 02:47:23 2003 ## Created On Node : glaurung.green-gryphon.com ## Last Modified By : Manoj Srivastava ## Last Modified On : Sat Nov 15 02:47:53 2003 ## Last Machine Used: glaurung.green-gryphon.com ## Update Count : 1 ## Status : Unknown, Use with caution! ## HISTORY : ## Description : ## ## arch-tag: 1fabe69b-7cc8-4ecc-9411-bc5906b19857 ## ############################################################################### AUTOCONF_VERSION:=$(shell if [ -e configure ]; then \ grep "Generated automatically using autoconf" \ configure | sed -e 's/^.*autoconf version //g'; \ fi) HAVE_NEW_AUTOMAKE:=$(shell if [ "X$(AUTOCONF_VERSION)" != "X2.13" ]; then \ echo 'YES' ; fi) ifneq ($(strip $(HAVE_NEW_AUTOMAKE)),) ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE)) confflags += --build $(DEB_BUILD_GNU_TYPE) else confflags += --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE) endif else ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE)) confflags += $(DEB_HOST_GNU_TYPE) else confflags += --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE) endif endif cvs-buildpackage-5.23/debian/common/ChangeLog0000644000232200023220000000303711005261406021317 0ustar pbuilderpbuilder2007-10-09 Manoj Srivastava * targets.mk: srivasta@debian.org--lenny/skeleton-make-rules--main--0.1--patch-1 fix dependency tree for targets, allow parralel compilatoin. Many changes, thanks to dot. 2007-09-20 Manoj Srivastava * targets.mk (stamp-clean): srivasta@debian.org--lenny/skeleton-make-rules--main--0.1--base-0 make clean not remove zero sized files. removed the part that cleaned out zero sized files; since there are uses for zero sized files (like, to nuke out files in upstream sources and not inflate the diff. Any zero sized files can still be nuked in the local.mk file. 2006-10-02 Manoj Srivastava * checklibs: srivasta@debian.org--etch/skeleton-make-rules--main--0.1--patch-15 New file, to detect if there are unneeded library dependencies 2006-10-01 Manoj Srivastava * archvars.mk (doit): srivasta@debian.org--etch/skeleton-make-rules--main--0.1--patch-14 Add a macro to execute $(shell ...) macos verbosely to help debugging. 2006-09-15 Manoj Srivastava * targets.mk (stamp-clean): srivasta@debian.org--etch/skeleton-make-rules--main--0.1--patch-13 Exclude version control directories from the generic clean command. 2006-08-23 Manoj Srivastava * pkgvars.mk (DEB_DISTRIBUTION): srivasta@debian.org--etch/skeleton-make-rules--main--0.1--patch-6 Add variable that contains the distribution information cvs-buildpackage-5.23/debian/common/perlvars.mk0000644000232200023220000000210511005261406021727 0ustar pbuilderpbuilder############################ -*- Mode: Makefile -*- ########################### ## perlvars.mk --- ## Author : Manoj Srivastava ( srivasta@glaurung.green-gryphon.com ) ## Created On : Sat Nov 15 02:55:47 2003 ## Created On Node : glaurung.green-gryphon.com ## Last Modified By : Manoj Srivastava ## Last Modified On : Sat Dec 13 13:50:58 2003 ## Last Machine Used: glaurung.green-gryphon.com ## Update Count : 3 ## Status : Unknown, Use with caution! ## HISTORY : ## Description : ## ## arch-tag: a97a01ba-d08d-404d-aa81-572717c03e6c ## ############################################################################### # Perl variables PERL = /usr/bin/perl INSTALLPRIVLIB = $(TMPTOP)/$(shell \ perl -e 'use Config; print "$$Config{'installprivlib'}\n";') INSTALLARCHLIB = $(TMPTOP)/$(shell \ perl -e 'use Config; print "$$Config{'installarchlib'}\n";') INSTALLVENDORLIB =$(TMPTOP)/$(shell \ perl -e 'use Config; print "$$Config{'vendorlibexp'}\n";') CONFIG = INSTALLDIRS=vendor cvs-buildpackage-5.23/debian/common/install_cmds.mk0000644000232200023220000000457711005261406022564 0ustar pbuilderpbuilder######################### -*- Mode: Makefile-Gmake -*- ######################## ## install_cmds.mk --- ## Author : Manoj Srivastava ( srivasta@glaurung.internal.golden-gryphon.com ) ## Created On : Fri Jun 16 14:40:20 2006 ## Created On Node : glaurung.internal.golden-gryphon.com ## Last Modified By : Manoj Srivastava ## Last Modified On : Wed Sep 6 11:43:05 2006 ## Last Machine Used: glaurung.internal.golden-gryphon.com ## Update Count : 9 ## Status : Unknown, Use with caution! ## HISTORY : ## Description : ## ## arch-tag: a38b6a93-2539-4034-9060-ae94d5c8a071 ## ## 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 St, Fifth Floor, Boston, MA 02110-1301 USA ## ############################################################################### # install commands install_file = install -p -o root -g root -m 644 install_script = install -p -o root -g root -m 755 install_program= install -p -o root -g root -m 755 make_directory = install -p -d -o root -g root -m 755 define create_md5sum create_md5sums_fn () { \ cd $$1 ; \ find . -type f \ ! -regex './DEBIAN/.*' \ ! -regex './etc/.*' $(EXTRA_MD5SUM_EXCLUDE) \ -printf '%P\0' | xargs -r0 md5sum > DEBIAN/md5sums ; \ if [ -z "DEBIAN/md5sums" ] ; then \ rm -f "DEBIAN/md5sums" ; \ fi ; \ } ; \ create_md5sums_fn endef #Local variables: #mode: makefile #End: cvs-buildpackage-5.23/debian/common/archvars.mk0000644000232200023220000000775211005261406021717 0ustar pbuilderpbuilder############################ -*- Mode: Makefile -*- ########################### ## archvars.mk --- ## Author : Manoj Srivastava ( srivasta@golden-gryphon.com ) ## Created On : Sat Nov 15 02:40:56 2003 ## Created On Node : glaurung.green-gryphon.com ## Last Modified By : Manoj Srivastava ## Last Modified On : Tue Nov 16 23:36:15 2004 ## Last Machine Used: glaurung.internal.golden-gryphon.com ## Update Count : 5 ## Status : Unknown, Use with caution! ## HISTORY : ## Description : calls dpkg-architecture and sets up various arch ## related variables ## ## arch-tag: e16dd848-0fd6-4c0e-ae66-bef20d1f7c63 ## ## 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 St, Fifth Floor, Boston, MA 02110-1301 USA ## ############################################################################### DPKG_ARCH := dpkg-architecture ifeq ($(strip $(KPKG_ARCH)),um) MAKING_VIRTUAL_IMAGE:=YES endif ifeq ($(strip $(KPKG_ARCH)),xen) MAKING_VIRTUAL_IMAGE:=YES endif ifneq ($(strip $(CONFIG_UM)),) MAKING_VIRTUAL_IMAGE:=YES KPKG_ARCH=um endif ifneq ($(strip $(CONFIG_XEN)),) MAKING_VIRTUAL_IMAGE:=YES ifneq ($(strip $(CONFIG_X86_XEN)$(CONFIG_X86_64_XEN)),) KPKG_SUBARCH=xen else KPKG_ARCH=xen ifeq ($(strip $(CONFIG_XEN_PRIVILEGED_GUEST)),) KPKG_SUBARCH=xenu else KPKG_SUBARCH=xen0 endif endif endif ifdef KPKG_ARCH ifeq ($(strip $(MAKING_VIRTUAL_IMAGE)),) ifneq ($(CROSS_COMPILE),-) ha:=-a$(KPKG_ARCH) endif endif endif # set the dpkg-architecture vars export DEB_BUILD_ARCH := $(shell $(DPKG_ARCH) -qDEB_BUILD_ARCH) export DEB_BUILD_GNU_CPU := $(shell $(DPKG_ARCH) -qDEB_BUILD_GNU_CPU) export DEB_BUILD_GNU_SYSTEM:= $(shell $(DPKG_ARCH) -qDEB_BUILD_GNU_SYSTEM) export DEB_BUILD_GNU_TYPE := $(shell $(DPKG_ARCH) -qDEB_BUILD_GNU_TYPE) export DEB_HOST_ARCH := $(shell $(DPKG_ARCH) $(ha) -qDEB_HOST_ARCH) export DEB_HOST_ARCH_OS := $(shell $(DPKG_ARCH) $(ha) -qDEB_HOST_ARCH_OS \ 2>/dev/null|| true) export DEB_HOST_ARCH_CPU := $(shell $(DPKG_ARCH) $(ha) -qDEB_HOST_ARCH_CPU \ 2>/dev/null|| true) export DEB_HOST_GNU_CPU := $(shell $(DPKG_ARCH) $(ha) -qDEB_HOST_GNU_CPU) export DEB_HOST_GNU_SYSTEM := $(shell $(DPKG_ARCH) $(ha) -qDEB_HOST_GNU_SYSTEM) export DEB_HOST_GNU_TYPE := $(shell $(DPKG_ARCH) $(ha) -qDEB_HOST_GNU_TYPE) # arrgh. future proofing ifeq ($(DEB_HOST_GNU_SYSTEM), linux) DEB_HOST_GNU_SYSTEM=linux-gnu endif ifeq ($(DEB_HOST_ARCH_OS),) ifeq ($(DEB_HOST_GNU_SYSTEM), linux-gnu) DEB_HOST_ARCH_OS := linux endif ifeq ($(DEB_HOST_GNU_SYSTEM), kfreebsd-gnu) DEB_HOST_ARCH_OS := kfreebsd endif endif REASON = @if [ -f $@ ]; then \ echo "====== making $(notdir $@) because of $(notdir $?) ======";\ else \ echo "====== making target $@ [new prereqs: $(notdir $?)]======"; \ fi OLDREASON = @if [ -f $@ ]; then \ echo "====== making $(notdir $@) because of $(notdir $?) ======";\ else \ echo "====== making (creating) $(notdir $@) ======"; \ fi LIBREASON = @echo "====== making $(notdir $@)($(notdir $%))because of $(notdir $?)======" # macro outputing $(1) if DEBUG_DEBIAN_RULES is set, and resolving it # in all cases usage $(call doit,some shell command) doit = $(if $(DEBUG_DEBIAN_RULES),$(warning DEBUG: $(1)))$(shell $(1)) #Local variables: #mode: makefile #End: cvs-buildpackage-5.23/debian/stamp/0000755000232200023220000000000011005261405017375 5ustar pbuilderpbuildercvs-buildpackage-5.23/debian/rules0000755000232200023220000000367611070006711017344 0ustar pbuilderpbuilder#! /usr/bin/make -f ############################ -*- Mode: Makefile; coding: utf-8 -*- ########################### ## rules --- ## Author : Manoj Srivastava ( srivasta@glaurung.green-gryphon.com ) ## Created On : Fri Nov 14 12:33:34 2003 ## Created On Node : glaurung.green-gryphon.com ## Last Modified By : Manoj Srivastava ## Last Modified On : Tue Nov 18 17:46:22 2003 ## Last Machine Used: glaurung.green-gryphon.com ## Update Count : 70 ## Status : Unknown, Use with caution! ## HISTORY : ## Description : ## ## arch-tag: 9a5063f4-1e20-4fff-b22a-de94c1e3d954 ## ## 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ## ############################################################################### # Include dpkg-architecture generated variables include debian/common/archvars.mk # Set variables with information extracted from control and changelog files include debian/common/pkgvars.mk # variables useful for perl packages include debian/common/perlvars.mk # Install commands include debian/common/install_cmds.mk include debian/local-vars.mk include debian/common/copt.mk include debian/common/automake.mk all: @echo nothing to be done include debian/common/targets.mk include debian/local.mk .NOTPARALLEL: #Local variables: #mode: makefile #End: cvs-buildpackage-5.23/debian/copyright0000644000232200023220000000305411005261405020206 0ustar pbuilderpbuilderThis is the Debian Linux packaging scripts for development sources kept in the CVS repository. This package has been written and maintained by Manoj Srivastava . Copyright (c) 1997 Manoj Srivastava All rights reserved. This program is free software; you can redistribute it and/or modify it under the terms of either: a) the GNU General Public License as published by the Free Software Foundation; either version 1, or (at your option) any later version, or b) the "Artistic License" which comes with this Kit. 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 either the GNU General Public License or the Artistic License for more details. You should have received a copy of the Artistic License with this Kit, in the file named "Artistic". If not, I'll be glad to provide one. On Debian GNU/Linux systems, the complete text of the GNU General Public License can be found in `/usr/share/common-licenses/GPL'. The artistic Licence is available as `/usr/share/common-licenses/Artistic'. A copy of the GNU General Public License is also available at . You may also obtain it by writing to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Manoj Srivastava arch-tag: d4250e44-a0e0-4ee0-adb9-2bd74f6eeb27 cvs-buildpackage-5.23/debian/local-vars.mk0000644000232200023220000000252711005261405020653 0ustar pbuilderpbuilder############################ -*- Mode: Makefile -*- ########################### ## local-vars.mk --- ## Author : Manoj Srivastava ( srivasta@glaurung.green-gryphon.com ) ## Created On : Sat Nov 15 10:43:00 2003 ## Created On Node : glaurung.green-gryphon.com ## Last Modified By : Manoj Srivastava ## Last Modified On : Sat Dec 6 10:51:16 2003 ## Last Machine Used: glaurung.green-gryphon.com ## Update Count : 11 ## Status : Unknown, Use with caution! ## HISTORY : ## Description : ## ## arch-tag: 1a76a87e-7af5-424a-a30d-61660c8f243e ## ############################################################################### # Location of the source dir SRCTOP := $(shell if [ "$$PWD" != "" ]; then echo $$PWD; else pwd; fi) TMPTOP = $(SRCTOP)/debian/$(package) LINTIANDIR = $(TMPTOP)/usr/share/lintian/overrides FILES_TO_CLEAN = debian/files debian/buildinfo debian/substvars STAMPS_TO_CLEAN = DIRS_TO_CLEAN = ETCDIR = $(TMPTOP)/etc BINDIR = $(TMPTOP)/usr/bin MANDIR = $(TMPTOP)/usr/share/man MAN1DIR = $(MANDIR)/man1 MAN3DIR = $(MANDIR)/man3 MAN5DIR = $(MANDIR)/man5 define checkdir @test -f debian/rules -a -f cvs-buildpackage || \ (echo Not in correct source directory; exit 1) endef define checkroot @test $$(id -u) = 0 || (echo need root priviledges; exit 1) endef cvs-buildpackage-5.23/cvsdeb.conf.50000644000232200023220000002277111005261404017317 0ustar pbuilderpbuilder.\" Hey, Emacs! This is an -*- nroff -*- source file. .\" Copyright (c) 1997 Manoj Srivastava .\" .\" This is free documentation; 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. .\" .\" The GNU General Public License's references to "object code" .\" and "executables" are to be interpreted as the output of any .\" document formatting or typesetting system, including .\" intermediate and printed output. .\" .\" This manual 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 manual; if not, write to the Free .\" Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA .\" 02111-1307, USA. .\" .\" $Id: cvsdeb.conf.5,v 1.18 2003/08/18 19:01:54 srivasta Exp $ .\" .TH CVSDEB.CONF 5 "Feb 21 1998" "Debian" "Debian GNU/Linux manual" .\" NAME should be all caps, SECTION should be 1-8, maybe w/ subsection .\" other parms are allowed: see man(7), man(1) .SH NAME cvsdeb.conf \- site\-wide configuration file for .B cvs\-buildpackage and friends .SH SYNOPSIS .I /etc/cvsdeb.conf .SH "DESCRIPTION" The file .I /etc/cvsdeb.conf is actually a .BR "Bourne Shell" snippet included during the package build process, and hence you may put any shell directive in that file (just make very sure you know what you are doing). .PP All the variables have reasonable default values, and some maybe overridden on a per run or a per individual basis by using environment variables, and all configurable variables can be overridden by options to the scripts themselves. .PP The value of a variable can be set so: .TP 3 a) Defaults exist in the rules file. These are the values used if no customization is done. .IP b) Some variables can be set in the config file .I /etc/cvsdeb.conf. These values override the defaults. .IP c) Some variables can also be set by setting a corresponding environment variable. These values override the config file and the defaults. .IP d) Using script command line options. All configurable variables may be set by this method, and will override the other methods above. .SH "Predefined variables for cvs-buildpackage" The following variables are defined for .B cvs\-buildpackage. .TP 16 .B package Name of the package .TP .B version The raw version of the package .TP .B sversion The version number stripped of epochs. .TP .B uversion The upstream version. .TP .B tversion Debian revision number, if any. .SH "Configuration File options" At the moment, the user modifiable variables supported are: .TP 18 .B DEBUG Debugging information: The default value is 0 (no debugging information is printed). To enable debugging output, set the value to 1. .TP .B conf_forceclean There are two things .B CVS may choke on: .I symbolic links and .I CVS directories in the source tree. Also, there are times when one may not want to honour the upstream .I .cvsignore files. The .B conf_forceclean. configuration variable causes the .B cvs-inject and .B cvs-upgrade programs to ask whether the offending files should be deleted, if not, the programs exit with an error message. Without this option, the programs exit with an error message without asking. This can be over ridden by the environment variable .B CVSDEB_FORCECLEAN. .TP .B conf_rootdir The root directory is used to set the default value of the cvs-buildpackage work directory, using the package name. The default value is .I /usr/src/Packages. This should probably not be a sub dir of .B CVSROOT, since cvs shall refuse to export packages there, and the script shall fail. .TP .B conf_workdir The cvs-buildpackage work directory. This directory is where the original sources are expected, and this is where the module shall be exported from CVS. If you set this value, the value of the root directory would be ignored. Please note that the cvs-buildpackage work directory referred to here is the scratch directory where this program works, not the directory that the human uses to work in. This should probably not be a sub dir of .B CVSROOT, since cvs shall refuse to export packages there, and the script shall fail. .TP .B conf_dpkg_options This is where one may stash -us -uc or whatever to pass on to .B dpkg\-buildpackage. This is different from the other variables in that this is an array variable. These options shall augment (not replace) .B dpkg-buildpackage options provided on the command line. Bash provides one-dimensional array variables. Any variable may be used as an array; the `declare' builtin will explicitly declare an array. There is no maximum limit on the size of an array, nor any requirement that members be indexed or assigned contiguously. Arrays are zero-based. Arrays are assigned to using compound assignments of the form .I conf_dpkg_options=(value1 ... valueN) or .I dpkg_options=(value1 ${dpkg_options[@]}) .TP .B conf_rootcommand This is where one specifies the default command to gain root access (usually set to .I fakeroot, sudo or .I super ). This is also passed along to .B dpkg\-buildpackage. .TP .B conf_buildpackage Sets the name of the builder program invoked, nominally set to .B dpkg-buildpackage. However, the user may choose to use a different build program, or a wrapper, or even .IB "'chroot /opt/root dpkg-buildpackage'" to build the package in a .I chroot jail, if desired. (Obviously, this requires that the Work directory to be a subdirectory of a previously set up chroot jail). One may also hook in .B pbuilder by setting this variable to .IB "'pdebuild --auto-debsign --buildresult ../'". (Again, this requires that pbuilder has been set up correctly). This option can be over ridden by the environment variable .B CVSDEB_BUILDPACKAGE. .TP .B conf_packageopts Additional arguments to give to .B conf_buildpackage that shall be appended to .B dpkg-buildpackage options. Use this variable to append to the list of options. This option can be over ridden by the environment variable .B CVSDEB_PACKAGEOPTS. .TP .B conf_forcetag. If this is set, then .B cvs\-buildpackage shall call .I cvs tag -F to ensure that all files are re\-tagged correctly. .TP .B conf_prefix=prefix If this is set, then this prefix is prepended to the package name while looking for the repository. In other word, we append this to .B CVSROOT while looking for packages. Use this to group all your .I Debian package sources together in a subdirectory in the .B CVS repository .TP .B conf_packageintag. If this is set, then .B cvs\-buildpackage will include the package name and an underscore at the start of every CVS tag it generates or uses. .TP .B conf_cvsmodule This option sets the .B CVS module for use with .B cvs\-inject and .B cvs\-upgrade. .TP .B conf_use_changelog This option tells the .B cvs\-inject and .B cvs\-upgrade commands to incorporate debian changelog entries into the cvs changelog. .TP .B conf_hook_script This option, if set, should point to a script that should be run just before calling .B dpkg\-buildpackage. Ideally, things like this are done using the modules file and programs, but is still provided here for convenience. This is overridden by the environment variable .B CVSDEB_HOOK. .TP .B conf_get_orig This option, if set, should contain a command to execute to get the original tarball into the current directory. This can then be used to allow one to get the original file using, for instance, .B wget or .BR curl . This is overridden by the .B CVSDEB_GET_ORIG environment variable. .TP .B conf_use_apt If set to .BR YES , cvs-buildpackage will use .B apt-get source to retrive the original tarball, if one for the correct upstream version is found in a .B Sources file known to .BR apt . This is overridden by the .B CVSDEB_USE_APT environment variable. .PP .SH "Environment Variables" At the moment, the user modifiable variables supported are: .TP 15 .B CVSDEB_ROOTDIR If defined, this environment variable will override the value of the root directory set in the configuration file. .TP .B CVSDEB_WORKDIR If defined, this environment variable will override the value of the cvs-buildpackage work directory set in the configuration file, and would cause the scripts to ignore the root directory, irrespective of where that value was set. .TP .B CVSDEB_MODULE If defined, this environment variable will override the value of the .B CVS module set in the configuration file. .TP .B CVSDEB_USE_CHANGELOG If defined, this environment variable will make .B cvs-inject and .B cvs-upgrade programs incorporate entries from the Debian changelog file into the CVS changelog. .TP .B CVSDEB_BUILDPACKAGE. If defined, this environment variable will override the value of the configuration file variable .B conf_buildpackage .TP .B CVSDEB_HOOK Over rides the configuration file option .B conf_hook_script. .PP .TP .B CVSDEB_GET_ORIG Over rides the configuration file option .B conf_get_orig. .SH Files System\-wide defaults are placed in .I /etc/cvsdeb.conf, This can be overridden and supplemented by .I "~/.cvsdeb.conf" file by each user. .SH "SEE ALSO" .BR cvs\-inject (1), .BR cvs\-buildpackage (1), .BR cvs\-upgrade (1), .BR dpkg\-buildpackage (1), .BR cvs (1). .SH BUGS There are no bugs. Any resemblance thereof is delirium. Really. .SH AUTHOR This manual page was written by Manoj Srivastava , for the Debian GNU/Linux system. cvs-buildpackage-5.23/cvs-pkginit0000755000232200023220000001121711005261404017214 0ustar pbuilderpbuilder#! /usr/bin/perl -w # -*- Mode: Perl -*- # cvs-pkginit --- # Author : Manoj Srivastava ( srivasta@tiamat.datasync.com ) # Created On : Wed May 28 11:38:18 1997 # Created On Node : tiamat.datasync.com # Last Modified By : Manoj Srivastava # Last Modified On : Mon Nov 12 15:15:38 2001 # Last Machine Used: glaurung.green-gryphon.com # Update Count : 46 # Status : Unknown, Use with caution! # HISTORY : # Description : # # use strict; use diagnostics; use Carp; require 5.001; package main; =head1 NAME cvs-pkginit - A tool to print out steps to enter a package into cvs =cut =head1 SYNOPSIS usage: cvs-pkginit [] This assumes that there is an old, non-cvs source tree, in say $exportdir. The printed out steps asumme the following: $exportdir//-/ #debianized tree $exportdir//_.orig.tar.gz =over 2 =back =cut =head1 DESCRIPTION This is a basic tutorial script, and probably needs a lot of polishing. Suppose you want to enter package into CVS, which happens to be at version and you are at Debian Revision . (For Debian only packages, the Debian revision should be ignored). Just say cvs-pkginit [] and this script will come back with a recipe to enter your package into CVS. =cut sub main { my $exportdir = '/usr/local/src/Packages'; my $workdir = '/usr/local/src/Workdir'; my $usage = ''; my $MYNAME = ''; my $version= ''; my $tversion = ''; my $deb = ''; my $ko = ''; my $package = ''; ($MYNAME = $0) =~ s|.*/||; $usage = < [] Note: this script has been superceded by cvs-inject, that takes a .dsc file and does this all for you. This assumes that there is an old, non-cvs source tree, in say $exportdir. The printed out steps asumme the following: $exportdir//-/ #debianized tree $exportdir//_.orig.tar.gz This is not automated since human intervention is still required. EOUSAGE # We need three arguments die "$usage\n" unless $#ARGV >= 1; $package = shift @ARGV; $version = shift @ARGV; $deb =shift @ARGV; ($tversion = $version) =~ tr/\./_/; $ko = "-ko -d" if $deb; my $import_msg = "Initial Import"; my $vendor_tag='source-dist'; my $import_tag="upstream_version_$tversion"; my $add_msg="Initial revision"; my $commit_msg='Added all debian changes'; my $final_tag="debian_version_$tversion"; if ($deb) { $final_tag="debian_version_$tversion-$deb"; } print <<"EOINPUT"; Note: this script has been superceded by cvs-inject, that takes a.dsc file and does this all for you. # # The CVS working directory is $workdir # Old package tree is $exportdir # We expect to see # $exportdir/$package/$package-$version/ # $exportdir/$package/$package\_$version.orig.tar.gz # # Change to the work directory, create the original sources # cd $workdir tar zvvfx $exportdir/$package/$package\_$version.orig.tar.gz cp -a $package\_$version.orig $package\_$version mv -f $package\_$version.orig $package # Now for the cvs import process. cd $package cvs import $ko -m '$import_msg' debian/$package $vendor_tag $import_tag cd .. rm -rf $package cvs co $package # There should be no changes below diff -qBbwr $package-$version $package | grep -v CVS # # Now, change directory to where the debianized version exists # $exportdir. cd $exportdir/$package/$package-$version sudo ./debian/rules clean diff -qBbwr . $workdir/$package | grep -v CVS # # Add to the following definition based on the diff output above # FILES_DIFFERENT=debian tar cf - \$FILES_DIFFERENT | ( cd $workdir/$package; tar xvvpf -) cd .. rm -rf $package-$version $package\_$version-$deb* cd $workdir/$package cvs add debian cd debian cvs add -m '$add_msg' `cvs update 2>/dev/null | egrep '^\?' |sed 's/\?//'` cd .. cvs update 2>/dev/null | egrep '^M' | sed 's/^M//' cvs commit -m '$commit_msg' # Check to see if the tags match cvs-buildpackage -d -n cvs tag $final_tag cd .. rm -rf $package-$version Note: this script has been superceded by cvs-inject, that takes a.dsc file and does this all for you. EOINPUT } =head1 CAVEATS This is very inchoate, at the moment, and needs testing. This script has been superceded by cvs-inject, that takes a.dsc and does this all for you. =cut =head1 BUGS None Known so far. =cut =head1 AUTHOR Manoj Srivastava =cut &main::main(); __END__ cvs-buildpackage-5.23/cvsdeb.conf0000644000232200023220000000432511005261404017147 0ustar pbuilderpbuilder# # This file is a bourne shell snippet, and is sourced by the # cvs-buildpackage script for configuration. # # # The following variables are available, derived from the changelog # file at run time # # $package: Name of the package # $version: The raw version of the package # $sversion: The version number stripped of epochs # $uversion: The upstream version # $tversion: Debian revision number, if any # # There is nothing preventing you from overriding any of those, or, # in fact, from modifying internal variables used in the script, # though you should know what you are doing before doing so, know # that all your warranties become void if you do so. # # Debugging information: The default value is 0 (no debugging # information is printed). To change the default behavior, uncomment # the following line and set the value to 1. # # DEBUG=0 # # The directories. # # The root directory is used to set the default value of the work # directory, using the package name. The default value is # "/usr/local/src/Packages" (note that this directory is not created # automatically). To change the default behavior, uncomment the # following line and set the value to match the local setup. # # conf_rootdir='/usr/src/Packages' # The work directory. This directory is where the original sources are # expected, and this is where the module shall be exported from CVS. # If you set this value, the value of the root directory, either set # up above or on the command line, would be ignored. To change the # default behavior, uncomment the following line and set the value to # match the local setup. # # conf_workdir="$rootdir/$package" # You may set the dpkg-buildpackage options as a bash array. These # shall augment (not replace) dpkg-buildpackage options provided on # the command line. # Bash provides one-dimensional array variables. Any variable may be # used as an array; the `declare' builtin will explicitly declare an # array. There is no maximum limit on the size of an array, nor any # requirement that members be indexed or assigned contiguously. # Arrays are zero-based. # Arrays are assigned to using compound assignments of the form # conf_dpkg_options=(value1 ... valueN) # or # dpkg_options=(value1 "${dpkg_options[@]}") cvs-buildpackage-5.23/Makefile0000644000232200023220000000464111005261404016473 0ustar pbuilderpbuilder############################ -*- Mode: Makefile -*- ########################### ## Makefile --- ## Author : Manoj Srivastava ( srivasta@glaurung.green-gryphon.com ) ## Created On : Tue Nov 18 23:49:49 2003 ## Created On Node : glaurung.green-gryphon.com ## Last Modified By : Manoj Srivastava ## Last Modified On : Wed Nov 19 00:03:24 2003 ## Last Machine Used: glaurung.green-gryphon.com ## Update Count : 6 ## Status : Unknown, Use with caution! ## HISTORY : ## Description : ## ############################################################################### prefix = package= cvs-buildpackage CONFLOC:=/etc/cvsdeb.conf DOCDIR = $(prefix)/usr/share/doc/$(package) MANDIR = $(prefix)/usr/share/man MAN1DIR= $(MANDIR)/man1 MAN5DIR= $(MANDIR)/man5 ETCDIR = $(prefix)/etc BINDIR = $(prefix)/usr/bin/ # install commands install_file= install -p -o root -g root -m 644 install_program= install -p -o root -g root -m 755 make_directory= install -p -d -o root -g root -m 755 all build: check check: bash -n cvs-buildpackage bash -n cvs-inject bash -n cvs-upgrade install: $(make_directory) $(DOCDIR) $(install_file) debian/changelog $(DOCDIR)/changelog $(install_file) README $(DOCDIR)/README $(install_file) HOWTO $(DOCDIR)/HOWTO $(install_file) get-orig.sh $(DOCDIR)/get-orig.sh $(install_file) cvs-pkginit $(DOCDIR)/cvs-pkginit pod2man cvs-pkginit > $(DOCDIR)/cvs-pkginit.1 $(install_file) cvs-co-upgrade.1 $(DOCDIR)/cvs-co-upgrade.1 $(install_file) cvs-co-upgrade $(DOCDIR)/cvs-co-upgrade $(install_file) cvsdeb.conf.5 $(MAN5DIR) gzip -9fq $(MAN5DIR)/cvsdeb.conf.5 $(install_file) cvs-buildpackage.1 $(MAN1DIR) gzip -9fq $(MAN1DIR)/cvs-buildpackage.1 $(install_file) cvs-inject.1 $(MAN1DIR) gzip -9fq $(MAN1DIR)/cvs-inject.1 $(install_file) cvs-upgrade.1 $(MAN1DIR) gzip -9fq $(MAN1DIR)/cvs-upgrade.1 -gzip -9fqr $(DOCDIR) $(install_file) debian/copyright $(DOCDIR)/copyright $(install_file) cvsdeb.conf $(ETCDIR)/cvsdeb.conf $(install_program) cvs-buildpackage $(BINDIR) $(install_program) cvs-inject $(BINDIR) $(install_program) cvs-upgrade $(BINDIR) cvs-buildpackage-5.23/ChangeLog0000644000232200023220000000132111005261404016575 0ustar pbuilderpbuilder2007-07-07 Manoj Srivastava * cvsdeb.conf.5: srivasta@debian.org--lenny/cvs-buildpackage--devel--0.2--base-0 .cvsignore is a file name, but seems to be an unknown macro for nroff. * cvs-upgrade.1: srivasta@debian.org--lenny/cvs-buildpackage--devel--0.2--base-0 Ditto. * cvs-inject.1: srivasta@debian.org--lenny/cvs-buildpackage--devel--0.2--base-0 Ditto. 2005-09-22 Manoj Srivastava * cvs-upgrade (orig_tarfile): srivasta@debian.org--etch/cvs-buildpackage--devel--0.2--base-0 Fix various typos in the no-action branch, to fix what is echoed. Escape a $; line up the if/fi statements, and remove a spurious exit 1 line cvs-buildpackage-5.23/cvs-buildpackage0000755000232200023220000005331511005261404020167 0ustar pbuilderpbuilder#! /bin/bash # -*- Mode: Sh -*- # deb-cvs --- # Author : Manoj Srivastava ( srivasta@tiamat.datasync.com ) # Created On : Mon May 26 14:23:17 1997 # Created On Node : tiamat.datasync.com # Last Modified By : Manoj Srivastava # Last Modified On : Sat Jun 5 18:14:52 2004 # Last Machine Used: glaurung.internal.golden-gryphon.com # Update Count : 156 # Status : Unknown, Use with caution! # HISTORY : # Description : # $Id: cvs-buildpackage,v 1.58 2003/08/22 17:24:29 srivasta Exp $ # # Make sure we abort on error set -e progname="`basename \"$0\"`" pversion='$Revision: 1.58 $' setq() { # Variable Value Doc string if [ "x$2" = "x" ]; then echo >&2 "$progname: Unable to determine $3" exit 1; else if [ ! "x$Verbose" = "x" ]; then echo "$progname: $3 is $2"; fi eval "$1=\"\$2\""; fi } withecho () { echo " $@" >&2 "$@" } usageversion () { cat >&2 < CVS module name. } -P Package name. } Allow operation out of the -V Package Version } checked out source tree -T CVS Tag to use -U Upstream tag to use -C The Build-package command to use, nominally dpkg-buildpackage -G The command to execute that'll get the orig tarball in the current directory. -A Use apt to get original tarball if it does not exist. -R Root directory. -W Working directory. -F Force a cvs tag -F before exporting (Only valid in a CVS working dir) -E Force a full export when building, instead of unpacking the orig.tar.gz and using cvs 'rdiff' to bring it up-to-date. -n "Dry-run" mode - No action taken, only print commands. -op The opposite of -E, unpacking the orig.tar.gz (o) and using cvs 'rdiff' (p) to bring it up-to-date. -tC Clean all non-upload files in workdir after a successful build. -ctp Include _ at start of CVS tag. -x CVS default module prefix. -f