summaryrefslogtreecommitdiffstats
path: root/doc/package
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2007-12-09 05:50:48 +0000
committerZac Medico <zmedico@gentoo.org>2007-12-09 05:50:48 +0000
commit9a342dc14d405d041af40f76b8b9b7855fcda692 (patch)
treef279122f051f61cf0c8799bcb842bf7a451588cf /doc/package
parent901ceb3dd4247cc941fec353109bf06de4d2271e (diff)
downloadportage-9a342dc14d405d041af40f76b8b9b7855fcda692.tar.gz
portage-9a342dc14d405d041af40f76b8b9b7855fcda692.tar.bz2
portage-9a342dc14d405d041af40f76b8b9b7855fcda692.zip
Add some documentation for ebuild phases and pre/post phase
hooks that can be defined via bashrc. svn path=/main/trunk/; revision=8876
Diffstat (limited to 'doc/package')
-rw-r--r--doc/package/ebuild.docbook4
-rw-r--r--doc/package/ebuild/phases.docbook43
2 files changed, 47 insertions, 0 deletions
diff --git a/doc/package/ebuild.docbook b/doc/package/ebuild.docbook
new file mode 100644
index 000000000..5466f99db
--- /dev/null
+++ b/doc/package/ebuild.docbook
@@ -0,0 +1,4 @@
+<chapter id='package-ebuild'>
+<title>Ebuild</title>
+&package_ebuild_phases;
+</chapter>
diff --git a/doc/package/ebuild/phases.docbook b/doc/package/ebuild/phases.docbook
new file mode 100644
index 000000000..5c7f04969
--- /dev/null
+++ b/doc/package/ebuild/phases.docbook
@@ -0,0 +1,43 @@
+<sect1 id='package-ebuild-phases'>
+ <title>Ebuild Phases</title>
+ <para>
+ Ebuild execution is divided into a series of phases. In order
+ to implement a phase, an ebuild defines a function to serve as
+ an entry point for execution of that phase.
+ This design is similar to the template method pattern that
+ is commonly used in object oriented programming languages. An ebuild
+ can inherit or override a template method from an eclass.
+ </para>
+ <para>
+ The function names for the ebuild phases, listed in order of execution:
+ <itemizedlist>
+ <listitem>
+ pkg_setup
+ </listitem>
+ <listitem>
+ src_unpack
+ </listitem>
+ <listitem>
+ src_compile
+ </listitem>
+ <listitem>
+ src_test
+ </listitem>
+ <listitem>
+ src_install
+ </listitem>
+ <listitem>
+ pkg_preinst
+ </listitem>
+ <listitem>
+ pkg_postinst
+ </listitem>
+ <listitem>
+ pkg_prerm
+ </listitem>
+ <listitem>
+ pkg_postrm
+ </listitem>
+ </itemizedlist>
+ </para>
+</sect1>