From d9fc4acc572c6647a4f27b838d35d27d805d190e Mon Sep 17 00:00:00 2001 From: Jason Stubbs Date: Sun, 28 Aug 2005 08:37:44 +0000 Subject: Migration (without history) of the current stable line to subversion. svn path=/main/branches/2.0/; revision=1941 --- man/alternatives.eclass.5 | 59 +++ man/check-kernel.eclass.5 | 53 +++ man/check-reqs.eclass.5 | 55 +++ man/cvs.eclass.5 | 80 +++++ man/dispatch-conf.1 | 93 +++++ man/distutils.eclass.5 | 39 ++ man/ebook.eclass.5 | 75 ++++ man/ebuild.1 | 184 ++++++++++ man/ebuild.5 | 837 +++++++++++++++++++++++++++++++++++++++++++ man/emerge.1 | 555 ++++++++++++++++++++++++++++ man/env-update.1 | 28 ++ man/etc-update.1 | 40 +++ man/eutils.eclass.5 | 176 +++++++++ man/fixheadtails.eclass.5 | 32 ++ man/flag-o-matic.eclass.5 | 84 +++++ man/font.eclass.5 | 64 ++++ man/fortran.eclass.5 | 53 +++ man/games.eclass.5 | 119 ++++++ man/horde.eclass.5 | 51 +++ man/libtool.eclass.5 | 48 +++ man/make.conf.5 | 395 ++++++++++++++++++++ man/perl-module.eclass.5 | 66 ++++ man/portage.5 | 588 ++++++++++++++++++++++++++++++ man/python.eclass.5 | 82 +++++ man/quickpkg.1 | 56 +++ man/repoman.1 | 127 +++++++ man/rpm.eclass.5 | 37 ++ man/ruby.eclass.5 | 47 +++ man/ssl-cert.eclass.5 | 54 +++ man/stardict.eclass.5 | 34 ++ man/subversion.eclass.5 | 59 +++ man/tla.eclass.5 | 52 +++ man/toolchain-funcs.eclass.5 | 112 ++++++ man/versionator.eclass.5 | 53 +++ man/vim-plugin.eclass.5 | 86 +++++ man/vim.eclass.5 | 56 +++ 36 files changed, 4629 insertions(+) create mode 100644 man/alternatives.eclass.5 create mode 100644 man/check-kernel.eclass.5 create mode 100644 man/check-reqs.eclass.5 create mode 100644 man/cvs.eclass.5 create mode 100644 man/dispatch-conf.1 create mode 100644 man/distutils.eclass.5 create mode 100644 man/ebook.eclass.5 create mode 100644 man/ebuild.1 create mode 100644 man/ebuild.5 create mode 100644 man/emerge.1 create mode 100644 man/env-update.1 create mode 100644 man/etc-update.1 create mode 100644 man/eutils.eclass.5 create mode 100644 man/fixheadtails.eclass.5 create mode 100644 man/flag-o-matic.eclass.5 create mode 100644 man/font.eclass.5 create mode 100644 man/fortran.eclass.5 create mode 100644 man/games.eclass.5 create mode 100644 man/horde.eclass.5 create mode 100644 man/libtool.eclass.5 create mode 100644 man/make.conf.5 create mode 100644 man/perl-module.eclass.5 create mode 100644 man/portage.5 create mode 100644 man/python.eclass.5 create mode 100644 man/quickpkg.1 create mode 100644 man/repoman.1 create mode 100644 man/rpm.eclass.5 create mode 100644 man/ruby.eclass.5 create mode 100644 man/ssl-cert.eclass.5 create mode 100644 man/stardict.eclass.5 create mode 100644 man/subversion.eclass.5 create mode 100644 man/tla.eclass.5 create mode 100644 man/toolchain-funcs.eclass.5 create mode 100644 man/versionator.eclass.5 create mode 100644 man/vim-plugin.eclass.5 create mode 100644 man/vim.eclass.5 (limited to 'man') diff --git a/man/alternatives.eclass.5 b/man/alternatives.eclass.5 new file mode 100644 index 000000000..0e536b3b7 --- /dev/null +++ b/man/alternatives.eclass.5 @@ -0,0 +1,59 @@ +.TH ALTERNATIVES.ECLASS 5 "Nov 2004" "Portage 2.0.51" portage +.SH NAME +alternatives \- interface for SLOT'ed packages requiring a symbolic link to the +latest version +.SH DESCRIPTION +The \fBalternatives\fR eclass provides an interface for SLOT'ed packages that +require a symbolic link that points to the latest version installed. Due to the +varying order in which SLOT'ed versions may be installed, the symbolic link is +not always guaranteed to point to the latest version. The \fBalternatives\fR +eclass attempts to solve this problem. +.br + +There are currently two methods in which this eclass may be used. The first +method involves variable invocation (via \fBSOURCE\fR and \fBALTERNATIVES\fR), +while the second method involves function invocation (via \fBalternatives_makesym\fR +or \fBalternatives_auto_makesym\fR). These will be described below, however, +please keep in mind that the two methods are not meant to be used in conjunction. +.SH VARIABLES +.TP +.B SOURCE = \fI"/usr/bin/python"\fR +Defines the name of the symbolic link that will be created to point to the +latest installed version. +.TP +.B ALTERNATIVES = \fI"/usr/bin/python2.3 /usr/bin/python2.2"\fR +Defines a whitespace-delimited list of alternatives. The first one found to +exist will become the target of the created symbolic link. +.SH FUNCTIONS +.TP +.B alternatives_makesym \fI< symlink > < alt1 alt2 ... >\fR +Creates the specified symbolic link to point to the first specified alternative +found to exist. This function is normally invoked from \fBpkg_postinst\fR and +\fBpkg_postrm\fR. +.TP +.B alternatives_auto_makesym \fI< symlink > < alt_glob >\fR +A "smart" version of \fBalternatives_makesym\fR that attempts to automatically +deduce which version to link to, based on the specified alternatives glob +pattern (eg. "python[0-9].[0-9]"). Like \fBalternatives_makesym\fR, this +function is normally invoked from \fBpkg_postinst\fR and \fBpkg_postrm\fR. +.TP +\fBNOTE\fR: the following default pkg functions are only meant for use with the +variable invocation method. +.TP +.B alternatives_pkg_postinst +Default pkg_postinst that calls \fBalternatives_makesym\fR if both the +\fBSOURCE\fR and \fBALTERNATIVES\fR variables are set. +.TP +.B alternatives_pkg_postrm +Default pkg_postrm that calls \fBalternatives_makesym\fR if both the \fBSOURCE\fR +and \fBALTERNATIVES\fR variables are set. +.SH REPORTING BUGS +Please report bugs via http://bugs.gentoo.org/ +.SH SEE ALSO +.BR ebuild (5) +.SH FILES +.BR /usr/portage/eclass/alternatives.eclass +.SH AUTHORS +Aaron Walker +.SH CVS HEADER +$Header: /var/cvsroot/gentoo-src/portage/man/alternatives.eclass.5,v 1.1.2.1 2005/08/20 05:05:31 vapier Exp $ diff --git a/man/check-kernel.eclass.5 b/man/check-kernel.eclass.5 new file mode 100644 index 000000000..8402b0b23 --- /dev/null +++ b/man/check-kernel.eclass.5 @@ -0,0 +1,53 @@ +.TH "CHECK-KERNEL.ECLASS" "5" "Aug 2004" "Portage 2.0.51" "portage" +.SH "NAME" +check-kernel.eclass \- check kernel sources +.SH "DESCRIPTION" +The \fBcheck-kernel\fR eclass provides an easy interface for detecting kernel +sources and retrieving various information. +.SH "VARIABLES" +The following variables are exported by the \fBcheck-kernel\fR eclass: +.TP +.BR KV_full +Full kernel version (eg. 2.4.27-gentoo-r1) +.TP +.BR KV_major +Major kernel version (eg. 2) +.TP +.BR KV_minor +Minor kernel version (eg. 4) +.TP +.BR KV_micro +Micro kernel version (eg. 27) +.SH "FUNCTIONS" +.TP +.BR check_version_h +Checks to make sure the /usr/src/linux symlink is correctly setup. If it is not, +this function will print a huge error message and halt the emerge process. +.TP +.BR get_KV_info +Parses the kernel's version.h to fill in the \fB${KV_full}\fR, \fB${KV_major}\fR, +\fB${KV_minor}\fR, and \fB${KV_micro}\fR variables. +.TP +\fINOTE:\fR The following functions all return shell true/false. +.TP +.BR is_2_4_kernel +Checks for kernel version 2.4. +.TP +.BR is_2_5_kernel +Checks for kernel version 2.5. +.TP +.BR is_2_6_kernel +Checks for kernel version 2.6. +.TP +.BR kernel_supports_modules +Check to see if the kernel supports modules (CONFIG_MODULES). +.SH "REPORTING BUGS" +Please report bugs via http://bugs.gentoo.org/ +.SH "SEE ALSO" +.BR ebuild (5) +.SH "FILES" +.BR /usr/portage/eclass/check-kernel.eclass +.SH "AUTHORS" +Aaron Walker +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/check-kernel.eclass.5,v 1.3.2.1 2005/01/15 00:19:36 vapier Exp $ diff --git a/man/check-reqs.eclass.5 b/man/check-reqs.eclass.5 new file mode 100644 index 000000000..3c3afcc96 --- /dev/null +++ b/man/check-reqs.eclass.5 @@ -0,0 +1,55 @@ +.TH CHECK-REQS.ECLASS 5 "Dec 2004" "Portage 2.0.51" "portage" +.SH NAME +check-reqs.eclass \- functions for checking proper build requirements +.SH DESCRIPTION +The \fBcheck-reqs\fR eclass provides a uniform interface for handling ebuilds +which require an abnormally high amount of system resources. The variable(s) +and function(s) mentioned here should usually be set/called from \fBpkg_setup\fR. +.br + +\fBNOTE\fR: Minimum criteria for use of this eclass is a build that requires +>256MB of RAM and/or >1GB of temporary or install space. +.SH VARIABLES +\fBNOTE\fR: all numerical values are evaluated as megabytes (MB). +.TP +.B CHECKREQS_ACTION = \fI"(warn|error|ignore)"\fR +Defines action to take if current system resources do not satisfy requirements. +\fBNOTE\fR: this variable is for end user only. Ebuilds must *not* override or +set a default for this variable. +.TP +.B CHECKREQS_MEMORY = \fI"256"\fR +Defines amount of memory required. Note that the \fBcheck-reqs\fR eclass does +not take swap space into account when checking current memory resources. +.TP +.B CHECKREQS_DISK_BUILD = \fI"1024"\fR +Defines amount of temporary build space required. +.TP +.B CHECKREQS_DISK_USR = \fI"1024"\fR +Defines amount of /usr space required. +.TP +.B CHECKREQS_DISK_VAR = \fI"1024"\fR +Defines amount of /var space required. +.SH FUNCTIONS +\fBNOTE\fR: all numerical values are evaluated as megabytes (MB). Any values +should merely be rough estimates, and a high degree of precision should not +be implied -- for example, "2048" (or "2000") are more appropriate than "2137". +.TP +.B check_reqs +Performs resource checks based on above defined variables. If the checks fail, +the action specified by \fBCHECKREQS_ACTION\fR will be executed. If for some +reason the \fBcheck-reqs\fR eclass is unable to determine current resources, +then no action will be performed. This function should be called from within +\fBpkg_setup\fR. +.SH REPORTING BUGS +Please report bugs via http://bugs.gentoo.org/ +.SH SEE ALSO +.BR ebuild (5) +.SH FILES +.BR /usr/portage/eclass/check-reqs.eclass +.SH AUTHORS +.nf +Aaron Walker +Ciaran McCreesh +.fi +.SH CVS HEADER +$Header: /var/cvsroot/gentoo-src/portage/man/check-reqs.eclass.5,v 1.1.2.3 2005/05/10 11:30:32 swegener Exp $ diff --git a/man/cvs.eclass.5 b/man/cvs.eclass.5 new file mode 100644 index 000000000..b4fdcf2a0 --- /dev/null +++ b/man/cvs.eclass.5 @@ -0,0 +1,80 @@ +.TH CVS.ECLASS 5 "Nov 2004" "Portage 2.0.51" portage +.SH NAME +cvs.eclass \- provides generic cvs fetching functions +.SH DESCRIPTION +The \fBcvs\fR eclass contains a suite of functions that are used to +create 'live' cvs ebuilds. These ebuilds are called 'live' because +they will checkout a cvs repository at the time of emerge and compile +the source from the checkout. This eclass usually generates pretty +unstable ebuilds ... but you can't get anymore bleeding edge than +a live cvs checkout :). + +Common usage of this eclass involves setting \fBECVS_SERVER\fR and +\fBECVS_MODULE\fR to grab the relevant cvs sources, and then letting +the eclass define \fBsrc_unpack\fR for you. +.SH VARIABLES +.TP +.B "ECVS_CVS_COMMAND" = \fI"cvs -q -f -z4"\fR +The command to run in order to checkout the module from the cvs +repository. You should not need to change this. +.TP +.B "ECVS_UP_OPTS" = \fI"-dP"\fR +Options to pass to \fBECVS_CVS_COMMAND\fR when running an update. +You should not have to modify this. +.TP +.B "ECVS_CO_OPTS" = \fI""\fR +Options to pass to \fBECVS_CVS_COMMAND\fR when running a checkout. +You should not have to modify this. +.TP +.B "ECVS_TOP_DIR" = \fI"${DISTDIR}/cvs-src"\fR +Where the cvs modules will be stored and then accessed. You +should not have to modify this. +.TP +.B "ECVS_SERVER" = \fI"offline"\fR +Set this to the server that you will be checking the sources out of. +If you set this to 'offline' then the eclass will assume the module +is already checked out and in \fBECVS_TOP_DIR\fR. You almost always +will set this variable. +.TP +.B "ECVS_AUTH" = \fI"pserver"\fR +The authentication method to use to checkout the sources. Please +note that the only method currently supported is 'pserver'. You +should not need to modify this variable. +.TP +.B "ECVS_USER" = \fI"anonymous"\fR +The user to log into the server with. +.TP +.B "ECVS_PASS" = \fI""\fR +The password to log into the server with. +.TP +.B "ECVS_MODULE" = \fI""\fR +The module to checkout from the cvs server. Please note that you +*must* set this variable. +.TP +.B "ECVS_BRANCH" = \fI"HEAD"\fR +The branch to checkout the sources from. The common targets are +HEAD (current 'stable' cvs code) and SPLIT (current 'unstable' cvs +code). +.SH FUNCTIONS +.TP +.B cvs_fetch +This function will setup \fBECVS_TOP_DIR\fR and any other pre-checkout +steps that may need to be taken. Then it will login into the server +and finally checkout the sources from cvs. You usually do not call +this function yourself, but rather let it be handled by \fBcvs_src_unpack\fR. +.TP +.B cvs_src_unpack +This function will determine where the cvs files need to be saved and +then where they need to be placed after the checkout. The final result +is that you will have a copy of \fBECVS_MODULE\fR in \fB${WORKDIR}\fR. Thus +you will usually set \fB${S}\fR to be \fB${WORKDIR}/${ECVS_MODULE}\fR. +.SH REPORTING BUGS +Please report bugs via http://bugs.gentoo.org/ +.SH SEE ALSO +.BR ebuild (5) +.SH FILES +.BR /usr/portage/eclass/cvs.eclass +.SH AUTHORS +Mike Frysinger +.SH CVS HEADER +$Header: /var/cvsroot/gentoo-src/portage/man/cvs.eclass.5,v 1.4.2.2 2005/01/15 00:19:36 vapier Exp $ diff --git a/man/dispatch-conf.1 b/man/dispatch-conf.1 new file mode 100644 index 000000000..c28f516a4 --- /dev/null +++ b/man/dispatch-conf.1 @@ -0,0 +1,93 @@ +.TH "DISPATCH-CONF" "1" "May 2004" "Portage 2.0.51" "Portage" +.SH NAME +dispatch-conf \- Sanely update configuration files after emerging new packages +.SH SYNOPSIS +.B dispatch-conf +.SH DESCRIPTION +.I dispatch-conf +is designed to be run after merging new packages in order to see if +there are updates to the configuration files. If a new +configuration file will overwrite an old one, +.I dispatch-conf +will prompt the user for a decision about how to resolve the +discrepancy. +Advantages of +.I dispatch-conf +include easy rollback (changes to config files are stored either using +patches or rcs) and the ability to automatically update config files +that the user has never modified or +that differ from the current version only in CVS cruft or white space. + +.I dispatch-conf +will check all directories in the \fICONFIG_PROTECT\fR variable. All +config files found in \fICONFIG_PROTECT_MASK\fR will automatically be +updated for you by \fIdispatch-conf\fR. See \fBmake.conf\fR(5) for more +information. +.SH OPTIONS +.TP +None. +.SH USAGE +.I dispatch-conf +must be run as root, since the config files to be replaced are generally +owned by root. Before running +.I dispatch-conf +for the first time the settings in +.B /etc/dispatch-conf.conf +should be edited and the archive directory specified in +\fI/etc/dispatch-conf.conf\fR will need to be created. All changes to +config files will be saved in the archive directory either as patches +or using rcs, making restoration to an earlier version rather simple. + +When dispatch-conf finds a config file that has a new update the user +is provided +with a menu of options for how to handle the update: +.TP +.B u +Update (replace) the current config file with the new config file and continue. +.TP +.B z +Zap (delete) the new config file and continue. +.TP +.B n +Skip to the next config file, leaving both the original config file and any +\fICONFIG_PROTECT\fRed files. +.TP +.B e +Edit the new config file, using the editor defined in \fI$EDITOR\fR. +.TP +.B m +Interactively merge the current and new config files. +.TP +.B l +Look at the differences between the pre-merged and merged config files. +.TP +.B t +Toggle between the merged and pre-merged config files (in terms of which +should be installed using the +.Qt u +command). +.TP +.B h +Display a help screen. +.TP +.B q +Quit +.I dispatch-conf. +.SH "REPORTING BUGS" +Please report bugs via http://bugs.gentoo.org/ +.SH "SEE ALSO" +.BR make.conf (5), etc-update (1) +.SH "FILES" +.TP +.B /etc/dispatch-conf.conf +Configuration settings for \fIdispatch-conf\fR are stored here. +.SH AUTHORS +Jeremy Wohl +.br +Karl Trygve Kalleberg +.br +Mike Frysinger +.br +Grant Goodyear +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/dispatch-conf.1,v 1.3.2.1 2004/11/02 23:59:57 vapier Exp $ diff --git a/man/distutils.eclass.5 b/man/distutils.eclass.5 new file mode 100644 index 000000000..10244ddf0 --- /dev/null +++ b/man/distutils.eclass.5 @@ -0,0 +1,39 @@ +.TH "DISTUTILS.ECLASS" "5" "Jun 2003" "Portage 2.0.51" "portage" +.SH "NAME" +distutils.eclass \- allow easier installation of distutils-based python modules +.SH "DESCRIPTION" +The \fBdistutils\fR eclass is designed to allow easier installation of +distutils-based python modules and their incorporation into the Gentoo +Linux system. The eclass defines \fBsrc_compile\fR and \fBsrc_install\fR +for you. You should be able to make a quick ebuild without setting up +any extra variables or functions. +.SH "VARIABLES" +.TP +.B PYTHON_SLOT_VERSION = \fI"[0|2.1]"\fR +This allows you to depend on python-2.1. This is usually only +needed by a -py21- ebuild. Otherwise you should not have to set this. +.TP +.B DOCS = \fI""\fR +This will cause \fBsrc_install\fR to install a few extra documentation +files than normal. +.SH "FUNCTIONS" +.TP +.B distutils_python_version +This will setup the variables \fBPYVER_MAJOR\fR, \fBPYVER_MINOR\fR, +and \fBPYVER\fR with the corresponding values of the python version. +.TP +.B distutils_python_tkinter +If the package requires tkinter support, then calling this function +will cause the ebuild to fail if tkinter support does not exist. An +informative message will be displayed telling the user they need to +recompile python with tkinter support for the ebuild to emerge. +.SH "REPORTING BUGS" +Please report bugs via http://bugs.gentoo.org/ +.SH "SEE ALSO" +.BR ebuild (5) +.SH "FILES" +.BR /usr/portage/eclass/distutils.eclass +.SH "AUTHORS" +Mike Frysinger +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/distutils.eclass.5,v 1.3.2.1 2005/01/15 00:19:36 vapier Exp $ diff --git a/man/ebook.eclass.5 b/man/ebook.eclass.5 new file mode 100644 index 000000000..eab786963 --- /dev/null +++ b/man/ebook.eclass.5 @@ -0,0 +1,75 @@ +.TH "EBOOK.ECLASS" "5" "Aug 2004" "Portage 2.0.51" "portage" +.SH "NAME" +ebook.eclass \- easy installation of ebooks +.SH "DESCRIPTION" +The \fBebook\fR eclass makes writing ebuilds for ebooks a trivial task. +.SH "VARIABLES" +\fINOTE\fR: the following variables should be set \fBBEFORE\fR inheriting the +\fBebook\fR eclass: +.TP +.BR "DESCRIPTION" +Package description. Defaults to "\fB${P}\fR ebook based on ebook eclass". +.TP +.BR "RDEPEND" +Run-time dependencies. Defaults to ">=dev-util/devhelp-0.6". +.TP +.BR "EBOOKNAME" +The name of the ebook. This variable \fImust\fR be set. +.TP +.BR "EBOOKVERSION" +The version of the ebook. This variable \fImust\fR be set, even if there is +no version. See the \fB${NOVERSION}\fR variable below for more information. +.TP +.BR "SRC" +The name of the file to download, minus the file extension. This variable +defaults to \fB${EBOOKNAME}\fR-\fB${EBOOKVERSION}\fR. +.TP +.BR "SRC_URI" +The ebook URI to download. Defaults to "http://lidn.sourceforge.net/books_download/\fB${SRC}\fR.\fB${EBOOKEXT}\fR". +.TP +.BR "EBOOKEXT" +The file name extension of \fB${SRC}\fR. Defaults to tar.gz. +.TP +.BR "EBOOKDESTDIR" +The directory inside \fB${DEVHELPROOT}\fR/books/\fB${EBOOKDIR}\fR in which the +ebook will be installed. This variable defaults to \fB${EBOOKNAME}\fR-\fB${EBOOKVERSION}\fR +or \fB${EBOOKNAME}\fR if the \fB${NOVERSION}\fR variable is set. +.TP +.BR "EBOOKFROMDIR" +The directory in which the ebook's HTML files are located after unpacking +\fB${SRC_URI}\fR. This directory is relative to \fB${WORKDIR}\fR. This +variable defaults to \fB${EBOOKNAME}\fR-\fB${EBOOKVERSION}\fR or \fB${EBOOKNAME}\fR +if the \fB${NOVERSION}\fR variable is set. +.TP +.BR "BOOKDEVHELPFILE" +The file name that the ebook's book.devhelp will be installed as. This variable +defaults to \fB${EBOOKNAME}\fR-\fB${EBOOKVERSION}\fR.devhelp or \fB${EBOOKNAME}\fR.devhelp +if the \fB${NOVERSION}\fR variable is set. +.TP +.BR "BOOKDESTDIR" +The directory in which the ebook's HTML will be installed into. Defaults to +\fB${EBOOKNAME}\fR-\fB${EBOOKVERSION}\fR or \fB${EBOOKNAME}\fR is the \fB${NOVERSION}\fR +variable is set. +.TP +.BR "NOVERSION" +If this variable is not empty, all instances of \fB${EBOOKVERSION}\fR will be +removed from all variables. +.TP +.BR "DEVHELPROOT" +The location of devhelp's data directory. Defaults to usr/share/devhelp. +.SH "FUNCTIONS" +\fINOTE\fR: the following functions will be used as the defaults should they +be omitted from the ebuild. +.TP +.BR "ebook_src_install" +Installs \fB${BOOKDEVHELPFILE}\fR and all HTML files into \fB${DEVHELPROOT}\fR/books/\fB${EBOOKDESTDIR}\fR. +.SH "REPORTING BUGS" +Please report bugs via http://bugs.gentoo.org/ +.SH "SEE ALSO" +.BR ebuild (5) +.SH "FILES" +.BR /usr/portage/eclass/ebook.eclass +.SH "AUTHORS" +Aaron Walker +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/ebook.eclass.5,v 1.2.2.1 2005/01/15 00:19:36 vapier Exp $ diff --git a/man/ebuild.1 b/man/ebuild.1 new file mode 100644 index 000000000..af5f493fd --- /dev/null +++ b/man/ebuild.1 @@ -0,0 +1,184 @@ +.TH "EBUILD" "1" "Nov 2002" "Portage 2.0.51" "Portage" +.SH "NAME" +ebuild \- manual page for the ebuild program, a low level interface to +the Portage system. +.SH "SYNOPSIS" +.B ebuild +.I file command [command]\fR... +.SH "DESCRIPTION" +The ebuild program is a direct interface to the Portage system. It +allows for direct action upon an ebuild with specific subcommands or +groups of commands to perform in a specific ebuild's context and +functions. Accepting an ebuild script and one or more commands +as arguments, the ebuild program parses the ebuild script and +execute the specified commands. Commands exist to fetch sources, +unpack sources, compile sources, install object files into a temporary +directory "image", merge the image to the local filesystem, create a +bzipped tarball package out of the image, and more. +.SH "FILE" +This must be a valid ebuild script. For further information read +\fBebuild\fR(5). +.SH "COMMANDS" +.TP +.BR help +Show a condensed form of the man page along with a lot of package +specific information. +.TP +.BR setup +Run all package specific setup actions and exotic system checks. +.TP +.BR clean +Cleans the temporary build directory that Portage has created for +this particular ebuild file. The temporary build directory normally +contains the extracted source files as well as a possible +"install image" (all the files that will be merged to the local +filesystem or stored in a package). The location of the build +directory is set by the BUILD_PREFIX variable. For information +on what this variable is, run \fIemerge [\-v] info\fR, or to override +this variable, see \fBmake.conf\fR(5). + +Note: Portage cleans up almost everything after a package has been +successfully merged unless FEATURES contains 'noclean'. Adding noclean +to FEATURES will cause a lot of files to remain and will consume large +amounts of space, very quickly. It is not recommended to leave this on +unless you have use for the sources post\-merge. Optionally one may, +manual clean \fIrm \-rf /var/tmp/portage\fR will take care of all +of these files. +.TP +.BR fetch +Checks to see if all the sources specified in SRC_URI are available in +DISTDIR (see \fBmake.conf\fR(5) for more information) and have a valid +md5 checksum. If the sources aren't available, an attempt is made to +download them from the locations specified in SRC_URI. If multiple +download locations are listed for a particular file, Portage pings +each location to see which location is closer. (May not be true +presently.) The Gentoo Linux mirrors defined by GENTOO_MIRRORS is +always considered first. If for some reason the current or +just\-downloaded sources' md5 digests don't match those recorded +in files/digest\-[package]\-[version\-rev], a warning is printed +and ebuild exits with an error code of 1. +.TP +.BR digest +Creates a digest file for the package in +/usr/portage/[category]/[package]/files/. This digest file lists the +md5sum's of all the files found in the SRC_URI. If the fetched source +of the package is corrupt/bogus in some way, the md5sum will catch this. +.TP +.BR unpack +Extracts the sources to a subdirectory in the \fIbuild directory\fR +(BUILD_PREFIX) by running the \fIsrc_unpack()\fR function in the ebuild +file. If no src_unpack() function has been specified, a default +src_unpack() function is used that extracts all the files specified in +SRC_URI. The sources are normally extracted to +${BUILD_PREFIX}/[package]\-[version\-rev]/work. This particular directory +can be referenced by using the ${WORKDIR} variable. + +If you're creating an ebuild, you'll want to make sure that the S +(source directory) variable defined at at the top of your ebuild script +points to the directory that contains your extracted sources. This +directory is defined by default to be ${WORKDIR}/${P}, so it is not +often required. The src_unpack() function is also responsible for +making the appropriate patches to the sources so that they're ready +for compilation. +.TP +.BR compile +Compiles the extracted sources by running the the \fIsrc_compile()\fR +function specified in the ebuild file. When src_compile() starts, the +current working directory will be set to ${S}. When src_compile() +completes, the sources should be fully compiled. +.TP +.BR test +Run package specific test cases to verify that everything was built +properly. +.TP +.BR preinst +Run package specific actions that need to be done before the package +is installed into the live filesystem. +.TP +.BR install +Installs the package to the temporary \fIinstall directory\fR by running +the \fIsrc_install()\fR function. When completed, the +\fIinstall directory\fR (${BUILD_PREFIX}/[package]\-[version\-rev]/image) +will contain all the files that should either be merged to the local +file system or included in a binary package. +.TP +.BR postinst +Run package specific actions that need to be done after the package +is installed into the live filesystem. Usually helpful messages are +shown here. +.TP +.BR qmerge +This function installs all the files in the \fIinstall directory\fR +to the live filesystem. The process works as follows: first, the +\fIpkg_preinst()\fR function (if specified) is run. Then, the files +are merged into the live filesystem, and the installed files' md5 +digests are recorded in +\fI/var/db/pkg/${CATEOGRY}/${PN}\-[version\-rev]/CONTENTS\fR. After +all the files have been merged, the \fIpkg_postinst()\fR function +(if specified) is executed. +.TP +.BR merge +Normally, to merge an ebuild, you need to \fIfetch\fR, \fIunpack\fR, +\fIcompile\fR, \fIinstall\fR and \fIqmerge\fR. If you're simply +interested in merging the ebuild, you can use this command, which +will perform all these steps for you, stopping along the way if a +particular step doesn't complete successfully. +.TP +.BR unmerge +This function first executes the \fIpkg_prerm\fR function (if specified). +Then it removes all files from the live filesystem that have a valid md5 +checksum and mtime in the package contents file. Any empty directories +are recursively removed. Finally, it runs \fIpkg_postrm\fR function (if +specified). It is safe to merge a new version of a package first and +then unmerge the old one. In fact, this is the recommended package +upgrade method. +.TP +.BR prerm +Run package specific actions that need to be executed before the package is +removed from the filesystem. See also \fIunmerge\fR. +.TP +.BR postrm +Run package specific actions that need to be executed after the package is +removed from the filesystem. See also \fIunmerge\fR. +.TP +.BR config +Run package specific actions needed to be executed after the emerge +process has completed. This usually entails configuration file +setup or other similar setups that the user may wish to run. +.TP +.BR package +This command is a lot like the \fImerge\fR command, except that after +fetching, unpacking, compiling and installing, a .tbz2 binary package +tarball is created and stored in ${PKGDIR}/All (${PKGDIR} defaults to +/usr/portage/packages). A symbolic link is created in +${PKGDIR}/${CATEGORY} that points to the package in ${PKGDIR}/All. +.TP +.BR rpm +Builds a RedHat RPM package from the files in the temporary +\fIinstall directory\fR. At the moment, the ebuild's dependency +information is not incorporated into the RPM. +.SH "REPORTING BUGS" +Please report bugs via http://bugs.gentoo.org/ +.SH "SEE ALSO" +.BR emerge (1), +.BR ebuild (5), +.BR make.conf (5) +.TP +The \fI/usr/sbin/ebuild.sh\fR script. +.TP +The helper apps in \fI/usr/lib/portage/bin\fR. +.SH "FILES" +.TP +\fB/etc/make.conf\fR +Contains variables for the build\-process and overwrites those +in make.globals. +.SH "AUTHORS" +Achim Gottinger +.br +Daniel Robbins +.br +Nicholas Jones +.br +Mike Frysinger +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/ebuild.1,v 1.16 2004/09/17 00:17:10 vapier Exp $" diff --git a/man/ebuild.5 b/man/ebuild.5 new file mode 100644 index 000000000..349a2b81d --- /dev/null +++ b/man/ebuild.5 @@ -0,0 +1,837 @@ +.TH "EBUILD" "5" "Feb 2003" "Portage 2.0.51" "portage" +.SH "NAME" +ebuild \- the internal format, variables, and functions in an ebuild script +.SH "DESCRIPTION" +The +.BR ebuild (1) +program accepts a single ebuild script as an argument. This script +contains variables and commands that specify how to download, unpack, +patch, compile, install and merge a particular software package from +its original sources. In addition to all of this, the ebuild script +can also contain pre/post install/remove commands, as required. +.SH "EXAMPLES" +Here's a simple example ebuild: + +.DS +.nf +# Copyright 1999\-2005 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: + +inherit some_eclass another_eclass + +DESCRIPTION="Super\-useful stream editor (sed)" +HOMEPAGE="http://www.gnu.org/software/sed/sed.html" +SRC_URI="ftp://alpha.gnu.org/pub/gnu/sed/${P}.tar.gz" + +LICENSE="GPL\-2" +SLOT="0" +KEYWORDS="~x86" +IUSE="" + +DEPEND="virtual/libc" +RDEPEND="virtual/libc" + +src_compile() { + econf || die "could not configure" + emake || die "emake failed" +} + +src_install() { + into /usr + doinfo doc/sed.info + doman doc/sed.1 + into / + dobin sed/sed || die "dobin sed failed" + dodir /usr/bin + dosym /bin/sed /usr/bin/sed + dodoc NEWS README* THANKS TODO AUTHORS BUGS ANNOUNCE +} +.fi +.SH "VARIABLES" +.TP +.B MISC USAGE NOTES +- PORTAGE* and PORTDIR* variables may be found in \fBmake.conf\fR(5). +.br +- When assigning values to variables in ebuilds, you \fBcannot have a space\fR +between the variable name and the equal sign. +.TP +.B P +This variable contains the package name without the ebuild revision. +This variable must NEVER be modified. +.br +\fBxfree-4.2.1-r2.ebuild\fR --> \fB$P\fR=='\fIxfree-4.2.1\fR' +.TP +.B PN +Contains the name of the script without the version number. +.br +\fBxfree-4.2.1-r2.ebuild\fR --> \fB$PN\fR=='\fIxfree\fR' +.TP +.B PV +Contains the version number without the revision. +.br +\fBxfree-4.2.1-r2.ebuild\fR --> \fB$PV\fR=='\fI4.2.1\fR' +.TP +.B PR +Contains the revision number or 'r0' if no revision number exists. +.br +\fBxfree-4.2.1-r2.ebuild\fR --> \fB$PR\fR=='\fIr2\fR' +.TP +.B PVR +Contains the version number with the revision. +.br +\fBxfree-4.2.1-r2.ebuild\fR --> \fB$PVR\fR=='\fI4.2.1-r2\fR' +.TP +.B PF +Contains the full package name \fI[PN]\-[PVR]\fR +.br +\fBxfree-4.2.1-r2.ebuild\fR --> \fB$PF\fR=='\fIxfree-4.2.1-r2\fR' +.TP +.B A +Contains all source files required for the package. This variable must +not be defined. It is autogenerated from the \fISRC_URI\fR variables. +.TP +\fBWORKDIR\fR = \fI"${PORTAGE_TMPDIR}/portage/${PF}/work"\fR +Contains the path to the package build root. Do not modify this variable. +.TP +\fBFILESDIR\fR = \fI"${PORTDIR}/${CATEGORY}/${PN}/files"\fR +Contains the path to the 'files' sub folder in the package specific +location in the portage tree. Do not modify this variable. +.TP +\fBS\fR = \fI"${WORKDIR}/${P}"\fR +Contains the path to the temporary \fIbuild directory\fR. This variable +is used by the functions \fIsrc_compile\fR and \fIsrc_install\fR. Both +are executed with \fIS\fR as the current directory. This variable may +be modified to match the extraction directory of a tarball for the package. +.TP +\fBT\fR = \fI"${PORTAGE_TMPDIR}/portage/${PF}/temp"\fR +Contains the path to a \fItemporary directory\fR. You may use this for +whatever you like. +.TP +\fBD\fR = \fI"${PORTAGE_TMPDIR}/portage/${PF}/image"\fR +Contains the path to the temporary \fIinstall directory\fR. Every write +operation that does not involve the helper tools and functions (found below) +should be prefixed with ${D}. Do not modify this variable. This will not be +available inside of the pkg_* functions, see \fIIMAGE\fR below. +.TP +\fBIMAGE\fR = \fI"${PORTAGE_TMPDIR}/portage/${PF}/image"\fR +Contains the path to the temporary \fIimage directory\fR. When inside of the +\fIpkg_*\fR functions, you should access the \fIIMAGE\fR directory instead of +the \fID\fR directory. Do not modify this variable. +.TP +\fBDESCRIPTION\fR = \fI"A happy little package"\fR +Should contain a short description of the package. +.TP +\fBSRC_URI\fR = \fI"http://happy.com/little/${P}.tar.gz"\fR +Contains a list of URI's for the required source files. It can contain +multiple URI's for a single source file. The fastest location is chosen +if the file was not found at \fIGENTOO_MIRROR\fB\fR. +.TP +\fBHOMEPAGE\fR = \fI"http://happy.com/"\fR +Should contain a list of URL's for the sources main sites and other further +package dependent information. +.TP +\fBKEYWORDS\fR = \fI[-~][x86,ppc,sparc,mips,alpha,arm,hppa]\fR +Should contain appropriate list of arches that the ebuild is know to +work/not work. By default if you do not know if an ebuild runs under +a particular arch simply omit that KEYWORD. If the ebuild will not +work on that arch include it as \-ppc for example. If the ebuild is +being submitted for inclusion, it must have ~arch set for architectures +where it has been PROVEN TO WORK. (Packages KEYWORDed this way may be +unmasked for testing by setting ACCEPT_KEYWORDS="~arch" on the command +line, or in \fBmake.conf\fR(5)) For an authoritative list please review +/usr/portage/profiles/arch.list. +.TP +\fBSLOT\fR +This sets the SLOT for packages that may need to co\-exist. By default +you should set \fBSLOT\fR="0" unless you know what you are doing and need +to do otherwise. This value should \fINEVER\fR be left undefined. +.TP +\fBLICENSE\fR +This should be a space delimited list of licenses that the package falls +under. This \fB_must_\fR be set to a matching license in +/usr/portage/licenses/. If the license does not exist in portage yet you +must add it first. +.TP +\fBIUSE\fR +This should be a list of any and all USE flags that are leveraged within +your build script. The only USE flags that should not be listed here are +arch related flags (see \fBKEYWORDS\fR). +.TP +\fBDEPEND\fR +This should contain a list of all packages that are required for the +program to compile. +.RS +.TP +.B DEPEND Atoms +A depend atom is simply a dependency that is used by portage when calculating +relationships between packages. Please note that if the atom has not already +been emerged, then the latest version available is matched. +.RS +.TP +.B Atom Bases +The base atom is just a full category/packagename. Hence, these are base atoms: + +.nf +.I sys-apps/sed +.I sys-libs/zlib +.I net-misc/dhcp +.fi +.TP +.B Atom Versions +It is nice to be more specific and say that only certain versions of atoms are +acceptable. Note that versions must be combined with a prefix (see below). Hence +you may add a version number as a postfix to the base: + +.nf +sys-apps/sed\fI-4.0.5\fR +sys-libs/zlib\fI-1.1.4-r1\fR +net-misc/dhcp\fI-3.0_p2\fR +.fi + +Versions are normally made up of two or three numbers separated by periods, such +as 1.2 or 4.5.2. This string may be followed by a character such as 1.2a or 4.5.2z. +Note that this letter is \fBnot\fR meant to indicate alpha, beta, etc... status. +For that, use the optional suffix; either _alpha, _beta, _pre (pre-release), _rc +(release candidate), or _p (patch). This means for the 3rd pre-release of a package, +you would use something like 1.2_pre3. +.TP +.B Atom Prefix Operators [> >= = <= <] +Sometimes you want to be able to depend on general versions rather than specifying +exact versions all the time. Hence we provide standard boolean operators: + +.nf +\fI>\fRmedia-libs/libgd-1.6 +\fI>=\fRmedia-libs/libgd-1.6 +\fI=\fRmedia-libs/libgd-1.6 +\fI<=\fRmedia-libs/libgd-1.6 +\fI<\fRmedia-libs/libgd-1.6 +.fi +.TP +.B Extended Atom Prefixes [!~] and Postfixes [*] +Now to get even fancier, we provide the ability to define blocking packages and +version range matching. Also note that these extended prefixes/postfixes may +be combined in any way with the atom classes defined above. Here are some common +examples you may find in the portage tree: + +.nf +\fI!\fRapp-text/dos2unix +=dev-libs/glib-2\fI*\fR +\fI!\fR=net-fs/samba-2\fI*\fR +\fI~\fRnet-libs/libnet-1.0.2a +.fi + +\fI!\fR means block packages from being installed at the same time. +.br +\fI*\fR means match any version of the package so long as the specified base +is matched. So with a version of '2*', we can match '2.1', '2.2', '2.2.1', +etc... and not match version '1.0', '3.0', '4.1', etc... +.br +\fI~\fR means match any revision of the base version specified. So in the +above example, we would match versions '1.0.2a', '1.0.2a-r1', '1.0.2a-r2', +etc... +.RE +.TP +.B Dynamic DEPENDs +Sometimes programs may depend on different things depending on the USE +variable. Portage offers a few options to handle this. Note that when +using the following syntaxes, each case is considered as 1 Atom in the +scope it appears. That means that each Atom both conditionally include +multiple Atoms and be nested to an infinite depth. +.RS +.TP +.B usevar? ( DEPEND Atom ) +To include the jpeg library when the user has jpeg in \fBUSE\fR, simply use the +following syntax: +.br +.B jpeg? ( media-libs/jpeg) +.TP +.B !usevar? ( Atom ) +If you want to include a package only if the user does not have a certain option +in their \fBUSE\fR variable, then use the following syntax: +.br +.B !nophysfs? ( dev-games/physfs ) +.br +This is often useful for those times when you want to want to add optional support +for a feature and have it enabled by default. +.TP +.B usevar? ( Atom if true ) !usevar? ( Atom if false ) +For functionality like the tertiary operator found in C you must use +two statements, one normal and one inverted. If a package uses +GTK2 or GTK1, but not both, then you can handle that like this: +.br +.B gtk2? ( =x11-libs/gtk+-2* ) !gtk2? ( =x11-libs/gtk+-1* ) +.br +That way the default is the superior GTK2 library. +.TP +.B || ( Atom Atom ... ) +When a package can work with a few different packages but a virtual is not +appropriate, this syntax can easily be used. +.nf +.B || ( +.B app-games/unreal-tournament +.B app-games/unreal-tournament-goty +.B ) +.fi +Here we see that unreal-tournament has a normal version and it has a goty version. +Since they provide the same base set of files, another package can use either. +Adding a virtual is inappropriate due to the small scope of it. +.br +Another good example is when a package can be built with multiple video +interfaces, but it can only ever have just one. +.nf +.B || ( +.B sdl? ( media-libs/libsdl ) +.B svga? ( media-libs/svgalib ) +.B opengl? ( virtual/opengl ) +.B ggi? ( media-libs/libggi ) +.B virtual/x11 +.B ) +.fi +Here only one of the packages will be chosen, and the order of preference is +determined by the order in which they appear. So sdl has the best chance of being +chosen, followed by svga, then opengl, then ggi, with a default of X if the user +does not specify any of the previous choices. +.RE + +.RE +.TP +\fBRDEPEND\fR +This should contain a list of all packages that are required for this +program to run (aka runtime depend). If this is not set, then it +defaults to the value of \fBDEPEND\fR. +.br +You may use the same syntax to vary dependencies as seen above in \fBDEPEND\fR. +.TP +\fBPDEPEND\fR +This should contain a list of all packages that will have to be installed after +the program has been merged. +.br +You may use the same syntax to vary dependencies as seen above in \fBDEPEND\fR. +.TP +\fBRESTRICT\fR = \fI[fetch,mirror,nostrip,userpriv]\fR +This should be a space delimited list of portage features to restrict. +.PD 0 +.RS +.TP +.I fetch +like \fInomirror\fR but the files will not be fetched via \fBSRC_URI\fR either. +.TP +.I mirror +files in \fBSRC_URI\fR will not be downloaded from the \fBGENTOO_MIRRORS\fR. +.TP +.I primaryuri +fetch from URL's in \fBSRC_URI\fR before \fBGENTOO_MIRRORS\fR. +.TP +.I nostrip +final binaries/libraries will not be stripped of debug symbols. +.TP +.I userpriv +Disables userpriv for specific packages. +.RE +.PD 1 +.TP +\fBPROVIDE\fR = \fI"virtual/TARGET"\fR +This variable should only be used when a package provides a virtual target. +For example, blackdown-jdk and sun-jdk provide \fIvirtual/jdk\fR. This +allows for packages to depend on \fIvirtual/jdk\fR rather than on blackdown +or sun specifically. +.SH "PORTAGE DECLARATIONS" +.TP +.B inherit +Inherit is portage's maintainance of extra classes of functions that +are external to ebuilds and provided as inheritable capabilities and +data. They define functions and set data types as drop-in replacements, +expanded, and simplified routines for extremely common tasks to streamline +the build process. Inherit may only be called once in an ebuild and it may +\fBnever be wrapped within any conditionals\fR of any kind. Specification of +the eclasses contains only their name and not the \fI.eclass\fR extention. +.SH "FUNCTIONS" +.TP +.B pkg_nofetch +If you turn on \fIfetch\fR in \fBRESTRICT\fR, then this function will be +run when the files in \fBSRC_URI\fR cannot be found. Useful for +displaying information to the user on *how* to obtain said files. All +you have to do is output a message and let the function return. Do not +end the function with a call to \fBdie\fR. +.TP +.B pkg_setup +This function can be used if the package needs specific setup actions or +checks to be preformed before anything else. +.br +Initial working directory of ${PORTAGE_TMPDIR}. +.TP +.B src_unpack +This function is used to unpack all the sources in \fIA\fR to \fIWORKDIR\fR. +If not defined in the \fIebuild script\fR it calls \fIunpack ${A}\fR. Any +patches and other pre configure/compile modifications should be done here. +.br +Initial working directory of $WORKDIR. +.TP +.B src_compile +All necessary steps for configuration and compilation should be done in here. +.br +Initial working directory of $S. +.TP +.B src_test +Run all package specific test cases. The default is to run 'make check' +followed 'make test'. +.br +Initial working directory of $S. +.TP +.B src_install +Should contain everything required to install the package in the temporary +\fIinstall directory\fR. +.br +Initial working directory of $S. +.TP +.B pkg_preinst pkg_postinst +All modifications required on the live\-filesystem before and after the +package is merged should be placed here. Also commentary for the user +should be listed here as it will be displayed last. +.br +Initial working directory of $PWD. +.TP +.B pkg_prerm pkg_postrm +Like the pkg_*inst functions but for unmerge. +.br +Initial working directory of $PWD. +.TP +.B pkg_config +This function should contain optional basic configuration steps. +.br +Initial working directory of $PWD. +.SH "HELPER FUNCTIONS: GENERAL" +.TP +\fBdie\fR \fI[reason]\fR +Causes the current emerge process to be aborted. The final display will +include \fIreason\fR. +.TP +\fBuse\fR \fI\fR +If \fIUSE item\fR is in the \fBUSE\fR variable, \fIUSE item\fR will be +echoed and the function will return 0. If \fIUSE item\fR is not in the +\fBUSE\fR variable, the function will return 1. \fBuseq\fR is a non-echoing +version of \fBuse\fR. +.RS +.TP +.I Example: +.nf +if useq gnome ; then + guiconf="--enable-gui=gnome --with-x" +elif useq gtk ; then + guiconf="--enable-gui=gtk --with-x" +elif useq X ; then + guiconf="--enable-gui=athena --with-x" +else + # No gui version will be built + guiconf="" +fi +.fi +.RE +.TP +\fBuse_with\fR \fI\fR \fI[configure option]\fR +Useful for creating custom options to pass to a configure script. If +\fIUSE item\fR is in the \fBUSE\fR variable, then the string +\fI--with-[configure option]\fR will be echoed. If \fIUSE item\fR is +not in the \fBUSE\fR variable, then the string +\fI--without-[configure option]\fR will be echoed. If +\fIconfigure option\fR is not specified, then \fIUSE item\fR will be +used in its place. +.RS +.TP +.I Example: +.nf +USE="jpeg" +myconf="$(use_with jpeg libjpeg)" +(myconf now has the value "--with-libjpeg") + +USE="" +myconf="$(use_with jpeg libjpeg)" +(myconf now has the value "--without-libjpeg") + +USE="opengl" +myconf="$(use_with opengl") +(myconf now has the value "--with-opengl") +.fi +.RE +.TP +\fBuse_enable\fR \fI\fR \fI[configure option]\fR +Useful for creating custom options to pass to a configure script. If +\fIUSE item\fR is in the \fBUSE\fR variable, then the string +\fI--enable-[configure option]\fR will be echoed. If \fIUSE item\fR is +not in the \fBUSE\fR variable, then the string +\fI--disable-[configure option]\fR will be echoed. If \fIconfigure option\fR +is not specified, then \fIUSE item\fR will be used in its place. +.br +See \fBuse_with\fR for an example. +.TP +\fBhas\fR \fI\fR \fI\fR +If \fIitem\fR is in \fIitem list\fR, then \fIitem\fR is echoed and \fBhas\fR +returns 0. Otherwise, nothing is echoed and 1 is returned. As indicated with +use, there is a non-echoing version \fBhasq\fR. Please use \fBhasq\fR in all +places where output is to be disregarded. Never use the output for calculation. +.br +The \fIitem list\fR is delimited by the \fIIFS\fR variable. This variable +has a default value of ' ', or a space. It is a \fBbash\fR(1) setting. +.TP +\fBhas_version\fR \fI\fR +Check to see if \fIcategory/package-version\fR is installed on the system. +The parameter accepts all values that are acceptable in the \fBDEPEND\fR +variable. The function returns 0 if \fIcategory/package-version\fR is +installed, 1 otherwise. +.TP +\fBbest_version\fR \fI\fR +This function will look up \fIpackage name\fR in the database of currently +installed programs and echo the "best version" of the package that is +currently installed. The function returns 0 if there is a package that +matches \fIpackage name\fR. Otherwise, the function will return 1. +.RS +.TP +.I Example: +VERINS="$(best_version net-ftp/glftpd)" +.br +(VERINS now has the value "net-ftp/glftpd-1.27" if glftpd-1.27 is installed) +.RE +.SH "HELPER FUNCTIONS: OUTPUT" +.TP +\fBeinfo\fR \fI"informative message"\fR +If you need to display an message that you wish the user to read and take +notice of, then use \fBeinfo\fR. It works just like \fBecho\fR(1), but +adds a little more to the output so as to catch the user's eye. +.TP +\fBewarn\fR \fI"warning message"\fR +Same as \fBeinfo\fR, but should be used when showing a warning to the user. +.TP +\fBeerror\fR \fI"error message"\fR +Same as \fBeinfo\fR, but should be used when showing an error to the user. +.SH "HELPER FUNCTIONS: UNPACK" +.TP +\fBunpack\fR \fI\fR \fI[list of more sources]\fR +This function uncompresses and/or untars a list of sources into the current +directory. The function will append \fIsource\fR to the \fBDISTDIR\fR variable. +.SH "HELPER FUNCTIONS: COMPILE" +.TP +\fBeconf\fR \fI[configure options]\fR +This is used as a replacement for configure. Performs: +.nf +configure \\ + --prefix=/usr \\ + --host=${CHOST} \\ + --mandir=/usr/share/man \\ + --infodir=/usr/share/info \\ + --datadir=/usr/share \\ + --sysconfdir=/etc \\ + --localstatedir=/var/lib \\ + \fI${EXTRA_ECONF}\fR \\ + \fIconfigure options\fR +.fi +Note that the \fIEXTRA_ECONF\fR is for users only, not for ebuild +writers. If you wish to pass more options to configure, just pass the +extra arguements to \fBeconf\fR. +.TP +\fBemake\fR \fI[make options]\fR +This is used as a replacement for make. Performs 'make ${MAKEOPTS} +\fImake options\fR' (as set in /etc/make.globals), default is MAKEOPTS="\-j2". + +\fB***warning***\fR +.br +if you are going to use \fBemake\fR, make sure your build is happy with +parallel makes (make \-j2). It should be tested thoroughly as parallel +makes are notorious for failing _sometimes_ but not always. +.SH "HELPER FUNCTIONS: INSTALL" +.TP +\fBeinstall\fR \fI[make options]\fR +This is used as a replacement for make install. Performs: +.nf +make \\ + prefix=${D}/usr \\ + datadir=${D}/usr/share \\ + infodir=${D}/usr/share/info \\ + localstatedir=${D}/var/lib \\ + mandir=${D}/usr/share/man \\ + sysconfdir=${D}/etc \\ + \fI${EXTRA_EINSTALL}\fR \\ + \fImake options\fR \\ + install +.fi +Please do \fBnot\fR use this in place of 'make install DESTDIR=${D}'. +That is the preferred way of installing make-based packages. Also, do +not utilize the \fIEXTRA_EINSTALL\fR variable since it is for users. + +.PD 0 +.TP +.B prepall +.TP +.B prepalldocs +.TP +.B prepallinfo +.TP +.B prepallman +.TP +.B prepallstrip +.PD 1 +Useful for when a package installs into \fB${D}\fR via scripts +(i.e. makefiles). If you want to be sure that libraries are executable, +aclocal files are installed into the right place, doc/info/man files are +all compressed, and that executables are all stripped of debugging symbols, +then use these suite of functions. +.RS +.PD 0 +.TP +.B prepall: +Runs \fBprepallman\fR, \fBprepallinfo\fR, \fBprepallstrip\fR, sets +libraries +x, and then checks aclocal directories. Please note this +does \fI*not*\fR run \fBprepalldocs\fR. +.TP +.B prepalldocs: +Compresses all doc files in ${D}/usr/share/doc. +.TP +.B prepallinfo: +Compresses all info files in ${D}/usr/share/info. +.TP +.B prepallman: +Compresses all man files in ${D}/usr/share/man. +.TP +.B prepallstrip: +Strips all executable files of debugging symboles. This includes libraries. +.RE + +.TP +\fBprepinfo\fR \fI[dir]\fR +.TP +\fBpreplib\fR \fI[dir]\fR +.TP +\fBpreplib.so\fR \fI[dir]\fR +.TP +\fBprepman\fR \fI[dir]\fR +.TP +\fBprepstrip\fR \fI[dir]\fR +.PD 1 +Similiar to the \fBprepall\fR functions, these are subtle in their differences. +.RS +.PD 0 +.TP +.B prepinfo: +If a \fIdir\fR is not specified, then \fBprepinfo\fR will assume the dir +\fIusr\fR. \fBprepinfo\fR will then compress all the files in +${D}/\fIdir\fR/info. +.TP +.B preplib: +If a \fIdir\fR is not specified, then \fBpreplib\fR will assume the dir +\fIusr\fR. \fBpreplib\fR will then run 'ldconfig -n -N' on ${D}/\fIdir\fR/lib. +.TP +.B preplib.so: +All the files with '.so' in their name and are found in ${D}/\fIdir\fR will +be stripped of their debug symbols. You may specify multiple directories. +.TP +.B prepman: +If a \fIdir\fR is not specified, then \fBprepman\fR will assume the dir +\fIusr\fR. \fBprepman\fR will then compress all the files in +${D}/\fIdir\fR/man/*/. +.TP +.B prepstrip: +All the files found in ${D}/\fIdir\fR will be stripped. You may specify +multiple directories. +.RE +.PD 1 +.TP +\fBdopython\fR \fI\fR +Performs \fIcommands\fR with python and returns the result. +.TP +\fBdosed\fR \fI"s:orig:change:g" \fR +Performs sed (including cp/mv \fIfilename\fR) on \fIfilename\fR. +.br +.BR 'dosed\ "s:/usr/local:/usr:g"\ /usr/bin/some-script' +runs sed on ${D}/usr/bin/some-script +.TP +\fBdodir\fR \fI\fR +Creates a directory inside of ${D}. +.br +.BR 'dodir\ /usr/lib/apache' +creates ${D}/usr/lib/apache. Note that the do* functions will run +\fBdodir\fR for you. +.TP +\fBdiropts\fR \fI[options for install(1)]\fR +Can be used to define options for the install function used in +\fBdodir\fR. The default is \fI-m0755\fR. +.TP +\fBinto\fR \fI\fR +Sets the root (\fIDESTTREE\fR) for other functions like \fBdobin\fR, +\fBdosbin\fR, \fBdoman\fR, \fBdoinfo\fR, \fBdolib\fR. +.br +The default root is /usr. +.TP +\fBkeepdir\fR \fI\fR +Tells portage to leave a directory behind even if it is empty. Functions +the same as \fBdodir\fR. +.TP +\fBdobin\fR \fI [list of more binaries]\fR +Installs a \fIbinary\fR or a list of binaries into \fIDESTTREE\fR/bin. +Creates all necessary dirs. +.TP +\fBdosbin\fR \fI [list of more binaries]\fR +Installs a \fIbinary\fR or a list of binaries into \fIDESTTREE\fR/sbin. +Creates all necessary dirs. +.TP +\fBdoinitd\fR \fI [list of more init.d scripts]\fR +Install Gentoo \fIinit.d scripts\fR. They will be installed into the +correct location for Gentoo init.d scripts (/etc/init.d/). Creates all +necessary dirs. +.TP +\fBdoconfd\fR \fI [list of more conf.d file]\fR +Install Gentoo \fIconf.d files\fR. They will be installed into the +correct location for Gentoo conf.d files (/etc/conf.d/). Creates all +necessary dirs. +.TP +\fBdoenvd\fR \fI [list of more env.d entries]\fR +Install Gentoo \fIenv.d entries\fR. They will be installed into the +correct location for Gentoo env.d entries (/etc/env.d/). Creates all +necessary dirs. + +.PD 0 +.TP +\fBdolib\fR \fI\fR \fI[list of more libraries]\fR +.TP +\fBdolib.a\fR \fI\fR \fI[list of more libraries]\fR +.TP +\fBdolib.so\fR \fI\fR \fI[list of more libraries]\fR +.PD 1 +Installs a library or a list of libraries into \fIDESTTREE\fR/lib. +Creates all necessary dirs. +.TP +\fBlibopts\fR \fI[options for install(1)]\fR +Can be used to define options for the install function used in +the \fBdolib\fR functions. The default is \fI-m0644\fR. +.TP +\fBdoman\fR \fI[\-i18n=]\fR \fI [list of more man\-pages]\fR +Installs manual\-pages into /usr/share/man/man[0\-9n] depending on the +manual file ending. The files are gzipped if they are not already. You can +specify locale-specific manpages with the \fI\-i18n\fR option. Then the +man-page will be installed into /usr/share/man/\fI\fR/man[0\-9n]. +Creates all necessary dirs. + +.PD 0 +.TP +\fBdohard\fR \fI \fR +.TP +\fBdosym\fR \fI \fR +.PD 1 +Performs the ln command as either a hard link or symlink. +.TP +\fBdohtml\fR \fI [\-a filetypes] [\-r] [\-x list\-of\-dirs\-to\-ignore] [list\-of\-files\-and\-dirs]\fR +Installs the files in the list of files (space\-separated list) into +/usr/share/doc/${PF}/html provided the file ends in .html, .png, .js, .jpg, +or .css. Setting \fI\-a\fR limits what types of files will be included, +\fI\-A\fR appends to the default list, setting \fI\-x\fR sets which dirs to +exclude (CVS excluded by default), \fI\-r\fR sets recursive. +.TP +\fBdoinfo\fR \fI [list of more info\-files]\fR +Installs info\-pages into \fIDESTDIR\fR/info. Files are automatically +gzipped. Creates all necessary dirs. +.TP +\fBdojar\fR \fI [list of more jar files]\fR +Installs jar files into /usr/share/${PN}/lib and adds them to +/usr/share/${PN}/classpath.env. +.TP +\fBdomo\fR \fI [list of more locale\-files] \fR +Installs locale\-files into \fIDESTDIR\fR/usr/share/locale/[LANG] +depending on local\-file's ending. Creates all necessary dirs. + +.PD 0 +.TP +\fBfowners\fR \fI [files]\fR +.TP +\fBfperms\fR \fI [files]\fR +.PD 1 +Performs chown (\fBfowners\fR) or chmod (\fBfperms\fR), applying +\fIpermissions\fR to \fIfiles\fR. +.TP +\fBinsinto\fR \fI[path]\fR +Sets the root (\fIINSDESTTREE\fR) for the \fBdoins\fR function. +.br +The default root is /. +.TP +\fBinsopts\fR \fI[options for install(1)]\fR +Can be used to define options for the install function used in +\fBdoins\fR. The default is \fI\-m0644\fR. +.TP +\fBdoins\fR \fI [list of more files]\fR +Installs files into \fIINSDESTTREE\fR. This function uses \fBinstall\fR(1). +Creates all necessary dirs. +.TP +\fBexeinto\fR \fI[path]\fR +Sets the root (\fIEXEDESTTREE\fR) for the \fBdoexe\fR function. +.br +The default root is /. +.TP +\fBexeopts\fR \fI[options for install(1)]\fR +Can be used to define options for the install function used in \fBdoexe\fR. +The default is \fI\-m0755\fR. +.TP +\fBdoexe\fR \fI [list of more executables]\fR +Installs a executable or a list of executable into \fIEXEDESTTREE\fR. +This function uses \fBinstall\fR(1). Creates all necessary dirs. +.TP +\fBdocinto\fR \fI[path]\fR +Sets the relative subdir (\fIDOCDESTTREE\fR) used by \fBdodoc\fR. +.TP +\fBdodoc\fR \fI [list of more documents]\fR +Installs a document or a list of document into /usr/share/doc/${PF}/\fIDOCDESTTREE\fR. +Files are automatically gzipped. Creates all necessary dirs. + +.PD 0 +.TP +\fBnewbin\fR \fI \fR +.TP +\fBnewsbin\fR \fI \fR +.TP +\fBnewinitd\fR \fI \fR +.TP +\fBnewconfd\fR \fI \fR +.TP +\fBnewenvd\fR \fI \fR +.TP +\fBnewlib\fR \fI \fR +.TP +\fBnewlib.so\fR \fI \fR +.TP +\fBnewlib.a\fR \fI \fR +.TP +\fBnewman\fR \fI \fR +.TP +\fBnewinfo\fR \fI \fR +.TP +\fBnewins\fR \fI \fR +.TP +\fBnewexe\fR \fI \fR +.TP +\fBnewdoc\fR \fI \fR +.PD 1 +All these functions act like the do* functions, but they only work with one +file and the file is installed as \fI[new filename]\fR. +.SH "REPORTING BUGS" +Please report bugs via http://bugs.gentoo.org/ +.SH "SEE ALSO" +.BR ebuild (1), +.BR make.conf (5) +.TP +The \fI/usr/sbin/ebuild.sh\fR script. +.TP +The helper apps in \fI/usr/lib/portage/bin\fR. +.SH "FILES" +.TP +\fB/etc/make.conf\fR +Contains variables for the build\-process and overwrites those in make.defaults. +.TP +\fB/etc/make.globals\fR +Contains the default variables for the build\-process, you should edit +\fI/etc/make.conf\fR instead. +.SH "AUTHORS" +.nf +Achim Gottinger +Mark Guertin +Nicholas Jones +Mike Frysinger +.fi +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/ebuild.5,v 1.73.2.8 2005/05/22 09:56:55 vapier Exp $ diff --git a/man/emerge.1 b/man/emerge.1 new file mode 100644 index 000000000..56f8a402f --- /dev/null +++ b/man/emerge.1 @@ -0,0 +1,555 @@ +.TH "EMERGE" "1" "Jun 2003" "Portage 2.0.51" "Portage" +.SH "NAME" +emerge \- Command\-line interface to the Portage system +.SH "SYNOPSIS" +.TP +.BR emerge +[\fIoptions\fR] [\fIaction\fR] [\fIebuild\fR | \fItbz2file\fR | \fIclass\fR | \fIdependency\fR] ... +.TP +.BR emerge +\fB\-\-sync\fR | \fB\-\-info\fR | \fB\-\-version\fR +.TP +.BR emerge +\fB\-\-search\fR \fIsomestring\fR +.TP +.BR emerge +\fB\-\-help\fR [\fBsystem\fR | \fBconfig\fR | \fBsync\fR] +.SH "DESCRIPTION" +\fBemerge\fR is the definitive command\-line interface to the Portage +system. It is primarily used for installing packages, and \fBemerge\fR +can automatically handle any dependencies that the desired package has. +\fBemerge\fR can also update the \fBportage tree\fR, making new and +updated packages available. \fBemerge\fR gracefully handles updating +installed packages to newer releases as well. It handles both source +and binary packages, and it can be used to create binary packages for +distribution. +.SH "EBUILDS, TBZ2S, CLASSES AND DEPENDENCIES" +\fBemerge\fR primarily installs packages. You can specify +packages to install in one of four main ways: an \fIebuild\fR, +a \fItbz2file\fR, a \fIclass\fR, or a \fIdependency\fR. +.LP +.TP +.BR ebuild +An \fIebuild\fR must be, at a minimum, a valid Portage +package directory name without a version or category, such as +\fBportage\fR or \fBpython\fR. +Both categories and version numbers may be used in addition, such +as \fBsys\-apps/portage\fR or \fB=python\-2.2.1\-r2\fR. +\fBemerge\fR +ignores a trailing slash so that filename completion can be used. +The \fIebuild\fR may also be an actual filename, such as +\fB/usr/portage/app\-admin/python/python\-2.2.1\-r2.ebuild\fR. +WARNING: The implementation of \fBemerge /path/to/ebuild\fR is broken and so this syntax shouldn't be used. +.TP +.BR tbz2file +A \fItbz2file\fR must be a valid .tbz2 created with \fBebuild +\-.ebuild package\fR or \fBemerge \-\-buildpkg +[category/]\fR or \fBquickpkg /var/db/pkg//\fR. +.TP +.BR class +Package classes are a convenient shorthand for large groups of +packages. Two classes are currently supported: \fBsystem\fR +and \fBworld\fR. \fBsystem\fR refers to a set of packages +deemed necessary for your system to run properly. \fBworld\fR +contains all of the packages in \fBsystem\fR, along with any +other packages listed in \fB/var/lib/portage/world\fR. [See +\fBFILES\fR below for more information.] Note that these +commands are generally used in conjunction with \fB\-\-update\fR. +.TP +.BR dependency +A \fIdependency\fR describes bounds on a package that you wish to install. +\fISee portage(5) for the details on these 'atoms'.\fR For example, +\fB>=dev\-lang/python\-2.2.1\-r2\fR matches the latest available version of +Python greater than or equal to 2.2.1\-r2. Similarly, +\fB +.br +Geert Bevin +.br +Achim Gottinger +.br +Nicholas Jones +.br +Phil Bordelon +.br +Mike Frysinger +.br +Marius Mauch +.br +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/emerge.1,v 1.70.2.15 2005/08/20 03:56:50 vapier Exp $ diff --git a/man/env-update.1 b/man/env-update.1 new file mode 100644 index 000000000..9588f84cb --- /dev/null +++ b/man/env-update.1 @@ -0,0 +1,28 @@ +.TH "ENV-UPDATE" "1" "Feb 2003" "Portage 2.0.51" "Portage" +.SH NAME +env-update \- updates environment settings automatically +.SH SYNOPSIS +.B env-update +.SH DESCRIPTION +.B env-update +reads the files in \fI/etc/env.d\fR and automatically generates +\fI/etc/profile.env\fR and \fI/etc/ld.so.conf\fR. Then \fBldconfig\fR(8) +is run to update \fI/etc/ld.so.cache\fR. \fBenv-update\fR is run by +\fBemerge\fR(1) automatically after each package merge. Also, if you +make changes to \fI/etc/env.d\fR, you should run \fIenv-update\fR +yourself for changes to take effect immediately. Note that this would +only affect new processes. In order for the changes to affect your +active shell, you will probably have to run \fIsource /etc/profile\fR +first. +.SH OPTIONS +.TP +None. +.SH AUTHORS +Daniel Robbins +.SH "REPORTING BUGS" +Please report bugs via http://bugs.gentoo.org/ +.SH "SEE ALSO" +.BR emerge (1), +.BR ldconfig (8) +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/env-update.1,v 1.6 2004/09/17 00:17:10 vapier Exp $ diff --git a/man/etc-update.1 b/man/etc-update.1 new file mode 100644 index 000000000..f2bb827ce --- /dev/null +++ b/man/etc-update.1 @@ -0,0 +1,40 @@ +.TH "ETC-UPDATE" "1" "Feb 2003" "Portage 2.0.51" "Portage" +.SH NAME +etc-update \- handle configuration file updates +.SH SYNOPSIS +.B etc-update +.SH DESCRIPTION +.I etc-update +is supposed to be run after merging a new package to see if +there are updates to the configuration files. If a new +configuration file will override an old one, +.I etc-update +will prompt the user for a decision. +.PP +.I etc-update +will check all directories in the \fICONFIG_PROTECT\fR variable. All +config files found in \fICONFIG_PROTECT_MASK\fR will automatically be +updated for you by \fIetc-update\fR. See \fBmake.conf\fR(5) for more +information. +.SH OPTIONS +.TP +None. +.SH "REPORTING BUGS" +Please report bugs via http://bugs.gentoo.org/ +.SH "SEE ALSO" +.BR make.conf (5) +.SH "FILES" +.TP +.B /etc/etc-update.conf +Configuration settings for \fIetc-update\fR are stored here. +.TP +.B /etc/dispatch-conf.conf +Settings for dispatching configuration files right before they're merged. +.SH AUTHORS +Jochem Kossen and Leo Lipelis +.br +Karl Trygve Kalleberg +.br +Mike Frysinger +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/etc-update.1,v 1.9 2004/09/17 00:17:10 vapier Exp $ diff --git a/man/eutils.eclass.5 b/man/eutils.eclass.5 new file mode 100644 index 000000000..a1a7d63f9 --- /dev/null +++ b/man/eutils.eclass.5 @@ -0,0 +1,176 @@ +.TH "EUTILS.ECLASS" "5" "Jun 2003" "Portage 2.0.51" "portage" +.SH "NAME" +eutils.eclass \- many extra (but common) functions that are used in ebuilds +.SH "DESCRIPTION" +The \fBeutils\fR eclass contains a suite of functions that complement +the ones that ebuild.sh already contain. The idea is that the functions +are not required in all ebuilds but enough utilize them to have a common +home. +.SH "FUNCTIONS" +.TP +.BR "cdrom_get_cds " "\fI\fR \fI[cd2 file]\fR \fI[cd n file]\fR" +Useful function to help ebuilds that need to read files off of a CD. This is +most commonly used with games. Just specify a list of files, one per cd, that +will be used to detect whether the cd is mounted or not. This function +handles all the messy details of interaction with the user. Once this +function returns, you will have access to the \fICDROM_ROOT\fR variable. If +you want the message to the user to name the CD in a particular way, then +export the variable \fICDROM_NAME\fR before calling this function. If you want +to name more than one cd, and you want them to each have a different name, then +export the variables \fICDROM_NAME_1\fR, \fICDROM_NAME_2\fR, etc... For more +information on multi-cd support, see \fBcdrom_load_next_cd\fR. +.TP +.BR "cdrom_load_next_cd" +Some packages are so big they come on multiple CDs. When you're done reading +files off a CD and want access to the next one, just call this function. Again, +all the messy details of user interaction are taken care of for you. Once this +returns, just read the variable \fICDROM_ROOT\fR for the location of the mounted +CD. Note that you can only go forward in the CD list, so make sure you only +call this function when you're done using the current CD. +.TP +.BR "draw_line" +Simple function to draw a line consisting of '=' the same length as $*. So +if you run `draw_line 1234 5678` you will get back 9 '=' characters in a line. +.TP +.BR "edos2unix " "\fI\fR" +A handy replacement for dos2unix, recode, fixdos, etc... This allows you +to remove all of these text utilities from DEPEND variables because this +is a script based solution. Just give it a list of files to convert and +they will all be changed from the DOS CRLF format to the UNIX LF format. +.TP +.BR "enewgroup " "\fI\fR \fI[gid]\fR" +This function does not require you to understand how to properly add a +group to the system. Just give it a \fIgroup name\fR to add and \fBenewgroup\fR will +do the rest. You may specify the \fIgid\fR for the group or allow the group to +allocate the next available one. +.TP +.BR "enewuser " "\fI\fR \fI[uid]\fR \fI[shell]\fR \fI[homedir]\fR \fI[groups]\fR \fI[params]\fR" +Same as \fBenewgroup\fR, you are not required to understand how to properly add +a user to the system. The only required parameter is the \fIusername\fR. +.br +.BR "Default Values" +.br +\fIuid\fR: next available (pass -1 to get default behavior) +.br +\fIshell\fR: /bin/false +.br +\fIhomedir\fR: /dev/null +.br +\fIgroups\fR: no groups +.br +\fIparams\fR: any other parameters \fBuseradd\fR(8) accepts; see the manpage for more details +.TP +.BR "epatch" +See the section on \fBepatch\fR below. +.TP +.BR "gen_usr_ldscript" +Generate linker scripts in /usr/lib for dynamic libs in /lib. This is to fix linking +problems when you have the .so in /lib, and the .a in /usr/lib. What happens is that +in some cases when linking dynamic, the .a in /usr/lib is used instead of the .so in +/lib due to gcc/libtool tweaking ld's library search path. +.TP +.BR "get_number_of_jobs" +Checks how many cpu's are present in the system and then sets -j in MAKEOPTS accordingly. +.TP +.BR "have_NPTL" +This function return true if we are using the NPTL pthreads implementation of glibc. +.TP +.BR "make_desktop_entry " "\fI\fR \fI[name]\fR \fI[icon]\fR \fI[type]\fR \fI[path]\fR" +Make a little shortcut in GNOME/KDE menus for your application. Just pass the name +of the binary to execute and the rest will be done for you. If you want to change +the name that will show up in the menu, pass the function a \fIname\fR parameter. If you +want to specify an \fIicon\fR (default is \fB${PN}\fR.png) then pass a name of a graphic file +relative to /usr/share/pixmaps/ or the full path to a file. If you want to specify the +section of the menu that the icon will install to (rather than the default determined +by \fB${CATEGORY}\fR) then pass a \fItype\fR value (see http://www.freedesktop.org/standards/menu-spec/ +for valid values). Finally, if the application needs to start up in a special directory, +pass the last value as the full \fIpath\fR name. +.TP +.BR "unpack_makeself " "\fI[makeself archive]\fR \fI[byte offset]\fR" +Unpack a makeself archive rather than relying on the script to unpack itself. Useful for when +the scripts use old (POSIX) syntax that is no longer supported properly. If you don't specify +a file to unpack, then \fB${A}\fR is used instead. If you don't specify the offset, then the +proper value will be located by searching the makeself script. +For more information on makeself archives, please visit: http://www.megastep.org/makeself/ +.TP +.BR "unpack_pdv " "\fI\fR \fI\fR" +Unpack a pdv archive rather than relying on the binary to unpack itself. Useful for when +the static binary crashes randomly on systems and for when the binary doesn't provide a +non-interactive extraction process. You have to specify the off_t size since I (vapier@gentoo.org) +am unaware of a way to extract that information out of the binary executable automatically. +The value you pass is the size of the off_t type (in bytes) on the machine that built the +pdv archive. If you don't know the value yourself, try guessing the values 2, 4, or 8. +For more information on pdv archives, please visit: http://pdv.sourceforge.net/ +.SH "EPATCH" +.TP +.B "ABOUT" +\fBepatch\fR is designed to make patching easy. It does all the common checks that +a developer would do with the \fBpatch\fR(1) command and then some. It will attempt +to apply the patch for a range of offset values (-p0 to -p5, all relative to the working +directory when \fBepatch\fR was called). If the patch fails to apply (by testing via +dryruns), then \fBpatch\fR will stop the emerge process by calling \fBdie\fR. You will +be given a log file of the output of the patch attempt so as to ease debugging. The +output of a successful patch is a pretty formatted message showing what patches were +applied. \fBepatch\fR can be used for bulk patching or for just one or two patches. +Additionally, it can handle patches in bzip2, gzip, compress (Z), and zip formats. +.TP +.B "USAGE" +.RS +.TP +.B "epatch " "\fI\fR" +The most common and easiest way to use \fBepatch\fR is by just giving it the full path +to a patch file. +.TP +.B "epatch " "\fI\fR" +A more powerful use is to fill a directory with patches and then let \fBepatch\fR apply +all the patches inside it. The patches must be in the format ??_${\fBARCH\fR}_foo.${\fBEPATCH_SUFFIX\fR}. +This ensures that there are a set order, and you can have \fBARCH\fR specific patches. + +.br +01_all_misc-fix.patch.bz2 +.br + apply the misc-fix patch first for all arches +.br +02_sparc_another-fix.patch.bz2 +.br + apply the another-fix patch second but only on sparc +.RE +.TP +.B VARIABLES +.RS +.TP +.B "EPATCH_SOURCE" = \fI"${WORKDIR}/patch"\fR +The patch or directory of patches for \fBepatch\fR to apply. This is set +automatically if you call \fBepatch\fR with a parameter. +.TP +.B "EPATCH_SUFFIX" = \fI"patch.bz2"\fR +When applying bulk patches this is the suffix that all patches will have. +.TP +.B "EPATCH_OPTS" = \fI""\fR +Any extra options you may want to pass to \fBpatch\fR(1). We can't think +of everything so why restrict you :). The default is "" of course. +.TP +.B "EPATCH_EXCLUDE" = \fI""\fR +A space delimited list (well, actually \fB$IFS\fR delimited ...) of patch +files to skip while bulk patching. Use only file names, not full paths. +.TP +.B "EPATCH_SINGLE_MSG" = \fI"Applying "\fR +If you only apply a single patch, then instead of displaying the default +message you can change it to say anything you want, even 'Dont call me Radio Unit 51', +if you are so inclined of course. +.TP +.B "EPATCH_FORCE" = \fI"[yes|no]"\fR +This allows you to apply all patches in \fBEPATCH_SOURCE\fR even if they +dont match the ??_${\fBARCH\fR}_foo.${\fBEPATCH_SUFFIX\fR} file naming +convention. By default we want you to use the above convention. +.RE +.SH "REPORTING BUGS" +Please report bugs via http://bugs.gentoo.org/ +.SH "SEE ALSO" +.BR ebuild (5) +.SH "FILES" +.BR /usr/portage/eclass/eutils.eclass +.SH "AUTHORS" +Mike Frysinger +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/eutils.eclass.5,v 1.5.2.2 2005/01/15 00:19:36 vapier Exp $ diff --git a/man/fixheadtails.eclass.5 b/man/fixheadtails.eclass.5 new file mode 100644 index 000000000..4ddd59404 --- /dev/null +++ b/man/fixheadtails.eclass.5 @@ -0,0 +1,32 @@ +.TH "FIXHEADTAILS.ECLASS" "5" "Aug 2004" "Portage 2.0.51" "portage" +.SH "NAME" +fixheadtails.eclass \- functions for replacing obsolete head/tail invocations +with newer POSIX compliant ones. +.SH "DESCRIPTION" +The \fBfixheadtails\fR eclass contains functions for parsing file(s) and +replacing obsolete head/tail invocations in the form similar to: +.TP +head -# +.TP +with the newer POSIX compliant form of: +.TP +head -n# +.SH "FUNCTIONS" +\fBNOTE\fR: these functions are usually used in the \fIsrc_unpack\fR function. +.TP +.BR "ht_fix_file " "\fI [file2] [file3] [...]\fR" +Fixes head/tail invocations in specific files. +.TP +.BR "ht_fix_all" +Scans the current directory (recursively), calling \fBht_fix_file\fR for each +file that contains an obsolete head/tail invocation. +.SH "REPORTING BUGS" +Please report bugs via http://bugs.gentoo.org/ +.SH "SEE ALSO" +.BR ebuild (5) +.SH "FILES" +.BR /usr/portage/eclass/fixheadtails.eclass +.SH "AUTHORS" +Aaron Walker +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/fixheadtails.eclass.5,v 1.3.2.1 2005/01/15 00:19:36 vapier Exp $ diff --git a/man/flag-o-matic.eclass.5 b/man/flag-o-matic.eclass.5 new file mode 100644 index 000000000..967ee9c9c --- /dev/null +++ b/man/flag-o-matic.eclass.5 @@ -0,0 +1,84 @@ +.TH "FLAG-O-MATIC.ECLASS" "5" "Jun 2003" "Portage 2.0.51" "portage" +.SH "NAME" +flag\-o\-matic.eclass \- manipulate CFLAGS/CXXFLAGS easily and reliably +.SH "DESCRIPTION" +The \fBflag\-o\-matic\fR eclass contains a suite of functions to +manipulate the CFLAGS/CXXFLAGS variables. +.SH "FUNCTIONS" +.TP +.BR "append-flags " "\fI\fR" +Add extra \fIflags\fR to the current CFLAGS/CXXFLAGS. +.TP +.BR "filter-flags " "\fI\fR" +Remove particular \fIflags\fR from CFLAGS/CXXFLAGS. This function +will only match complete flags. +.TP +.BR "replace-flags " "\fI\fR \fI\fR" +Replace all occurences of \fIoriginal flag\fR with \fInew flag\fR. +.TP +.BR "replace-cpu-flags " "\fI\fR \fI\fR" +Replace all -march, -mcpu, and -mtune flags which contain \fIold cpus\fR +with -march, -mcpu, and -mtune flags which contain \fInew cpu\fR. +.TP +.BR "get-flag " "\fI\fR" +If \fIflag\fR is prefixed with -, then the whole flag will +be echoed. If just the flag name is specified, and the flag has +a setting, the value for the flag will be echoed instead. + +.I Examples: +.br +CFLAGS="-march=i586 -ffast-math" +.br +`get-flag -march` == "-march=i586" +.br +`get-flag march` == "i586" +.br +`get-flag -ffast-math` == "-ffast-math" +.br +`get-flag ffast-math` == "-ffast-math" +.TP +.BR "is-flag " "\fI\fR" +Returns true if \fIflag\fR is in CFLAGS or CXXFLAGS. +.TP +.BR "filter-mfpmath " "\fI\fR" +Remove specified \fImath types\fR from the selected fpmath units. +If the user has -mfpmath=sse,386, running `filter-mfpmath sse` +will leave the user with -mfpmath=386. +.TP +.BR "append-ldflags " "\fI\fR" +Add extra \fIflags\fR to the current LDFLAGS. +.TP +.BR "filter-ldflags " "\fI\fR" +Remove particular \fIflags\fR from LDFLAGS. This function +will only match complete flags. +.TP +.BR "filter-lfs-flags" +Remove flags that enable Large File Support. +.TP +.BR "append-lfs-flags" +Add flags that enable Large File Support. +.TP +.BR "strip-flags" +Strip CFLAGS/CXXFLAGS of everything except for flags known to +be good flags, or are flags that affect the ABI. Users of stable +profile are limited to these flags: +.br +.I "-O -O1 -O2 -mcpu -march -mtune -fstack-protector -pipe -g" +.br +Users of unstable profile are allowed the above flags and these flags: +.br +.I "-Os -O3 -freorder-blocks -fprefetch-loop-arrays" +.TP +.BR "test_flag " "\fI\fR" +Tests to see if \fIflag\fR is supported by the active toolchain. +.SH "REPORTING BUGS" +Please report bugs via http://bugs.gentoo.org/ +.SH "SEE ALSO" +.BR ebuild (5), +.BR make.conf (5) +.SH "FILES" +.BR /usr/portage/eclass/flag\-o\-matic.eclass +.SH "AUTHORS" +Mike Frysinger +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/flag-o-matic.eclass.5,v 1.5.2.2 2005/01/15 00:19:36 vapier Exp $ diff --git a/man/font.eclass.5 b/man/font.eclass.5 new file mode 100644 index 000000000..879484762 --- /dev/null +++ b/man/font.eclass.5 @@ -0,0 +1,64 @@ +.TH "FONT.ECLASS" "5" "Aug 2004" "Portage 2.0.51" "portage" +.SH "NAME" +font.eclass \- easy, uniform font installation +.SH "DESCRIPTION" +The \fBfont\fR eclass attempts to make font installation as easy as possible. +Everything that usually involves installing fonts (such as creating scalable +font indecis, updating the font cache, etc...) is transparently taken +care of by the \fBfont\fR eclass. +.SH "EXAMPLES" +Here's a simple example ebuild: +.nf +inherit font + +DESCRIPTION="a collection of fonts for Nepali users" +HOMEPAGE="http://www.mpp.org.np/" +SRC_URI="mirror://gentoo/${P}.tar.bz2" + +LICENSE="freedist" +SLOT="0" +KEYWORDS="alpha amd64 ppc x86" +IUSE="" + +DEPEND="" + +S="${WORKDIR}/${PN}" +FONT_S=${S} +FONT_SUFFIX="ttf" +.fi +.SH "VARIABLES" +.TP +.B "FONT_SUFFIX" +Space-delimited list of font suffixes to install. +.TP +.B "FONT_S" +Directory containing the fonts. If omitted, \fB${S}\fR will be used. +.TP +.B "DOCS" +Space-delimited list of documents to install. +.SH "FUNCTIONS" +.TP +.B "font_xfont_config" +Creates font indecis for X font files and also installs a fonts.alias file, +if it exists. This function is called by \fIfont_src_install\fR. +.TP +.B "font_xft_config" +Creates fontconfig cache. This function is also called by \fIfont_src_install\fR. +.TP +.B "font_src_install" +Installs all fonts ending with suffixes listed in \fB${FONT_SUFFIX}\fR as well +as any documents listed in \fB${DOCS}\fR. This function will be used as the +default \fIsrc_install\fR function in an ebuild that omits one. +.SH "REPORTING BUGS" +Please report bugs via http://bugs.gentoo.org/ +.SH "SEE ALSO +.BR ebuild (5) +.SH "FILES" +.BR /usr/portage/eclass/font.eclass +.SH "AUTHORS" +.nf +Aaron Walker +Mike Frysinger +.fi +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/font.eclass.5,v 1.2.2.1 2005/01/15 00:19:36 vapier Exp $ diff --git a/man/fortran.eclass.5 b/man/fortran.eclass.5 new file mode 100644 index 000000000..c0dc53905 --- /dev/null +++ b/man/fortran.eclass.5 @@ -0,0 +1,53 @@ +.TH FORTRAN.ECLASS 5 "Nov 2004" "Portage 2.0.51" "portage" +.SH NAME +fortran.eclass \- functions for fortran packages +.SH DESCRIPTION +The \fBfortran\fR eclass provides an interface to ease the integration of the +various fortran compilers available. +.SH VARIABLES +\fBNOTE\fR: since the \fBfortran\fR eclass does not check to see if the +following variables are set prior to inheritance, you must ensure that if you +need to define any of them, that you do so after inheritance occurs. +.TP +.B FORTRAN +Defines a list of fortran compilers that can be used for the build. Defaults +to 'f77'. +.TP +.B f77_CONF +Defines configure option that enables the use of the f77 compiler. Defaults +to '--with-f77'. +.TP +.B f2c_CONF +Defines configure option that enables the use of the f2c compiler. Defaults +to '--with-f2c'. +.SH FUNCTIONS +.TP +.B fortran_conf +Displays the necessary configure options for the currently selected fortran +compiler. +.TP +.B need_fortran \fI[ profile1 ] < profile2 >\fR +Checks to see if at least one of the specified profiles is installed. Currently +supported profiles include \fBf77\fR, \fBf2c\fR, and \fBifc\fR. +.TP +.B patch_fortran +Applies any patches located in \fB${FILESDIR}\fR named "\fB${P}\fR-COMPILER*", +where COMPILER is the fortran compiler currently selected for use. +.TP +.B fortran_pkg_setup +Default pkg_setup which calls \fBneed_fortran\fR to ensure that a suitable +fortran compiler is installed. +.TP +.B fortran_src_unpack +Default src_unpack which besides unpacking the distfile(s), calls +\fBpatch_fortran\fR to apply any compiler-specific patches. +.SH REPORTING BUGS +Please report bugs via http://bugs.gentoo.org/ +.SH SEE ALSO +.BR ebuild (5) +.SH FILES +.BR /usr/portage/eclass/fortran.eclass +.SH AUTHORS +Aaron Walker +.SH CVS HEADER +$Header: /var/cvsroot/gentoo-src/portage/man/fortran.eclass.5,v 1.1.2.2 2005/01/15 00:19:36 vapier Exp $ diff --git a/man/games.eclass.5 b/man/games.eclass.5 new file mode 100644 index 000000000..7335fce16 --- /dev/null +++ b/man/games.eclass.5 @@ -0,0 +1,119 @@ +.TH "GAMES.ECLASS" "5" "Jun 2003" "Portage 2.0.51" "portage" +.SH "NAME" +games.eclass \- standardize the install of all games +.SH "DESCRIPTION" +The \fBgames\fR eclass is used to centrally control how all games +will be emerged onto systems. Here we basically control the filesystem +locations and the ownership of all files. If you want to change an +aspect of how your games are installed, then just edit the \fBgames\fR +eclass ! :) +.SH "VARIABLES" +.TP +.B "GAMES_PREFIX" = \fI"/usr/games"\fR +The prefix that the game will be installed under. +.TP +.B "GAMES_PREFIX_OPT" = \fI"/opt"\fR +The prefix that the game will be installed under if it is a binary distribution. +.TP +.B "GAMES_DATADIR" = \fI"/usr/share/games"\fR +The prefix for installing shared data files. +.TP +.B "GAMES_DATADIR_BASE" = \fI"/usr/share"\fR +Same as above, but some games auto append '/games/' to the datadir path. +.TP +.B "GAMES_SYSCONFDIR" = \fI"/etc/games"\fR +The location where games will save their configuration files. +.TP +.B "GAMES_STATEDIR" = \fI"/var/games"\fR +The location where games will save their state in behind runs. This +includes things like highscore files. If a game creates more than +one file, have it save all files inside \fB${GAMES_STATEDIR}/${PN}\fR. +Otherwise, just create the single file in \fB${GAMES_STATEDIR}/\fR. +Again, try to use a package specific name for the file if you are +creating it directly in the statedir. +.TP +.B "GAMES_LIBDIR" = \fI"/usr/games/lib"\fR +The location where games will store their libraries. +.TP +.B "GAMES_BINDIR" = \fI"/usr/games/bin"\fR +The location where the games will store/link their executables. Putting +game binaries here helps to cut down on the $PATH bloat. +.TP +.B "GAMES_ENVD" = \fI"90games"\fR +The filename that the env.d entry will use. +.TP +.B "GAMES_USER" = \fI"games"\fR +The user that will own all game related files. +.TP +.B "GAMES_GROUP" = \fI"games"\fR +The group that will own all game related files. +.SH "FUNCTIONS: general" +.TP +.B "prepgamesdirs" \fI[directories]\fR +This will change ownership on all files/directories found inside of +the \fBGAMES_*\fR variables and any extra directories specified as +parameters. It will change the permissions on all directories to +750 (u+rwx,g+rx-w,u-rwx) and change the permissions of all files +with a mask of g+r,o-rwx. +.br +\fB*NOTE\fR: This should *always* be the last thing called in the +\fBsrc_install\fR function. If portage allowed for hookable calls then +this would be hooked to the end of \fBsrc_install\fR, but until that +happens, make sure to call! +.TP +.B games_pkg_setup +This will automagically add \fBGAMES_USER\fR and \fBGAMES_GROUP\fR to +your system. If you define \fBpkg_setup\fR in your ebuild, then make +sure to call this function at the end of the function. +.TP +.B games_pkg_postinst +This will automagically generate the \fBGAMES_ENVD\fR file and display +a little message about being in the \fBGAMES_GROUP\fR in order to play +a game. If you define \fBpkg_postinst\fR in your ebuild, then make +sure to call this function at the end of the function. +.SH "FUNCTIONS: compile" +.TP +.B egamesconf +The same as \fBeconf\fR except this passes all the game related variables +(see above). For more info on \fBeconf\fR see \fBebuild\fR(5). +.SH "FUNCTIONS: install" +.TP +.B egamesinstall +The same as \fBeinstall\fR except this passes all the game related variables +(see above). For more info on \fBeinstall\fR see \fBebuild\fR(5). +.TP +.B dogamesbin dogamessbin +The same as \fBdobin\fR and \fBdosbin\fR respectively except these will +install binaries into \fBGAMES_PREFIX\fR. For more info see \fBebuild\fR(5). +.TP +.B dogameslib dogameslib.a dogameslib.so +The same as \fBdolib\fR, \fBdolib.a\fR, and \fBdolib.so\fR respectively +except these will install binaries into \fBGAMES_PREFIX\fR. For more info +see \fBebuild\fR(5). +.TP +.B newgamesbin newgamessbin +The same as \fBnewbin\fR and \fBnewsbin\fR respectively except these will +install binaries into \fBGAMES_PREFIX\fR. For more info see \fBebuild\fR(5). +.TP +.B gamesowners \fI\fR +\fBgamesowners\fR will change the user and group ownership to \fBGAMES_USER\fR +and \fBGAMES_GROUP\fR respectively. +.TP +.B gamesperms \fI\fR +\fBgamesperms\fR will change the permissions with a mask of u+rw,g+r-w,o-rwx. +.TP +.B games_make_wrapper \fI\fR \fI\fR \fI\fR +Create a small wrapper script. Useful when dealing with packages that need to +change directory to the base of their data tree before running. This will create +a wrapper script called \fIwrapper\fR that will chdir to \fIchdir\fR before +executing \fIbin\fR. The \fIwrapper\fR will be placed in \fBGAMES_BINDIR\fR. +.SH "REPORTING BUGS" +Please report bugs via http://bugs.gentoo.org/ +.SH "SEE ALSO" +.BR ebuild (5) +.SH "FILES" +.BR /usr/portage/eclass/games.eclass +.SH "AUTHORS" +Mike Frysinger +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/games.eclass.5,v 1.7.2.1 2005/01/15 00:19:36 vapier Exp $ diff --git a/man/horde.eclass.5 b/man/horde.eclass.5 new file mode 100644 index 000000000..7a620a077 --- /dev/null +++ b/man/horde.eclass.5 @@ -0,0 +1,51 @@ +.TH "HORDE.ECLASS" "5" "Aug 2004" "Portage 2.0.51" "portage" +.SH "NAME" +horde.eclass \- standardize the installation of horde packages +.SH "DESCRIPTION" +The \fBhorde\fR eclass provides generic functions to make the writing of +horde ebuilds trivial. The \fBhorde\fR eclass also provides transparent +support for live CVS ebuilds via the \fBcvs.eclass\fR(5) (when \fB${PN}\fR +contains "-cvs"). +.SH "VARIABLES" +.BR "HORDE_PHP_FEATURES" +A whitespace-delimited list of mod_php USE flags. If set, +\fIhorde_pkg_setup\fR will check to make sure that mod_php was compiled with +the specified USE flags. If not, the build will fail, notifying the user that +they must rebuild mod_php with the specified USE flags. +.SH "FUNCTIONS" +.TP +.BR "horde_pkg_setup" +Handles the nasty details of the \fBwebapp.eclass\fR(5) and checks +\fIHORDE_PHP_FEATURES\fR, if set. +.TP +.BR "horde_src_unpack" +In the case of a live CVS ebuild, this function calls \fIcvs_src_unpack\fR +from the \fBcvs\fR eclass. Otherwise, \fIunpack\fR is called. +.TP +.BR "horde_src_install" +Installs all files in \fB${S}\fR into the \fBwebapp\fR eclass' +\fB${MY_HTDOCSDIR}\fR directory. This will also installs documentation +(the README and all files in in \fB${S}/docs/\fR). Then the rest of the +nasty details of the \fBwebapp.eclass\fR(5) are taken care of. +.TP +.BR "horde_pkg_postinst" +Displays various informational and/or warning messages. +.SH "REPORTING BUGS" +Please report bugs via http://bugs.gentoo.org/ +.SH "SEE ALSO" +.BR ebuild (5), +.BR cvs.eclass (5), +.BR webapp.eclass (5) +.SH "FILES" +.nf +.BR /usr/portage/eclass/horde.eclass +.BR /usr/portage/eclass/webapp.eclass +.BR /usr/portage/eclass/cvs.eclass +.fi +.SH "AUTHORS" +.nf +Aaron Walker +Mike Frysinger +.fi +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/horde.eclass.5,v 1.3.2.1 2005/01/15 00:19:36 vapier Exp $ diff --git a/man/libtool.eclass.5 b/man/libtool.eclass.5 new file mode 100644 index 000000000..5281d629a --- /dev/null +++ b/man/libtool.eclass.5 @@ -0,0 +1,48 @@ +.TH "LIBTOOL.ECLASS" "5" "Aug 2004" "Portage 2.0.51" "portage" +.SH "NAME" +libtool.eclass \- fixes the libtool files that are distributed with some +packages +.SH "DESCRIPTION" +The \fBlibtool\fR eclass provides an easy way to patch the libtool files +that come with some packages. Often times these files are outdated and +misbehave inside of the portage build environment. +.SH "VARIABLES" +.BR "ELT_APPLIED_PATCHES" +This variable is exported by the \fBlibtool\fR eclass. It contains a +whitespace-delimited list of patches that were successfully applied. +.SH "FUNCTIONS" +.TP +.B "elibtoolize " "\fI[--portage] [--reverse-deps] [--patch-only] [--remove-internal-dep=DEP_TO_REMOVE] [--shallow]\fR" +This function should be called from \fIsrc_unpack\fR. If called with no +arguments, it will apply a default set of patches to all occurrences of +ltmain.sh and then run libtoolize. The default set of patches are located +in \fB${PORTDIR}\fR/eclass/ELT-patches. +.RS +.TP +.BR "--portage" +Apply the portage patch. +.TP +.BR "--reverse-deps" +Apply the reverse dependencies patch. See http://bugzilla.gnome.org/show_bug.cgi?id=75635 +for more information. +.TP +.BR "--patch-only" +If specified, libtoolize will not be run if none of the patches apply. +.TP +.BR "--remove-internal-deps=DEP_TO_REMOVE" +Replaces @REM_INT_DEP@ with DEP_TO_REMOVE. +.TP +.BR "--shallow" +Instead of recursively patching all occurrences of ltmain.sh, only patch the +ltmain.sh in \fB${S}\fR. +.RE +.SH "REPORTING BUGS" +Please report bugs via http://bugs.gentoo.org/ +.SH "SEE ALSO" +.BR ebuild (5) +.SH "FILES" +.BR /usr/portage/eclass/libtool.eclass +.SH "AUTHORS" +Aaron Walker +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/libtool.eclass.5,v 1.3.2.1 2005/01/15 00:19:36 vapier Exp $ diff --git a/man/make.conf.5 b/man/make.conf.5 new file mode 100644 index 000000000..07d1ac9ca --- /dev/null +++ b/man/make.conf.5 @@ -0,0 +1,395 @@ +.TH "MAKE.CONF" "5" "Feb 2003" "Portage 2.0.51" "portage" +.SH "NAME" +make.conf \- custom settings for Portage +.SH "SYNOPSIS" +.B /etc/make.conf +.SH "DESCRIPTION" +This file contains various variables that are used by Portage. +Portage will check the currently\-defined environment variables +first for any settings. If no environment settings are found, +Portage then checks /etc/make.conf. If no setting is found +in /etc/make.conf, Portage checks /etc/make.globals. If no +setting is found there, the profile's default setting is grabbed +from /etc/make.profile/make.defaults. Please note that all user +settings should be made in the environment or in /etc/make.conf, +which is intended to be customized by the user. +.br +Exceptions are incremental variables such as USE, CONFIG_PROTECT*, +and ACCEPT_KEYWORDS. Incremental variables are propagated down from +make.defaults to make.globals to make.conf to the environment +settings. Clearing these variables requires a clear\-all as in: +export USE="\-*" +.SH "VARIABLES" +.TP +\fBACCEPT_KEYWORDS\fR = \fI[space delimited list of KEYWORDS]\fR +Enable testing of ebuilds that have not yet been deemed 'stable'. Users +of the 'x86' architecture would set this to '~x86' while ppc users would +set this to '~ppc'. This is an incremental variable. Only define a +~arch. +.br +Defaults to the value of $ARCH. +.TP +\fBAUTOCLEAN\fR = \fI["yes" | "no"]\fR +Automatically cleans the system by removing outdated packages which will not +remove functionalities or prevent your system from working. On major ABI +changes this may need to be set to off to ensure that the system can be +rebuilt using the new libs before the old ones are removed. Downgrading with +this option turned off may result in missing symlinks and an inoperable system. +.br +Defaults to yes. +.TP +\fBBUILD_PREFIX\fR = \fI[path]\fR +Defines the location of the package working directory. +.br +Defaults to ${PORTAGE_TMPDIR}/portage +.TP +.B CBUILD +This variable is passed by the \fIebuild scripts\fR to the \fIconfigure\fR +as \fI\-\-build=${CBUILD}\fR only if it is defined. +.TP +\fBCCACHE_SIZE\fR = \fI"size"\fR +This controls the space use limitations for ccache. The default is 2 gigabytes +('2G'). Sizes are specified with 'G', 'M', or 'K'. +.TP +.B CFLAGS CXXFLAGS +Use these variables to set the desired optimization/CPU instruction settings +for applications that you compile. Nearly all ebuild files will take advantage +of your custom settings, resulting in a Gentoo Linux that is fully customized +to your specifications. Please use sane settings as some packages will fail to +compile/run if the optimizations are too extreme. + +For more information: +.br +http://gcc.gnu.org/onlinedocs/gcc\-3.2/gcc/Invoking\-GCC.html +.br +http://gcc.gnu.org/onlinedocs/gcc\-3.3/gcc/Invoking\-GCC.html +.br +http://gcc.gnu.org/onlinedocs/gcc\-2.95.3/gcc_2.html +.TP +.B CHOST +This variable is passed by the \fIebuild scripts\fR to the \fIconfigure\fR +step as \fI\-\-host=${CHOST}\fR. This way you can force the build\-host. + +For more information: +.br +http://gcc.gnu.org/onlinedocs/gcc\-3.2/gcc/Submodel\-Options.html +.br +http://gcc.gnu.org/onlinedocs/gcc\-3.3/gcc/Submodel\-Options.html +.br +http://gcc.gnu.org/onlinedocs/gcc\-2.95.3/gcc_2.html +.TP +\fBCLEAN_DELAY\fR = \fIinteger\fR +Determines how long the countdown delay will be after running `emerge clean`. +.br +Defaults to 5 seconds. +.TP +\fBCONFIG_PROTECT\fR = \fI[space delimited list of dirs]\fR +All directories that are defined here will have "config file protection" +enabled for them. For more information, please see `emerge \-\-help config`. +.TP +\fBCONFIG_PROTECT_MASK\fR = \fI[space delimited list of dirs]\fR +All directories that are defined here will have "config file protection" +disabled for them. For more information, please see `emerge \-\-help config`. +.TP +.B CTARGET +This variable is passed by the \fIebuild scripts\fR to the \fIconfigure\fR +as \fI\-\-target=${CTARGET}\fR only if it is defined. +.TP +\fBDISTDIR\fR = \fI[path]\fR +Defines the location of your local source file repository. +.br +Defaults to ${PORTDIR}/distfiles. +.TP +.B EBEEP_IGNORE +Defines whether or not to ignore audible beeps when displaying important +informational messages. This variable is unset by default. +.TP +.B EPAUSE_IGNORE +Defines whether or not to ignore short pauses that occur when displaying +important informational messages. This variable is unset by default. +.TP +\fBFEATURES\fR = \fI"sandbox ccache autoaddcvs"\fR +Defines actions portage takes by default. These options should +not be changed by anyone but developers and/or maintainers. 'sandbox' is an important +part of \fBFEATURES\fR and should not be disabled by default. This is +an incremental variable. +.RS +.TP +.B autoaddcvs +Causes portage to automatically try to add files to cvs that will have to be added +later. Done at generation times and only works when \fIcvs\fR is also in +\fBFEATURES\fR. +.TP +.B buildpkg +Binary packages will be created for all packages that are merged. +.TP +.B ccache +Enable portage support for the ccache package. If the ccache dir is not +present in the user's environment, then portage will default to +${PORTAGE_TMPDIR}/ccache (with \fIuserpriv\fR) and to /root/.ccache otherwise. +.TP +.B collision\-protect +A QA\-feature to ensure that a package doesn't overwrite files it doesn't own. +.TP +.B cvs +A feature for developers that causes portage to enable all USE flags in SRC_URI +when creating digests. +.TP +.B digest +Autogenerate a digest for packages. +.TP +.B distcc +Enable portage support for the distcc package. +.TP +.B distlocks +Portage uses lockfiles to ensure competing instances don't clobber +each other's files. This feature is enabled by default but may cause +heartache on less intelligent remote filesystems like NFSv2 and some +strangely configured Samba server (oplocks off, NFS re-export). A tool +/usr/lib/portage/bin/clean_locks exists to help handle lock issues +when a problem arises (normally due to a crash or disconnect). +.TP +.B fixpackages +Runs the script that will fix the dependencies in all binary packages. This is +run whenever packages are moved around in the portage tree. Please note that this +can take a lot of time. +.TP +.B getbinpkg +Force emerges to always try to fetch files from the \fIPORTAGE_BINHOST\fR. See +\fBmake.conf\fR(5) for more information. +.TP +.B gpg +Check the signatures of Manifests and make sure they are correct. +.TP +.B keeptemp +Do not delete the ${T} directory after the merge process. +.TP +.B keepwork +Do not delete the ${WORKDIR} directory after the merge process. +.TP +.B mirror +This will cause \fBFETCHCOMMAND\fR to always be run even if +the file already exists in \fBDISTDIR\fR. +.TP +.B noauto +When utilizing \fBebuild\fR(1), only run the function requested. +.TP +.B noclean +Do not delete the the source and temporary files after the merge process. +.TP +.B nodoc +Do not install doc files (/usr/share/doc). +.TP +.B noinfo +Do not install info pages. +.TP +.B noman +Do not install manpages. +.TP +.B nostrip +Prevents the stripping of binaries that are merged to the live filesystem. +.TP +.B notitles +Disables xterm titlebar updates (which contains status info). +.TP +.B sandbox +Enable sandbox\-ing when running \fBemerge\fR(1) and \fBebuild(1)\fR. +.TP +.B severe +When checking Manifests, only accept ones that have been signed by a +key which you trust. +.TP +.B sfperms +Stands for Smart Filesystem Permissions. Before merging packages to the +live filesystem, automatically search for and set permissions on setuid +and setgid files. Files that are setuid have the group and other read +bits removed while files that are setgid have the other read bit removed. +See also \fIsuidctl\fR below. +.TP +.B sign +When commiting work to cvs with \fBrepoman\fR(1), sign the Manifest with +a GPG key. Read about the \fIPORTAGE_GPG_KEY\fR variable in \fBmake.conf\fR(5). +.TP +.B strict +Have portage react strongly to conditions that have the potential to be +dangerous (like missing or incorrect Manifests). +.TP +.B suidctl +Before merging packages to the live filesystem, automatically strip setuid +bits from any file that is not listed in \fI/etc/portage/suidctl.conf\fR. +.TP +.B test +Run package\-specific tests during each merge to help make sure +the package compiled properly. See \fItest\fR in \fBebuild\fR(1) +and \fIsrc_test()\fR in \fBebuild\fR(5). +.TP +.B userpriv +Allow portage to drop root privledges and compile packages as +portage:portage without a sandbox (unless \fIusersandbox\fR is also used). +.TP +.B usersandbox +Enable the sandbox in the compile phase, when running without root privs (\fIuserpriv\fR). +.RE +.TP +\fBFETCHCOMMAND\fR +This variable contains the command used for fetching package\-sources from +the internet. +.TP +\fBGENTOO_MIRRORS\fR = \fI[URLs]\fR +Insert your space\-seperated list of local mirrors here. These +locations are used to download files before the ones listed in +the \fIebuild scripts\fR. Merging 'mirrorselect' can help. +.TP +\fBhttp_proxy ftp_proxy\fR = \fI[host:port]\fR +These vars are used if the sources must be downloaded from the +internet by \fBwget\fR(1). They are only required if you use a +proxy server for internet access. +.TP +\fBMAKEOPTS\fR +Use this variable if you want to use parallel make. For example, if you +have a dual\-processor system, set this variable to "\-j2" or "\-j3" for +enhanced build performance with many packages. Suggested settings are +between \fICPUs+1\fR and \fI2*CPUs+1\fR. +For more information, see \fBmake\fR(1). +.TP +\fBNOCOLOR\fR = \fI["true" | "false"]\fR +Defines if color should be disabled by default. +.br +Defaults to false. +.TP +\fBPKGDIR\fR = \fI[path]\fR +Defines the location where created .tbz2 binary packages will be stored. +.br +Defaults to ${PORTDIR}/packages. +.TP +.B PORT_LOGDIR +This variable defines the directory in which per\-ebuild logs are kept. +Logs are created only when this is set and writable. +.TP +\fBPORTAGE_BINHOST\fR = \fI"ftp://login:pass@grp.mirror.site/pub/grp/i686/athlon\-xp"\fR +This is the host from which portage will grab prebuilt\-binary packages. +The list is a single entry specifying the full address of the directory +serving the tbz2's for your system. This is only used when running with +the get binary pkg options are given to \fBemerge\fR. Review \fBemerge\fR(1) +for more information. Note that it should point to the 'All' directory on +the host that creates the binary packages and not to the root of the \fBPKGDIR\fR. +.TP +\fBPORTAGE_NICENESS\fR = \fI[number]\fR +The value of this variable will be added to the current nice level that +emerge is running at. In other words, this will not set the nice level, +it will increment it. For more information about nice levels and what +are acceptable ranges, see \fBnice\fR(1). +.TP +\fBPORTAGE_TMPDIR\fR = \fI[path]\fR +Defines the location of the temporary build directories. +.br +Defaults to /var/tmp. +.TP +\fBPORTDIR\fR = \fI[path]\fR +Defines the location of your Portage tree. +.br +Defaults to /usr/portage. +.TP +\fBPORTDIR_OVERLAY\fR = \fI"[path] [different\-path] [etc...]"\fR +Defines the directories in which user made ebuilds may be stored and not +overwriten when `emerge \-\-sync` is run. This is a space delimited list of +directories. +.br +Defaults to no value. +.TP +\fBRESUMECOMMAND\fR +This variable contains the command used for resuming package\-sources that +have been partially downloaded by the \fBFETCHCOMMAND\fR. +.TP +\fBROOT\fR = \fI[path]\fR +Use \fBROOT\fR to specify the target root filesystem to be used for merging +packages or ebuilds. All \fBRDEPEND\fR and \fBPDEPEND\fR will be installed +into \fBROOT\fR while all \fBDEPEND\fR will be still be installed into /. +Typically, you should set this setting in the environment rather than in +\fI/etc/make.conf\fR itself. It's commonly used for creating new build +images. +.br +Defaults to /. +.TP +\fBRSYNC_EXCLUDEFROM\fR = \fI"/etc/portage/rsync_excludes"\fR +This is a file that portage will pass to rsync when it updates the portage +tree. Specific chucks of the tree may be excluded from the sync process. +This may cause dependency failures if you are not careful. The file format +is pattern per line, blanks and ';' or '#' lines are comments. See +\fBrsync\fR(1) for more details. +.TP +\fBRSYNC_RETRIES\fR = \fI[NUMBER]\fR +The number of times rsync should retry on failed connections before +giving up. +.br +Defaults to 3. +.TP +\fBRSYNC_TIMEOUT\fR = \fI[SECONDS]\fR +The number of seconds rsync should remain idle before it determines the +connection has timed out. Dialup users may need to set this value at or +above 300 seconds. +.br +Defaults to 180 seconds. +.TP +\fBRPMDIR\fR = \fI[path]\fR +Defines the location where created RPM packages will be stored. +.br +Defaults to ${PORTDIR}/rpm. +.TP +\fBSYNC\fR = \fI[RSYNC]\fR +Insert your preferred rsync mirror here. This rsync server +is used to sync the local portage tree when `emerge \-\-sync` is run. +.br +Defaults to rsync://rsync.gentoo.org/gentoo\-portage +.TP +\fBUSE\fR = \fI[space delimited list of USE items]\fR +This variable contains options that control the build behavior of several +packages. More information in \fBebuild\fR(5). Possible USE values +can be found in \fI/usr/portage/profiles/use.desc\fR. +.TP +\fBUSE_ORDER\fR = \fI"env:pkg:conf:auto:defaults"\fR +Determines precedence for incrementing the setting of the USE variable. +The above setting will cause the environment (env) to override per package (pkg) +settings to override make.conf (conf) to override auto generated values +from merged packages (auto) to override make.defaults (defaults). +.br +\fB***warning***\fR +.br +Do not modify this value unless you're a developer and you know what +you're doing. If you change this and something breaks, we will not help +you fix it. +.br +Defaults to "env:pkg:conf:auto:defaults". + +.SH "REPORTING BUGS" +Please report bugs via http://bugs.gentoo.org/ +.SH "SEE ALSO" +.BR emerge (1), +.BR portage (5), +.BR ebuild (1), +.BR ebuild (5) +.TP +The \fI/usr/sbin/ebuild.sh\fR script. +.TP +The helper apps in \fI/usr/lib/portage/bin\fR. +.SH "FILES" +.TP +\fB/etc/make.conf\fR +Contains variables for the build\-process and overwrites those in make.defaults. +.TP +\fB/etc/make.globals\fR +Contains the default variables for the build\-process, you should edit \fI/etc/make.conf\fR instead. +.TP +\fB/usr/portage/profiles/use.desc\fR +Contains a list of all global USE flags. +.TP +\fB/usr/portage/profiles/use.local.desc\fR +Contains a list of all local USE variables. +.SH "AUTHORS" +Daniel Robbins +.br +Nicholas Jones +.br +Mike Frysinger +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/make.conf.5,v 1.44.2.4 2005/06/04 04:53:13 vapier Exp $ diff --git a/man/perl-module.eclass.5 b/man/perl-module.eclass.5 new file mode 100644 index 000000000..1f71a3330 --- /dev/null +++ b/man/perl-module.eclass.5 @@ -0,0 +1,66 @@ +.TH "PERL-MODULE.ECLASS" "5" "Jun 2003" "Portage 2.0.51" "portage" +.SH "NAME" +perl-module.eclass \- handles generic perl module ebuilds +.SH "DESCRIPTION" +The \fBperl-module\fR eclass is used for the compilation, testing, and +installation of perl modules within the portage system, following +vanilla procedure for modules using either \fBExtUtils::MakeMaker\fR(3pm) +or \fBModule::Builder\fR(3pm). +.SH "VARIABLES" +.TP +.B "style" = \fI"[builder|makemaker]"\fR +This variable allows you to choose which package to use as the default +for building the module. If you do not specify a \fIstyle\fR, then +the default \fBExtUtils::MakeMaker\fR(3pm) will be used. +.SH "FUNCTIONS" +.TP +.B perl-module_src_prep +Create the initial Makefile. +.TP +.B perl-module_src_compile +Calls \fBperl-module_src_prep\fR if it hasn't been already. Runs +initial make. +.TP +.B perl-module_src_test +If invoked, runs all the tests distributed with the module. +.TP +.B perl-module_src_install +Runs `make install` (or the \fBModule::Builder\fR(3pm) equivelant if it +is a builder module). Also cleans build paths from pod files and +generated perllocal.pod. +.TP +.B perl-module_pkg_setup +Calls \fBperlinfo\fR. +.TP +.B perl-module_pkg_preinst +Calls \fBperlinfo\fR. +.TP +.B perl-module_pkg_postinst +Calls \fBupdatepod\fR. +.TP +.B perl-module_pkg_prerm +Calls \fBupdatepod\fR. +.TP +.B perl-module_pkg_postrm +Calls \fBupdatepod\fR. +.TP +.B perlinfo +Updates the gentoo-pods documentation. +.TP +.B updatepod +Cleans the perllocal.pods in ARCH_LIB and SITE_LIB. +.SH "REPORTING BUGS" +Please report bugs via http://bugs.gentoo.org/ +.SH "SEE ALSO" +.BR ebuild (5), +.BR ExtUtils::MakeMaker (3pm), +.BR Module::Build (3pm), +.BR perl (1) +.SH "FILES" +.BR /usr/portage/eclass/perl-module.eclass +.SH "AUTHORS" +Michael Cummings +.br +Mike Frysinger +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/perl-module.eclass.5,v 1.3.2.1 2005/01/15 00:19:36 vapier Exp $ diff --git a/man/portage.5 b/man/portage.5 new file mode 100644 index 000000000..f9cad8b0e --- /dev/null +++ b/man/portage.5 @@ -0,0 +1,588 @@ +.TH "PORTAGE" "5" "Jan 2004" "Portage 2.0.51" "Portage" +.SH NAME +portage \- the heart of Gentoo +.SH "DESCRIPTION" +The current portage code uses many different configuration files, most of which +are unknown to users and normal developers. Here we will try to collect all +the odds and ends so as to help users more effectively utilize portage. This +is a reference only for files which do not already have a man page. + +All files in the make.profile directory may be tweaked via parent profiles +when using cascading profiles. For more info, please see +http://www.gentoo.org/proj/en/releng/docs/cascading-profiles.xml +.IP Note: +If you are looking for information on how to emerge something, please see +.BR emerge (1). +.SH "SYNOPSIS" +.TP +.BR /etc/ +.nf +make.globals +.BR make.conf (5) +.fi +.TP +.BR /etc/make.profile/ +.nf +deprecated +make.defaults +packages +packages.build +package.provided +parent +use.defaults +use.mask +virtuals +.fi +.TP +.BR /etc/portage/ +.nf +bashrc +package.mask +package.unmask +package.keywords +package.use +mirrors +categories +.fi +.TP +.BR /etc/portage/profile/ +site-specific overrides of \fB/etc/make.profile/\fR +.TP +.BR /usr/portage/profiles/ +.nf +arch.list +categories +info_pkgs +info_vars +package.mask +profiles.desc +thirdpartymirrors +use.desc +use.local.desc +.fi +.TP +.BR /var/lib/portage/ +world +.SH "GLOSSARY" +In the following sections, some terminology may be foreign to you or used +with meaning specific to Portage. Please see the referenced manpages for +more detailed explanations. +.RS +.TP +.B DEPEND atom +A string which matches a package. It is of the form category/package. +It may also contain optional logical operators and versions. +.br +More reading: +.BR ebuild (5) +.TP +.B KEYWORD +Each architecture has a unique KEYWORD. +.br +More reading: +.BR ebuild (5) +.TP +.B virtual +A DEPEND atom that is part of the "virtual" category. They are used +when different packages can satisfy a dependency and only one of them is +needed. +.br +More reading: +.BR ebuild (5) +.RE +.SH "SPECIFIC FILE DESCRIPTIONS" +.TP +.BR /etc/ +.RS +.TP +.BR make.globals +The global default settings for Portage. This comes from the portage package +itself. Settings in \fBmake.conf\fR override values here. The format +is described extensivly in \fBmake.conf\fR(5). +.TP +.BR make.conf +The global custom settings for Portage. See \fBmake.conf\fR(5). +.RE +.TP +.BR /etc/make.profile/ +This is usually just a symlink to the correct profile in +\fB/usr/portage/profiles/\fR. Since it is part of the portage tree, it +may easily be updated/regenerated by running `emerge \-\-sync`. It defines +what a profile is (usually arch specific stuff). If you need a custom +profile, then you should make your own \fB/etc/make.profile/\fR +directory and populate it. However, if you just wish to override some +settings, do NOT edit these files because they WILL be lost with the +next `emerge \-\-sync`. See the section below on \fB/etc/portage/\fR for +overriding. +.RS +.TP +.BR deprecated +The existence of this file marks a profile as deprecated, meaning it is +not supported by Gentoo anymore. The first line must be the profile to which +users are encouraged to upgrade, optionally followed by some instructions +explaining how they can upgrade. + +.I Example: +.nf +default-linux/x86/2005.0 +# emerge -n '>=sys-apps/portage-2.0.51' +# rm -f /etc/make.profile +# ln -s /usr/portage/profiles/default-linux/alpha/2005.0 /etc/make.profile +.fi +.TP +.BR make.defaults +The profile default settings for Portage. The general format is described +in \fBmake.conf\fR(5). The \fImake.defaults\fR for your profile defines a +few specific variables too: + +.PD 0 +.RS +.TP +.BR ARCH +Architecture type (x86/ppc/hppa/etc...). +.TP +.B USERLAND = \fI"GNU"\fR +Support BSD/cygwin/etc... +.TP +.B PORTAGE_LIBC = \fI"glibc"\fR +Support uClibc/BSD libc/etc... +.TP +.BR PROFILE_ARCH +Distinguish machines classes that have the same \fBARCH\fR. All sparc +machines have ARCH=sparc but set this to either 'sparc32' or 'sparc64'. +.TP +.BR STAGE1_USE +Special USE flags which may be needed when bootstrapping from stage1 to stage2. +.TP +.BR GRP_STAGE23_USE +Special USE flags used by catalyst for building a stage3 and GRP sets. +.RE +.PD 1 +.TP +.BR packages +This file serves two purposes. The first is to mask out specific +packages/versions on a per\-profile basis. The second is to provide the +list of packages that compose the special \fIsystem\fR class. + +.I Format: +.nf +\- comments begin with # +\- one DEPEND atom per line of what to mask OUT +\- packages to be added to the system class begin with a * +.fi +.I Note: +In a cascading profile setup, you can remove packages in children +profiles which were added by parent profiles by prefixing the atom with +a '\-'. + +.I Example: +.nf +# i am a comment ! +# only allow versions of glibc less than 2.3 +=media\-video/nvidia\-kernel\-1.0.4496 +>=media\-video/nvidia\-glx\-1.0.4496 +.fi +.TP +.BR package.unmask +Just like package.mask above, except here you list packages you want to +unmask. Useful for overriding the global package.mask file (see +below). Note that this does not override packages that are masked via +KEYWORDS. +.TP +.BR package.keywords +Per\-package KEYWORDS. Useful for mixing unstable packages in with a normally +stable machine or vice versa. This will allow you to augment ACCEPT_KEYWORDS +for a single package. + +.nf +\fINote:\fR There are two special KEYWORDS to help out here: +\fB*\fR Match any stable KEYWORD +\fB~*\fR Match any unstable KEYWORD + +.I Format: +\- comments begin with # +\- one DEPEND atom per line followed by additional KEYWORDS +\- blank lines imply unstable host arch + +.I Example: +# always use unstable libgd +media\-libs/libgd ~x86 +# only use stable mplayer +media\-video/mplayer \-~x86 +# always use unstable netcat +net-analyzer/netcat +.fi +.TP +.BR package.use +Per\-package USE flags. Useful for tracking local USE flags or for +enabling USE flags for certain packages only. Perhaps you develop GTK +and thus you want documentation for it, but you don't want +documentation for QT. Easy as pie my friend! + +.I Format: +.nf +\- comments begin with # +\- one DEPEND atom per line with space-delimited USE flags +.fi + +.I Example: +.nf +# turn on docs for GTK 2.x +=x11\-libs/gtk+\-2* doc +# disable mysql support for QT +x11\-libs/qt \-mysql +.fi +.TP +.BR mirrors +Whenever portage encounters a mirror:// style URL it will look up the actual +hosts here. If the mirror set is not found here, it will check the global +mirrors file at /usr/portage/profiles/thirdpartymirrors. You may also set a +special mirror type called "local". This list of mirrors will be checked +before GENTOO_MIRRORS and will be used even if the package has +RESTRICT="nomirror". + +.I Format: +.nf +\- comments begin with # +\- mirror type followed by a list of hosts +.fi + +.I Example: +.nf +# local private mirrors used only by my company +local ftp://192.168.0.3/mirrors/gentoo http://192.168.0.4/distfiles + +# people in japan would want to use the japanese mirror first +sourceforge http://keihanna.dl.sourceforge.net/sourceforge + +# people in tawain would want to use the local gnu mirror first +gnu ftp://ftp.nctu.edu.tw/UNIX/gnu/ +.fi +.TP +.BR categories +A simple list of valid categories that may be used in /usr/portage, +PORTDIR_OVERLAY, and PKGDIR (see \fBmake.conf\fR(5)). This allows for custom +categories to be created. + +.I Format: +.nf +\- one category per line +.fi + +.I Example: +.nf +app\-hackers +media\-other +.fi +.TP +.BR /usr/portage/profiles/ +Global Gentoo settings that are controlled by the developers. To override +these settings, you can use the files in \fB/etc/portage/\fR. +.RS +.TP +.BR arch.list +A list of all valid KEYWORDS. This does not include modifiers. + +.I Format: +.nf +\- one KEYWORD per line +.fi + +.I Example: +.nf +x86 +ppc +sparc +.fi +.TP +.BR categories +A simple list of valid categories that may be used in /usr/portage, +PORTDIR_OVERLAY, and PKGDIR (see \fBmake.conf\fR(5)). + +.I Format: +.nf +\- one category per line +.fi + +.I Example: +.nf +app\-admin +dev\-lang +games\-strategy +sys\-kernel +.fi +.TP +.BR info_pkgs +A list of all the packages which will be displayed when you run `emerge info`. +.TP +.BR info_vars +A list of all the variables which will be displayed when you run `emerge info`. +.TP +.BR package.mask +This contains a list of DEPEND atoms for packages that should not be installed +in any profile. Useful for adding the latest KDE betas and making sure no +one accidentally upgrades to them. Also useful for quickly masking specific +versions due to security issues. ALWAYS include a comment explaining WHY the +package has been masked and WHO is doing the masking. + +.I Format: +.nf +\- comments begin with # +\- one DEPEND atom per line +.fi + +.I Example: +.nf +# masked for security reasons + (10 Sep 2003) +# new kde betas +=kde\-base/kde\-3.2.0_beta1 +=kde\-base/kdeaccessibility\-3.2.0_beta1 +.fi +.TP +.BR profiles.desc +List all the current stable and development profiles. If a profile is listed +here, then it will be checked by repoman. At the moment, only 1 profile is +allowed per stable/dev/KEYWORD; the last one found is the last one used. + +.I Format: +.nf +\- comments begin with # +\- one profile list per line in format: arch dir status +\- arch must be listed in arch.list +\- dir is relative to profiles.desc +\- status must be 'stable' or 'dev' +.fi + +.I Example: +.nf +alpha default-linux/alpha/2004.3 stable +m68k default-linux/m68k dev +x86 default-linux/x86/2004.3 stable +.fi +.TP +.BR thirdpartymirrors +Controls the mapping of mirror:// style URLs to actual lists of +mirrors. Keeps us from overloading a single server. + +.I Format: +.nf +\- comments begin with # +\- mirror type followed by a list of hosts +.fi + +.I Example: +.nf +sourceforge http://aleron.dl.sourceforge.net/sourceforge http://unc.dl.sourceforge.net/sourceforge + +gentoo http://distro.ibiblio.org/pub/linux/distributions/gentoo/distfiles/ ftp://ftp.gtlib.cc.gatech.edu/pub/gentoo/distfiles + +kernel http://www.kernel.org/pub http://www.us.kernel.org/pub +.fi +.TP +.BR use.desc +All global USE flags must be listed here with a description of what they do. + +.I Format: +.nf +\- comments begin with # +\- use flag \- some description +.fi + +.I Example: +.nf +3dfx \- Adds support for 3dfx video cards +acl \- Adds support for Access Control Lists +doc \- Adds extra documentation +.fi +.TP +.BR use.local.desc +All local USE flags must be listed here along with the package and a +description. + +.nf +.I Format: +\- comments begin with # +\- package:use flag \- description + +.I Example: +app\-editors/nano:justify \- Toggles the justify option +dev\-libs/DirectFB:fusion \- Adds Multi Application support +games\-emulation/xmess:net \- Adds network support +.fi +.RE +.TP +.BR /var/lib/portage/ +.RS +.TP +.BR world +Every time you emerge a package, the package that you requested is +recorded here. Then when you run `emerge world \-up`, the list of +packages is read from this file. Note that this does not mean that the +packages that were installed as dependencies are listed here. For +example, if you run `emerge mod_php` and you do not have apache +already, then "dev\-php/mod_php" is recorded in the world file but +"net\-www/apache" is not. For more information, review \fBemerge\fR(1). + +.I Format: +.nf +\- one DEPEND atom base per line +.fi + +.I Example: +.nf +games\-misc/fortune\-mod\-gentoo\-dev +dev\-libs/uclibc +app\-cdr/cdemu +.fi +.RE +.SH "AUTHORS" +.nf +Marius Mauch +Mike Frysinger +Drake Wyrm +.fi +.SH "REPORTING BUGS" +Please report bugs via http://bugs.gentoo.org/ +.SH "SEE ALSO" +.BR emerge (1), +.BR ebuild (1), +.BR ebuild (5), +.BR make.conf (5) +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/portage.5,v 1.17.2.12 2005/07/02 21:02:17 vapier Exp $ diff --git a/man/python.eclass.5 b/man/python.eclass.5 new file mode 100644 index 000000000..90db3530c --- /dev/null +++ b/man/python.eclass.5 @@ -0,0 +1,82 @@ +.TH PYTHON.ECLASS 5 "Nov 2004" "Portage 2.0.51" portage +.SH NAME +python.eclass \- functions for Python-related ebuilds +.SH DESCRIPTION +The \fBpython\fR eclass provides general utility functions for Python-related +ebuilds. +.SH VARIABLES +.TP +.B PYVER +Defines major and minor Python version. This is a READ-ONLY variable, set by +the \fBpython_version\fR function. +.TP +.B PYVER_MAJOR +Defines major Python version. This is a READ-ONLY variable, set by the +\fBpython_version\fR function. +.TP +.B PYVER_MINOR +Defines minor Python version. This is a READ-ONLY variable, set by the +\fBpython_version\fR function. +.TP +.B PYVER_MICRO +Defines micro Python version. This is a READ-ONLY variable, set by the +\fBpython_version\fR function. +.TP +.B PYTHON_OVERRIDE_PYVER = \fI"2.2"\fR +When set, overrides the version of Python to use in the \fBpython_mod_compile\fR +and \fBpython_mod_optimize\fR functions. +.SH FUNCTIONS +.TP +.B python_version +Sets variables \fBPYVER\fR, \fBPYVER_MAJOR\fR, \fBPYVER_MINOR\fR, and +\fBPYVER_MICRO\fR to the version of Python currently available. +.TP +.B python_disable_pyc +Disables automatic recompilation of modules to .pyc/.pyo. This is supported by +>=dev-lang/python-2.2.3-r3 only. +.TP +.B python_enable_pyc +Enables automatic recompilation of modules to .pyc/.pyo. This is supported by +>=dev-lang/python-2.2.3-r2 only. +.TP +.B python_makesym +Creates the /usr/bin/python symbolic link to point to the latest installed +version of Python. +.TP +.B python_tkinter_exists +Checks to see if Python was compiled with Tkinter support (via USE=tcltk). +If not, this function will print an error message informing the user that +Tkinter support is required and then die. +.TP +.B python_mod_exists \fI[ module ]\fR +Checks to see if the specified module is installed and loadable. Returns true +(0) if so or false (1) if not. +.TP +.B python_mod_compile \fI[ file ]\fR +Precompiles the specified file, creating the module's pyc and pyo files. If +the variable, \fBPYTHON_OVERRIDE_PYVER\fR is set, this function will use the +specified version of Python to compile rather than the version detected by +\fBpython_version\fR. This function should only be run from \fBpkg_postinst\fR. +.TP +.B python_mod_optimize \fI< dir1 > < dir 2 >\fR +If called with no arguments, this function will recompile all modules under +sys.path without recursing into subdirectories. Called with arguments, this +function will recursively compile all modules in the specified directories. +If the variable, \fBPYTHON_OVERRIDE_PYVER\fR is set, this function will use +the specified version of Python rather than the version detected by +\fBpython_version\fR. +.TP +.B python_mod_cleanup \fI< dir1 > < dir2 >\fR +Recursively searches specified directories (or /usr/lib/python*/site-packages +if called with no arguments) removing orphaned bytecode (.pyc/.pyo files with +no corresponding .py file). +.SH REPORTING BUGS +Please report bugs via http://bugs.gentoo.org/ +.SH SEE ALSO +.BR ebuild (5) +.SH FILES +.BR /usr/portage/eclass/python.eclass +.SH AUTHORS +Aaron Walker +.SH CVS HEADER +$Header: /var/cvsroot/gentoo-src/portage/man/python.eclass.5,v 1.1.2.2 2005/01/15 00:19:36 vapier Exp $ diff --git a/man/quickpkg.1 b/man/quickpkg.1 new file mode 100644 index 000000000..c7f07f5e9 --- /dev/null +++ b/man/quickpkg.1 @@ -0,0 +1,56 @@ +.TH "QUICKPKG" "1" "Jul 2003" "Portage 2.0.51" "Portage" +.SH NAME +quickpkg \- creates portage packages +.SH SYNOPSIS +.B quickpkg +.SH DESCRIPTION +.I quickpkg +can be utilized to quickly create a package for portage by +utilizing the files already on your filesystem. This package +then can be emerged on any system. To review syntax for +emerging binary packages, review \fBemerge\fR(1). The upside +of this process is that you don't have to wait for the package +to unpack, configure, compile, and install before you can have +the package ready to go. The downside is that the package will +contain the files that exist on your filesystem even if they have +modified since they were first installed. +.br +The packages, after being created, will be placed in \fBPKGDIR\fR. +This variable is defined in \fBmake.conf\fR(5) and defaults to +/var/tmp/portage-pkg. +.SH OPTIONS +.TP +.B +Each package in the list can be of two forms. First you can +give it the full path to the installed entry in the virtual +database. That is, /var/db/pkg///. +The second form is a portage depend atom. This atom is of +the same form that you would give \fBemerge\fR if you wanted +to emerge something. See \fBebuild\fR(5) for full definition. +.SH "EXAMPLES" +.B quickpkg +/var/db/pkg/dev-python/pyogg-1.1 +.br +.B quickpkg +planeshift +.br +.B quickpkg +=apache-1.3.27-r1 +.br +.B quickpkg +=net-www/apache-2* +.SH "REPORTING BUGS" +Please report bugs via http://bugs.gentoo.org/ +.SH "SEE ALSO" +.BR ebuild (5), +.BR make.conf (5) +.SH "FILES" +.TP +.B /etc/make.conf +The \fBPKGDIR\fR variable is defined here. +.SH AUTHORS +Terry Chan (original author) +.br +Mike Frysinger (revamped version) +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/quickpkg.1,v 1.3 2004/09/17 00:17:10 vapier Exp $ diff --git a/man/repoman.1 b/man/repoman.1 new file mode 100644 index 000000000..5e7e422c9 --- /dev/null +++ b/man/repoman.1 @@ -0,0 +1,127 @@ +.TH "REPOMAN" "1" "Nov 2002" "Portage 2.0.51" "Portage" +.SH NAME +repoman \- Gentoo's program to enforce a minimal level of quality assurance in packages added to the portage tree +.SH SYNOPSIS +\fBrepoman\fR [\fIoption\fR] [\fImode\fR] +.SH DESCRIPTION +.BR "Quality is job zero." +.br +.BR repoman +is meant for Gentoo developers only due to the fact it does not work on a per-ebuild basis. +It checks the quality of CVS repositories. +.br +Note: \fBrepoman\fR only runs \fIinside local\fR CVS repositories. +.SH OPTIONS +.TP +.B --pretend +Don't actually perform commit or fix problems, just show what would be done. +.TP +.B --help +Show the help screen. +.SH MODES +.TP +.B scan +Scan current directory tree for QA issues (default). See \fBQA KEYWORDS\fR for more +information. +.TP +.B fix +Fix those issues that can be fixed (stray digests, missing digests). +.TP +.B full +Scan current directory tree for QA issues (full listing). See \fBQA KEYWORDS\fR for more +information. +.TP +.B help +Show the help screen. +.TP +.B commit +Scan current directory tree for QA issues. If OK, commit via cvs. +.SH QA KEYWORDS +.TP +.BR CVS/Entries.IO_error +While attempting to commit, a CVS/Entries directory wasn't found- either the cvs co is damaged, or permissions block repoman from reading the file. +.TP +.BR digest.assumed +Files listed in the digest were not found in your $DISTDIR so the existing +digest entries are assumed to be correct. +.TP +.BR digest.disjointed +The digests were not added to cvs when the matching ebuild had already been +added. +.TP +.BR digest.missing +Ebuild files were found that do not have a corresponding digest. +.TP +.BR digest.notadded +The digests were found but have not been added to cvs. +.TP +.BR digest.stray +Digest files were found that do not have a corresponding ebuild. +.TP +.BR ebuild.disjointed +The ebuilds were not added to cvs when the matching digest had already been +added. +.TP +.BR ebuild.invalidname +The ebuild has a filename that is not-parseable by portage. +.TP +.BR changelog.missing +The ChangeLog file was not found. +.TP +.BR ebuild.namenomatch +The euild has a filename that does not have the same name as the parent +directory. +.TP +.BR ebuild.notadded +The ebuilds were found but have not been added to cvs. +.TP +.BR file.executable +The file has the executable bit set, when it's not needed- check is limited to ebuilds, digests, Manifest, ChangeLog, and metadata.xml. +.TP +.BR file.size +The file's size exceeds 20k, current policy is no files over 20k in a packages files directory. +.TP +.BR filedir.missing +The package lacks a files directory. +.TP +.BR DEPEND.bad +User-visible ebuilds with bad DEPEND settings (matched against *visible* ebuilds). +In other words, user-visiable ebuilds could not be found to satisfy the DEPEND settings. +.TP +.BR RDEPEND.bad +User-visible ebuilds with bad RDEPEND settings (matched against *visible* ebuilds). +In other words, user-visiable ebuilds could not be found to satisfy the RDEPEND settings. +.TP +.BR DEPEND.badmasked +Masked ebuilds with bad DEPEND settings (matched against *all* ebuilds) +In other words, no ebuilds could not be found to satisfy the DEPEND settings. +.TP +.BR RDEPEND.badmasked +Masked ebuilds with RDEPEND settings (matched against *all* ebuilds) +In other words, no ebuilds could not be found to satisfy the RDEPEND settings. +.TP +.BR ebuild.syntax +An error occured while generating the cache entry. This typically means the ebuild contains syntax error(s). +.TP +.BR ebuild.output +A simple sourcing of the ebuild produces output. This breaks ebuild policy. +.TP +.BR KEYWORDS.missing +The ebuild does not have a KEYWORDS variable. +.TP +.BR LICENSE.missing +The ebuild does not have a LICENSE variable. +.TP +.BR DESCRIPTION.missing +The ebuild does not have a DESCRIPTION variable. +.TP +.BR SLOT.missing +The ebuild does not have a SLOT variable. +.SH AUTHORS +Daniel Robbins +.SH "REPORTING BUGS" +Please report bugs via http://bugs.gentoo.org/ +.SH "SEE ALSO" +.BR emerge (1) +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/repoman.1,v 1.7.2.1 2005/01/30 12:12:26 vapier Exp $ diff --git a/man/rpm.eclass.5 b/man/rpm.eclass.5 new file mode 100644 index 000000000..0e57e3e54 --- /dev/null +++ b/man/rpm.eclass.5 @@ -0,0 +1,37 @@ +.TH "RPM.ECLASS" "5" "Jun 2003" "Portage 2.0.51" "portage" +.SH "NAME" +rpm.eclass \- convienence class for extracting RPM's +.SH "DESCRIPTION" +The \fBrpm\fR eclass exists in order to unpack RPM's for you. This +way developers dont have to keep employing their own tricks just to +extract the source archives from an RPM. The eclass will define the +\fBsrc_unpack\fR function and do all the unpacking for you. The +unpack function will utilize either \fBrpmoffset\fR or \fBrpm2cpio\fR to +unpack the RPM. If both exist on the system, then \fBrpm2cpio\fR +will be utilized. +.SH "VARIABLES" +.TP +.B USE_RPMOFFSET_ONLY = \fI"[0|1]"\fR +If you want to force the RPM extractor to utilize \fBrpmoffset\fR +even if \fBrpm2cpio\fR is detected, then just set this variable to 1. +.SH "FUNCTIONS" +.TP +.B rpm_unpack \fI""\fR +Unpack an RPM file in the same manner that \fBunpack\fR unpacks any +other archive. The contents of the RPM will be extracted to \fB${WORKDIR}\fR. +.TP +.B rpm_src_unpack +This replacement for \fBsrc_unpack\fR will go through \fB${A}\fR and +unpack all the files. If the file is an RPM, then \fBrpm_unpack\fR +will be called. Otherwise the default \fBunpack\fR function will be +utilized. +.SH "REPORTING BUGS" +Please report bugs via http://bugs.gentoo.org/ +.SH "SEE ALSO" +.BR ebuild (5) +.SH "FILES" +.BR /usr/portage/eclass/rpm.eclass +.SH "AUTHORS" +Mike Frysinger +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/rpm.eclass.5,v 1.3.2.1 2005/01/15 00:19:36 vapier Exp $ diff --git a/man/ruby.eclass.5 b/man/ruby.eclass.5 new file mode 100644 index 000000000..cc41fb176 --- /dev/null +++ b/man/ruby.eclass.5 @@ -0,0 +1,47 @@ +.TH RUBY.ECLASS 5 "Nov 2004" "Portage 2.0.51" portage +.SH NAME +ruby.eclass \- functions to ease installation of Ruby software +.SH DESCRIPTION +The \fBruby\fR eclass provides an interface designed to ease the installation +and integration of Ruby software. +.SH VARIABLES +.TP +.B RUBY = \fI"/usr/bin/ruby"\fR +Defines the location of the Ruby binary. Defaults to '/usr/bin/ruby'. +.TP +.B USE_RUBY = \fI"ruby18"\fR +Defines a white-space delimited list of supported Ruby versions. This variable +can be set to "any" if the ebuild only installs version independant files. +Possible values for this variable include \fBany\fR, \fBruby16\fR, \fBruby18\fR, +and \fBruby19\fR. +.TP +.B RUBY_ECONF = \fI"--with-foo"\fR +Defines any extra arguments to pass to econf. +.TP +.B PATCHES = \fI"foo.patch *.diff"\fR +Defines a white-space delimited list of patches that should be applied. In +addition to literal filenames, globbing may also be used. +.SH FUNCTIONS +.TP +.B ruby_einstall +Default einstall that executes standard Ruby installation scripts in addition +to installing all .rb files into the local Ruby site directory. +.TP +.B erubydoc +Installs documentation, HTML, and examples into /usr/share/doc/\fB${PF}\fR. +.TP +.B ruby_src_compile +Default src_compile that simply executes \fBruby_econf\fR and \fBruby_emake\fR. +.TP +.B ruby_src_install +Default src_install that simply runs \fBruby_einstall\fR and \fBerubydoc\fR. +.SH REPORTING BUGS +Please report bugs via http://bugs.gentoo.org/ +.SH SEE ALSO +.BR ebuild (5) +.SH FILES +.BR /usr/portage/eclass/ruby.eclass +.SH AUTHORS +Aaron Walker +.SH CVS HEADER +$Header: /var/cvsroot/gentoo-src/portage/man/ruby.eclass.5,v 1.1.2.2 2005/01/15 00:19:36 vapier Exp $ diff --git a/man/ssl-cert.eclass.5 b/man/ssl-cert.eclass.5 new file mode 100644 index 000000000..4f6b2baae --- /dev/null +++ b/man/ssl-cert.eclass.5 @@ -0,0 +1,54 @@ +.TH "SSL-CERT.ECLASS" "5" "Oct 2003" "Portage 2.0.51" "portage" +.SH "NAME" +ssl-cert.eclass \- provides common SSL certificates installation routines +.SH "DESCRIPTION" +The \fBssl-cert\fR eclass contains a function used to generate and +install SSL certificates and related files for testing and initial +configuration purposes of TLS/SSL compatible services. +.SH "VARIABLES" +.TP +\fBSSL_DAYS =\fR \fI"730"\fR (2 years) +The generated certificate will be expired after this many days. +.TP +\fBSSL_BITS =\fR \fI"1024"\fR +The number of bits used for the certificate keys. +.TP +\fBSSL_COUNTRY =\fR \fI"US"\fR +The country (code only) for the generated certificate. +.TP +\fBSSL_STATE =\fR \fI"California"\fR +The state (no abbreviation) for the generated certificate. +.TP +\fBSSL_LOCALITY =\fR \fI"Santa Barbara"\fR +The locality (city) name for the generated certificate. +.TP +\fBSSL_ORGANIZATION =\fR \fI"SSL Server"\fR +The organization (business) name for the generated certificate. +.TP +\fBSSL_UNIT =\fR \fI"For Testing Purposes Only"\fR +The organizational unit (department) name for the generated certificate. +.TP +\fBSSL_COMMONNAME =\fR \fI"localhost"\fR +The hostname (FQDN) for the generated certificate. +.TP +\fBSSL_EMAIL =\fR \fI"root@localhost"\fR +The technical contact (email address) for the generated certificate. +.SH "FUNCTIONS" +.TP +.B docert \fI\fR \fI[cert2 ...]\fR +This function will generate and install the requested certificates into +the current \fB${INSDESTTREE}\fR location. For example: +.br +\fBinsinto\fR \fI/etc/ssl/server\fR +.br +\fBdocert\fR \fImail\fR \fIimap\fR || die "Error creating certificates" +.SH "REPORTING BUGS" +Please report bugs via http://bugs.gentoo.org/ +.SH "SEE ALSO" +.BR ebuild (5) +.SH "FILES" +.BR /usr/portage/eclass/ssl-cert.eclass +.SH "AUTHORS" +Max Kalika +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/ssl-cert.eclass.5,v 1.3.2.1 2005/01/15 00:19:36 vapier Exp $ diff --git a/man/stardict.eclass.5 b/man/stardict.eclass.5 new file mode 100644 index 000000000..c2a7e7d36 --- /dev/null +++ b/man/stardict.eclass.5 @@ -0,0 +1,34 @@ +.TH "STARDICT.ECLASS" "5" "Jun 2003" "Portage 2.0.51" "portage" +.SH "NAME" +startdict.eclass \- convienence class to do stardict dictionary installations +.SH "DESCRIPTION" +The \fBstartdict\fR eclass contains appropriate variables and functions +to quickly make ebuild's for stardictionaries. The eclass will define +\fBsrc_compile\fR and \fBsrc_install\fR functions for you. All you +need to do is to set the \fBDICT_SUFFIX\fR, \fBDICT_P\fR, \fBFROM_LANG\fR, +and \fBTO_LANG\fR variables before inheriting the eclass. +.SH "VARIABLES" +.TP +.B FROM_LANG = \fI"From this language"\fR +What language is the dictionary translating from? If you have an +English to German dictionary, this variable would be set to 'English'. +.TP +.B TO_LANG = \fI"To this language"\fR +What language is the dictionary translating to? If you have an +English to German dictionary, this variable would be set to 'German'. +.TP +.B DICT_PREFIX = \fI"SRC_URI prefix, like 'dictd_www.mova.org_'"\fR +SRC_URI prefix, like "dictd_www.mova.org_". +.TP +.B DICT_SUFFIX = \fI"SRC_URI after the prefix"\fR +SRC_URI after the prefix. +.SH "REPORTING BUGS" +Please report bugs via http://bugs.gentoo.org/ +.SH "SEE ALSO" +.BR ebuild (5) +.SH "FILES" +.BR /usr/portage/eclass/stardict.eclass +.SH "AUTHORS" +Mike Frysinger +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/stardict.eclass.5,v 1.3.2.1 2005/01/15 00:19:36 vapier Exp $ diff --git a/man/subversion.eclass.5 b/man/subversion.eclass.5 new file mode 100644 index 000000000..ddc2b5df0 --- /dev/null +++ b/man/subversion.eclass.5 @@ -0,0 +1,59 @@ +.TH SUBVERSION.ECLASS 5 "Nov 2004" "Portage 2.0.51" portage +.SH NAME +subversion.eclass \- provides subversion fetching functions +.SH DESCRIPTION +The \fBsubversion\fR eclass provides functions that enable the ebuild author +to create 'live' ebuilds that fetch the program's sources from a subversion +repository. +.br + +\fBNOTE\fR: At the very minimum, the \fBsubversion\fR eclass requires the +\fBESVN_REPO_URI\fR variable to be set (see below). +.SH VARIABLES +.TP +.B "ESVN_REPO_URI" = \fI"svn://foo/bar/trunk"\fR +This variable sets the URI from which the sources will be fetched. The +\fBsubversion\fR eclass supports fetching from the following protocols: +\fIhttp\fR, \fIhttps\fR, and \fIsvn\fR. This variable is required to be set. +.TP +.B "ESVN_STORE_DIR" = \fI"${DISTDIR}/svn-src"\fB +This variable defines the location in which the fetched sources will be kept. +The default value is '${DISTDIR}/svn-src' and should be sufficient in most +cases. +.TP +.B "ESVN_FETCH_CMD" = \fI"svn checkout"\fB +This variable defines the command used for initial checkout and defaults to 'svn checkout'. +.TP +.B "ESVN_UPDATE_CMD" = \fI"svn update"\fB +This variable defines the command used for updating sources and defaults to 'svn update'. +.TP +.B "ESVN_PROJECT" = \fI"foobar"\fB +This variable defines the name of the project and defaults to '${PN/-svn}'. +.TP +.B "ESVN_BOOTSTRAP" = \fI"autogen.sh"\fB +This variable defines the name of the bootstrap script to execute in +preparation for the build process. This variable is empty by default. Note: +"./" is automatically prepended, so it is unnecessary for the ebuild author to +do so. +.TP +.B "ESVN_PATCHES" = \fI"foo.patch *.diff"\fB +This variable defines a list of patches to apply prior to fetching the sources. +In addition to literal filenames, you may also use globbing such as *.diff. +This variable is empty by default. +.SH FUNCTIONS +.TP +.B subversion_src_unpack +The default \fBsrc_unpack\fR provided by the \fBsubversion\fR eclass simply +fetches the program's sources from the URI specified by \fBESVN_REPO_URI\fR, +applies any patches specified by \fBESVN_PATCHES\fR, and then executes the +bootstrap script specified by \fBESVN_BOOTSTRAP\fR. +.SH REPORTING BUGS +Please report bugs via http://bugs.gentoo.org/ +.SH SEE ALSO +.BR ebuild (5) +.SH FILES +.BR /usr/portage/eclass/subversion.eclass +.SH AUTHORS +Aaron Walker +.SH CVS HEADER +$Header: /var/cvsroot/gentoo-src/portage/man/subversion.eclass.5,v 1.1.2.3 2005/05/10 11:30:32 swegener Exp $ diff --git a/man/tla.eclass.5 b/man/tla.eclass.5 new file mode 100644 index 000000000..53df4fee7 --- /dev/null +++ b/man/tla.eclass.5 @@ -0,0 +1,52 @@ +.TH TLA.ECLASS 5 "Nov 2004" "Portage 2.0.51" portage +.SH NAME +tla.eclass \- provides generic tla fetching functions +.SH DESCRIPTION +The \fBtla\fR eclass provides an interface to easily allow ebuild authors to +create 'live' tla ebuilds that fetch their sources from a tla repository. +.SH VARIABLES +.TP +.B ETLA_TLA_CMD = \fI"tla"\fR +Defines tla executable. Defaults to 'tla'. +.TP +.B ETLA_GET_CMD = \fI"get"\fR +Defines tla get option. Defaults to 'get'. +.TP +.B ETLA_UPDATE_CMD = \fI"replay"\fR +Defines tla update option. Defaults to 'replay'. +.TP +.B ETLA_TOP_DIR = \fI"${DISTDIR}/tla-src"\fR +Defines location where fetched sources will be kept. Defaults to '${DISTDIR}/tla-src'. +.TP +.B ETLA_VERSION = \fI"foo@bar.com--archive-name/category--branch--version"\fR +Defines tla version in the above format. This variable will be passed as the +argument to a tla subcommand such as get, replay, etc. +.TP +.B ETLA_CACHE_DIR = \fI"${ELTA_VERSION}"\fR +Defines the location where the version shall be cached. This location is +relative to \fBETLA_TOP_DIR\fR. Defaults to '\fBETLA_VERSION\fR'. +.TP +.B ETLA_ARCHIVES +Defines a whitespace-delimited list of significant archive URI's. This variable +should at least include the URI of the archive that the wanted version is stored +in. +.TP +.B ETLA_CLEAN +Defines whether or not to fetch a clean copy of sources if there is already a +working copy available. If set, the working copy will be removed and a fresh +copy will be fetched. Otherwise, the working copy will just be updated (via +\fBETLA_UPDATE_CMD\fR). This variable is unset by default. +.SH FUNCTIONS +.TP +.B tla_src_unpack +Default src_unpack that fetches the sources and places them in \fB${WORKDIR}\fR/\fB${P}\fR. +.SH REPORTING BUGS +Please report bugs via http://bugs.gentoo.org/ +.SH SEE ALSO +.BR ebuild (5) +.SH FILES +.BR /usr/portage/eclass/tla.eclass +.SH AUTHORS +Aaron Walker +.SH CVS HEADER +$Header: /var/cvsroot/gentoo-src/portage/man/tla.eclass.5,v 1.1.2.2 2005/01/15 00:19:36 vapier Exp $ diff --git a/man/toolchain-funcs.eclass.5 b/man/toolchain-funcs.eclass.5 new file mode 100644 index 000000000..481ce1389 --- /dev/null +++ b/man/toolchain-funcs.eclass.5 @@ -0,0 +1,112 @@ +.TH "TOOLCHAIN-FUNCS.ECLASS" "5" "Jun 2003" "Portage 2.0.51" "portage" +.SH "NAME" +toolchain-funcs.eclass \- functions to get commonly needed info about the +toolchain (binutils/gcc/glibc/etc...) +.SH "DESCRIPTION" +The \fBtoolchain-funcs\fR eclass contains a suite of functions that are +used to glean information about the toolchain that is used to compile. +This allows developers to worry about gcc specs rather than figuring +out how to find the specs in the first place. +.SH "TOOL FUNCTIONS" +.TP +.B tc-getAR +Returns the name of the binutils archiver. Usually 'ar'. +.TP +.B tc-getAS +Returns the name of the assembler. Usually 'as'. +.TP +.B tc-getBUILD_CC +Returns the name of the compiler for the build system. +Useful only when you have to compile and run a utility while +building the package. +.TP +.B tc-getCC +Returns the name of the C compiler binary. Usually 'gcc'. +.TP +.B tc-getCXX +Returns the name of the C++ compiler binary. Usually 'g++'. +.TP +.B tc-getF77 +Returns the name of the fortran compiler. +.TP +.B tc-getGCJ +Returns the name of the java compiler. Usually 'gcj'. +.TP +.B tc-getLD +Returns the name of the linker. Usually 'ld'. +.TP +.B tc-getNM +Returns the name of the symbol/object thingy. Usually 'nm'. +.TP +.B tc-getRANLIB +Returns the name of the archiver indexer. Usually 'ranlib'. +.SH "MISC FUNCTIONS" +.TP +\fBtc-arch\fR [\fITARGET\fR] +Echo the portage $ARCH that the current toolchain represents. +Basically this is a drop-in replacment for $ARCH usage. If no +\fITARGET\fR is specified, then CHOST will be used. +.TP +\fBtc-arch-kernel\fR [\fITARGET\fR] +Echo the kernel $ARCH that the current toolchain represents. If no +\fITARGET\fR is specified, then CHOST will be used. +.TP +\fBtc-endian\fR [\fITARGET\fR] +Echo 'little' or 'big' based upon what the current toolchain represents. +If no \fITARGET\fR is specified, then CHOST will be used. +.TP +\fBtc-export\fR <\fBlist of variables\fR> +Quickly export \fBlist of variables\fR to the environment. Much easier +than exporting each idividual variable at a time. + +For example: \fBtc-export\fR CC CXX AR RANLIB +.TP +.B tc-is-cross-compiler +Return shell true/false based upon whether the current building +setup is for a cross compiler. +.SH "VERSION FUNCTIONS" +.TP +.B gcc-fullversion +Returns the version as by `$CC -dumpversion`. +.br +GCC \fI2.95.3\fR will return \fI2.95.3\fR +.br +GCC \fI3.2.1\fR will return \fI3.2.1\fR +.TP +.B gcc-version +Returns the version, but only the .. +.br +GCC \fI2.95\fR.3 will return \fI2.95\fR +.br +GCC \fI3.2\fR.1 will return \fI3.2\fR +.TP +.B gcc-major-version +Returns the Major version. +.br +GCC \fI2\fR.95.3 will return \fI2\fR +.br +GCC \fI3\fR.2.1 will return \fI3\fR +.TP +.B gcc-minor-version +Returns the Minor version. +.br +GCC 2.\fI95\fR.3 will return \fI95\fR +.br +GCC 3.\fI2\fR.1 will return \fI2\fR +.TP +.B gcc-micro-version +Returns the Micro version. +.br +GCC 2.95.\fI3\fR will return \fI3\fR +.br +GCC 3.2.\fI1\fR will return \fI1\fR +.SH "REPORTING BUGS" +Please report bugs via http://bugs.gentoo.org/ +.SH "SEE ALSO" +.BR ebuild (5) +.SH "FILES" +.BR /usr/portage/eclass/toolchain-funcs.eclass +.SH "AUTHORS" +Mike Frysinger +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/toolchain-funcs.eclass.5,v 1.1.2.2 2005/01/15 00:19:23 vapier Exp $ diff --git a/man/versionator.eclass.5 b/man/versionator.eclass.5 new file mode 100644 index 000000000..bded105fb --- /dev/null +++ b/man/versionator.eclass.5 @@ -0,0 +1,53 @@ +.TH VERSIONATOR.ECLASS 5 "Nov 2004" "Portage 2.0.51" portage +.SH NAME +versionator.eclass \- provides functions for easy manipulation of versions +.SH DESCRIPTION +The \fBversionator\fR eclass provides functions to ease manipulation of +software versions. The most common use of this eclass is for manipulation of +the \fB${PV}\fR variable (and saving the result in a variable such as +\fB${MY_PV}\fR). +.SH FUNCTIONS +\fBNOTE\fR: the following functions all operate on a version string (denoted +as \fIPV\fR in this manual page), which defaults to \fB${PV}\fR if omitted. +See the eclass for example version strings and their respective results. +.TP +.B get_all_version_components \fI< PV >\fR +Splits PV into its component parts. +.TP +.B get_version_components \fI< PV >\fR +Splits PV into its component parts, ignoring '.', '-', and '_'. +.TP +.B get_major_version \fI< PV >\fR +Retrieves major version from PV. +.TP +.B get_version_component_range \fI[ RANGE ] < PV >\fR +Retrieves a component or range of components, RANGE, from PV. RANGE may be +a single number for a particular component, a range such as 1-2 for a range +of components, or a range such as 2- for that component and everything after it. +.TP +.B get_after_major_version \fI< PV >\fR +Retrieves everything after the major version and its separator (if present). +.TP +.B replace_version_separator \fI[ N ] [ SEP ] < PV >\fR +Replaces the Nth separator of PV with separator, SEP. If N is a character +literal (eg. '-'), the first separator of this kind is replaced. +.TP +.B replace_all_version_separators \fI[ SEP ] < PV >\fR +Replaces all version separators in PV with separator, SEP. +.TP +.B delete_version_separator \fI[ N ] < PV >\fR +Deletes the Nth separator of PV. If N is a character literal (eg. '-'), the first +separator of this kind is deleted. +.TP +.B delete_all_version_separators \fI\fR +Deletes all version separators in PV. +.SH REPORTING BUGS +Please report bugs via http://bugs.gentoo.org/ +.SH SEE ALSO +.BR ebuild (5) +.SH FILES +.BR /usr/portage/eclass/versionator.eclass +.SH AUTHORS +Aaron Walker +.SH CVS HEADER +$Header: /var/cvsroot/gentoo-src/portage/man/versionator.eclass.5,v 1.1.2.4 2005/01/15 00:19:36 vapier Exp $ diff --git a/man/vim-plugin.eclass.5 b/man/vim-plugin.eclass.5 new file mode 100644 index 000000000..0960345e6 --- /dev/null +++ b/man/vim-plugin.eclass.5 @@ -0,0 +1,86 @@ +.TH VIM-PLUGIN.ECLASS 5 "Dec 2004" "Portage 2.0.51" portage +.SH NAME +vim-plugin.eclass \- functions to ease installation of Vim plugins +.SH DESCRIPTION +The \fBvim-plugin\fR eclass provides functions meant to simplify the +installation of Vim plugins into a version-independent directory, +/usr/share/vim/vimfiles. +.SH VARIABLES +.TP +.B VIM_PLUGIN_HELPFILES +Defines a white-space delimited list of help files, used soley for informing +the user how to access them within Vim. +.TP +.B VIM_PLUGIN_HELPTEXT +Defines help text to display. Used only if \fBVIM_PLUGIN_HELPFILES\fR is unset. +.TP +.B VIM_PLUGIN_HELPURI +Defines a URI where on-line plugin documentation is available. This variable +is only used if \fBVIM_PLUGIN_HELPFILES\fR and \fBVIM_PLUGIN_HELPTEXT\fR are +unset. +.TP +.B VIM_PLUGIN_MESSAGES +Defines a white-space delimited list of settings that the Vim plugin makes use +of. Currently, only 'filetype' is supported; any other specified settings will +be ignored. +.SH FUNCTIONS +.TP +.B update_vim_afterscripts +Creates scripts in /usr/share/vim/vimfiles/after that are comprised of the +snippets located in /usr/share/vim/vimfiles/after/*/*.vim.d. In addition, +any stale scripts that were previously generated by this function are removed. +.TP +.B display_vim_plugin_help +Displays a message containing plugin help information. This function checks +the variables \fBVIM_PLUGIN_HELPFILES\fR, \fBVIM_PLUGIN_HELPTEXT\fR, and +\fBVIM_PLUGIN_HELPURI\fR (in that order) and displays the first one that is +defined. In addition, any setting-specific messages that correspond to +settings listed in \fBVIM_PLUGIN_MESSAGES\fR will be displayed. +.TP +.B vim-plugin_src_install +Default src_install. Installs plugin documentation prior to installing the +entire contents of \fB${S}\fR to /usr/share/vim/vimfiles. +.TP +.B vim-plugin_pkg_postinst +Default pkg_postinst that updates Vim helptags (see \fBupdate_vim_helptags\fR +in vim-doc.eclass), updates after scripts, and calls \fBdisplay_vim_plugin_help\fR. +.TP +.B vim-plugin_pkg_postrm +Default pkg_postrm that updates Vim helptags (see \fBupdate_vim_helptags\fR +in vim-doc.eclass), updates after scripts, and removes any empty directories +in /usr/share/vim/vimfiles. +.SH PACKAGING +In general, tarballs for plugins cannot be used directly because of vim.org's +idiosyncratic download system. Instead, a Gentoo-specific tarball must be made +with the following format for contents: + +.nf + packagename-version/ + packagename-version/doc/ + packagename-version/doc/whatever.txt + packagename-version/plugin/ + packagename-version/plugin/whatever.vim + packagename-version/syntax/ + packagename-version/syntax/whatever.vim +.fi +.SH PACKAGE NAMING CONVENTIONS +Where possible, the upstream script name should be used as the package name. +For packages which provide syntax or filetype files, the name should be suffixed +with "-syntax" (for example, "app-vim/gentoo-syntax", "app-vim/fluxbox-syntax", +"app-vim/selinux-syntax"). +.SH PACKAGE VARIABLE CONVENTIONS +The canonical form for the HOMEPAGE variable for vim.org scripts is +http://www.vim.org/scripts/script.php?script_id=123. +.SH REPORTING BUGS +Please report bugs via http://bugs.gentoo.org/ +.SH SEE ALSO +.BR ebuild (5) +.SH FILES +.nf +.B /usr/portage/eclass/vim-plugin.eclass +.B /usr/portage/eclass/vim-doc.eclass +.fi +.SH AUTHORS +Aaron Walker +.SH CVS HEADER +$Header: /var/cvsroot/gentoo-src/portage/man/vim-plugin.eclass.5,v 1.1.2.2 2005/01/15 00:19:36 vapier Exp $ diff --git a/man/vim.eclass.5 b/man/vim.eclass.5 new file mode 100644 index 000000000..24ff42c11 --- /dev/null +++ b/man/vim.eclass.5 @@ -0,0 +1,56 @@ +.TH "VIM.ECLASS" "5" "Jun 2003" "Portage 2.0.51" "portage" +.SH "NAME" +vim.eclass \- common build routines for vim-core, vim and gvim +.SH "DESCRIPTION" +The \fBvim\fR eclass contains a suite of functions that are used to +build \fBvim-core\fR, \fBvim\fR and \fBgvim\fR. The vim-core ebuild +contains the common files installed in /usr/share/vim, /usr/share/doc +and /etc/vim, as well as the binaries xxd and vimtutor. The vim +ebuild contains the terminal-based version of vim. The gvim ebuild +contains the graphical version of vim. All three of these are built +from common source, common patches and using mostly-common configure +options. +.P +There are no functions to define in an ebuild using \fBvim.eclass\fR +because the eclass does all the unpacking, compilation and +installation. +.SH "VARIABLES" +.TP +.B VIM_VERSION = \fI"version string"\fR +This variable is important because the ebuild version (for example +6.2_pre5) corresponds to a vim version (for example 6.2e) but there is +no way to make that jump without help from the ebuild author. +Historically there was a method in the vim.eclass to calculate the vim +version from the ebuild version, but that meant that the ebuild author +had to make sure the ebuild was correctly versioned each time. To +avoid that headache, it became easier to simply specify +\fBVIM_VERSION\fR in the ebuild itself. +.TP +.B VIM_GENTOO_PATCHES = \fI"filename"\fR +The filename of the Gentoo patches to apply. It's not always +necessary to update the Gentoo patches for a new version of vim, +so this variable separates the ebuild and vim versions from the patch +tarball version. Take a look at +\fBvim-6.2.011-gentoo-patches.tar.bz2\fR +for an example of the patch directory layout. +.TP +.B VIM_ORG_PATCHES = \fI"filename"\fR +The filename of the vim patches to apply. This is a tarball of +patches from \fBftp://ftp.vim.org/pub/vim/patches/\fR which apply to +the current version. See \fBvim-6.2.011-patches.tar.bz2\fR for an +example of the vim.org patch tarballs. +.SH "REPORTING BUGS" +Please report bugs via http://bugs.gentoo.org/ +.SH "SEE ALSO" +.BR ebuild (5) +.BR vim (1) +.SH "FILES" +.BR /usr/portage/eclass/vim.eclass +.SH "AUTHORS" +Aron Griffis +.br +Ryan Phillips +.br +Seemant Kulleen +.SH "CVS HEADER" +$Header: /var/cvsroot/gentoo-src/portage/man/vim.eclass.5,v 1.3.2.1 2005/01/15 00:19:36 vapier Exp $ -- cgit v1.2.3-65-gdbad