SYNOPSIS
/etc/cvsdeb.confDESCRIPTION
The file /etc/cvsdeb.conf is actually a 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).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.
The value of a variable can be set so:
- a)
- Defaults exist in the rules file. These are the values used if no customization is done.
- b)
- Some variables can be set in the config file /etc/cvsdeb.conf. These values override the defaults.
- c)
- Some variables can also be set by setting a corresponding environment variable. These values override the config file and the defaults.
- d)
- Using script command line options. All configurable variables may be set by this method, and will override the other methods above.
Predefined variables for cvs-buildpackage
The following variables are defined for cvs-buildpackage.- 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.
Configuration File options
At the moment, the user modifiable variables supported are:- DEBUG
- Debugging information: The default value is 0 (no debugging information is printed). To enable debugging output, set the value to 1.
- conf_forceclean
- 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 .cvsignore files. The conf_forceclean. configuration variable causes the cvs-inject and 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 CVSDEB_FORCECLEAN.
- 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 /usr/src/Packages. This should probably not be a sub dir of CVSROOT, since cvs shall refuse to export packages there, and the script shall fail.
- 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 CVSROOT, since cvs shall refuse to export packages there, and the script shall fail.
- conf_dpkg_options
-
This is where one may stash -us -uc or whatever to pass on to
dpkg-buildpackage.
This is different from the other variables in that this is an array
variable. These options 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[@]})
- conf_rootcommand
- This is where one specifies the default command to gain root access (usually set to fakeroot, sudo or super ). This is also passed along to dpkg-buildpackage.
- conf_buildpackage
- Sets the name of the builder program invoked, nominally set to dpkg-buildpackage. However, the user may choose to use a different build program, or a wrapper, or even 'chroot /opt/root dpkg-buildpackage' to build the package in a 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 pbuilder by setting this variable to 'pdebuild --auto-debsign --buildresult ../'. (Again, this requires that pbuilder has been set up correctly). This option can be over ridden by the environment variable CVSDEB_BUILDPACKAGE.
- conf_packageopts
- Additional arguments to give to conf_buildpackage that shall be appended to dpkg-buildpackage options. Use this variable to append to the list of options. This option can be over ridden by the environment variable CVSDEB_PACKAGEOPTS.
- conf_forcetag.
- If this is set, then cvs-buildpackage shall call cvs tag -F to ensure that all files are re-tagged correctly.
- 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 CVSROOT while looking for packages. Use this to group all your Debian package sources together in a subdirectory in the CVS repository
- conf_packageintag.
- If this is set, then cvs-buildpackage will include the package name and an underscore at the start of every CVS tag it generates or uses.
- conf_cvsmodule
- This option sets the CVS module for use with cvs-inject and cvs-upgrade.
- conf_use_changelog
- This option tells the cvs-inject and cvs-upgrade commands to incorporate debian changelog entries into the cvs changelog.
- conf_hook_script
- This option, if set, should point to a script that should be run just before calling 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 CVSDEB_HOOK.
- 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, wget or curl. This is overridden by the CVSDEB_GET_ORIG environment variable.
- conf_use_apt
- If set to YES, cvs-buildpackage will use apt-get source to retrive the original tarball, if one for the correct upstream version is found in a Sources file known to apt. This is overridden by the CVSDEB_USE_APT environment variable.
Environment Variables
At the moment, the user modifiable variables supported are:- CVSDEB_ROOTDIR
- If defined, this environment variable will override the value of the root directory set in the configuration file.
- 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.
- CVSDEB_MODULE
- If defined, this environment variable will override the value of the CVS module set in the configuration file.
- CVSDEB_USE_CHANGELOG
- If defined, this environment variable will make cvs-inject and cvs-upgrade programs incorporate entries from the Debian changelog file into the CVS changelog.
- CVSDEB_BUILDPACKAGE.
- If defined, this environment variable will override the value of the configuration file variable conf_buildpackage
- CVSDEB_HOOK
- Over rides the configuration file option conf_hook_script.
- CVSDEB_GET_ORIG
- Over rides the configuration file option conf_get_orig.
Files
System-wide defaults are placed in /etc/cvsdeb.conf, This can be overridden and supplemented by ~/.cvsdeb.conf file by each user.BUGS
There are no bugs. Any resemblance thereof is delirium. Really.AUTHOR
This manual page was written by Manoj Srivastava <[email protected]>, for the Debian GNU/Linux system.