public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2012-10-30 19:01 Markos Chandras
  0 siblings, 0 replies; 34+ messages in thread
From: Markos Chandras @ 2012-10-30 19:01 UTC (permalink / raw
  To: gentoo-commits

commit:     a270561f8524331f965b2be9ae7387654eb5ba5f
Author:     Markos Chandras <hwoarang <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 30 18:59:28 2012 +0000
Commit:     Markos Chandras <hwoarang <AT> gentoo <DOT> org>
CommitDate: Tue Oct 30 18:59:28 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/devmanual.git;a=commit;h=a270561f

eapi: Remove quotes from EAPI for consistency. Bug #374593

Also, add a note that single and double quotes are also allowed.

---
 ebuild-writing/eapi/text.xml |   17 +++++++++++------
 1 files changed, 11 insertions(+), 6 deletions(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index 9d7696b..38b9117 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -18,9 +18,14 @@ can be printed out, consulted for reference and is available
 as <c>app-doc/pms</c> in the main tree.
 </important>
 <p>
-If EAPI is undefined in an ebuild, then EAPI="0" is selected. If you want to override
+If EAPI is undefined in an ebuild, then EAPI=0 is selected. If you want to override
 the EAPI variable, you have to specify it at the top of the ebuild:
 </p>
+
+<note>
+Most developers prefer to set the EAPI version without quotes. However, the PMS allows single and double quotes as well.
+</note>
+
 <codesample lang="ebuild">
 # Copyright 1999-2010 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
@@ -112,7 +117,7 @@ IUSE="foo +bar"
 
 
 <section>
-<title>EAPI="2"</title>
+<title>EAPI=2</title>
 <body>
 
 <subsection>
@@ -128,7 +133,7 @@ IUSE="foo +bar"
 doman foo.1
 # will go into /usr/share/man/man1/foo.1
 doman foo.lang.1
-# will go into /usr/share/man/lang/man1/foo.1 with EAPI="2"
+# will go into /usr/share/man/lang/man1/foo.1 with EAPI=2
 		</codesample>
 		</p>
 	</li>
@@ -306,7 +311,7 @@ src_compile() {
 </body>
 </section>
 <section>
-<title>EAPI="3"</title>
+<title>EAPI=3</title>
 <body>
 
 <ul>
@@ -331,7 +336,7 @@ src_compile() {
 </section>
 
 <section>
-<title>EAPI="4"</title>
+<title>EAPI=4</title>
 <body>
 
 <subsection>
@@ -494,7 +499,7 @@ DEPEND="
 # Distributed under the terms of the GNU General Public License v2
 # $Header: $
 
-EAPI="4"
+EAPI=4
 inherit linux-info
 ...
 


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2024-07-05 20:15 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2024-07-05 20:15 UTC (permalink / raw
  To: gentoo-commits

commit:     91ac6474f078dc261807b535db75356cde91ac96
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Fri Jul  5 20:15:04 2024 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Fri Jul  5 20:15:04 2024 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=91ac6474

ebuild-writing/eapi: Add todo items for EAPIs 5 and 6

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 ebuild-writing/eapi/text.xml | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index 26795cf..4943dba 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -112,6 +112,13 @@ Manager Specification for details about them.
 <section>
 <title>EAPI 5</title>
 
+<body>
+<todo>
+EAPI 5 is deprecated and should no longer appear here. The information needs to
+be split up and moved to other sections.
+</todo>
+</body>
+
 <subsection>
 <title>EAPI 5 metadata</title>
 <body>
@@ -297,6 +304,13 @@ If USE flag is set, echo [true output][true suffix] (defaults to "yes"),
 <section>
 <title>EAPI 6</title>
 
+<body>
+<todo>
+EAPI 6 is deprecated and should no longer appear here. The information needs to
+be split up and moved to other sections.
+</todo>
+</body>
+
 <subsection>
 <title>EAPI 6 Bash version</title>
 <body>


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2022-11-09 12:01 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2022-11-09 12:01 UTC (permalink / raw
  To: gentoo-commits

commit:     960cd5a52ec51120330ee4b099e89c58f61ee3a8
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Wed Oct 19 09:13:19 2022 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Wed Oct 19 09:13:19 2022 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=960cd5a5

ebuild-writing/eapi: Replace interactive by live in example

The former is semi-deprecated and we shouldn't advertise its use.

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 ebuild-writing/eapi/text.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index 45b032a..b6463c0 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -1072,7 +1072,7 @@ EAPI=7
 
 inherit git-r3
 
-PROPERTIES+=" interactive"
+PROPERTIES+=" live"
 </codesample>
 
     <p>
@@ -1086,7 +1086,7 @@ EAPI=8
 
 inherit git-r3
 
-PROPERTIES="interactive"
+PROPERTIES="live"
 </codesample>
 
     <p>


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2022-02-25 19:04 Sam James
  0 siblings, 0 replies; 34+ messages in thread
From: Sam James @ 2022-02-25 19:04 UTC (permalink / raw
  To: gentoo-commits

commit:     e36a0545130215a7390dabaa5540d54c3a153c3f
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Feb 25 19:02:45 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Feb 25 19:02:45 2022 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=e36a0545

ebuild-writing/eapi: update link to Python guide

Migrated to projects.gentoo.org.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 ebuild-writing/eapi/text.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index fbf88a5..2a716ae 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -80,7 +80,7 @@ or its dependencies.
 The Base System project has
 <uri link="https://wiki.gentoo.org/wiki/Project:Base#Rules_and_limitations">rules</uri>
 governing their use of newer EAPIs, as does the
-<uri link="https://dev.gentoo.org/~mgorny/python-guide/package-maintenance.html#porting-packages-to-a-new-eapi">Python project</uri>.
+<uri link="https://projects.gentoo.org/python/guide/package-maintenance.html#porting-packages-to-a-new-eapi">Python project</uri>.
 </p>
 
 <p>


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2022-02-22  7:11 Sam James
  0 siblings, 0 replies; 34+ messages in thread
From: Sam James @ 2022-02-22  7:11 UTC (permalink / raw
  To: gentoo-commits

commit:     57ba0f67f138341373555447371bd125e34e5b1c
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Jan 10 01:20:35 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Feb 22 07:11:24 2022 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=57ba0f67

ebuild-writing/eapi: document upgrade path policy

The "upgrade path" policy is not particularly well-defined;
over the years, various people have come to understand it
as "two years", "one year", with mixed interpretations
within that (is it enough to be able to upgrade just
Portage?)

This is a start towards formalising policy here,
even if we end up changing it later, at least
it's codified.

Closes: https://bugs.gentoo.org/821553
Signed-off-by: Sam James <sam <AT> gentoo.org>

 ebuild-writing/eapi/text.xml | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index e85a3ec..257232c 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -62,8 +62,29 @@ EAPI-conditional code)
 When writing new ebuilds developers can choose whatever EAPI they think
 is the best.  Using the features of the latest EAPI is encouraged.
 </p>
+</body>
+
+<subsection>
+<title>Upgrade path</title>
+<body>
+
+<p>
+Gentoo policy is to support upgrades for installations at least a year old
+with no/little intervention and up to two years old with minor intervention. To
+achieve this, developers must avoid using the latest EAPI in ebuilds within
+the <c>@system</c> set (see <uri link="::general-concepts/dependencies/#implicit-system-dependency"/>)
+or its dependencies.
+</p>
+
+<p>
+The Base System project has
+<uri link="https://wiki.gentoo.org/wiki/Project:Base#Rules_and_limitations">rules</uri>
+governing their use of newer EAPIs, as does the
+<uri link="https://dev.gentoo.org/~mgorny/python-guide/package-maintenance.html#porting-packages-to-a-new-eapi">Python project</uri>.
+</p>
 
 </body>
+</subsection>
 </section>
 
 <section>


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2022-02-22  7:11 Sam James
  0 siblings, 0 replies; 34+ messages in thread
From: Sam James @ 2022-02-22  7:11 UTC (permalink / raw
  To: gentoo-commits

commit:     9db2bfb9151258ce62a1854774a6d3bf60734af2
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Jan 10 01:25:20 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Feb 22 07:11:27 2022 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=9db2bfb9

ebuild-writing/eapi: mention blocker retention period

Bug: https://bugs.gentoo.org/821553
Signed-off-by: Sam James <sam <AT> gentoo.org>
Closes: https://github.com/gentoo/devmanual/pull/261
Signed-off-by: Sam James <sam <AT> gentoo.org>

 ebuild-writing/eapi/text.xml | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index 257232c..fbf88a5 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -83,6 +83,15 @@ governing their use of newer EAPIs, as does the
 <uri link="https://dev.gentoo.org/~mgorny/python-guide/package-maintenance.html#porting-packages-to-a-new-eapi">Python project</uri>.
 </p>
 
+<p>
+It is also convention that blockers within ebuilds are retained for at least
+2 years after the last ebuild matching the block is removed from the tree to
+avoid file collisions for users upgrading older systems. <c>pkgcheck</c> has
+a warning for this called <c>OutdatedBlocker</c> (or even
+<c>NonexistentBlocker</c> for when the match is from pre-git times if using
+a non-grafted repository).
+</p>
+
 </body>
 </subsection>
 </section>


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2020-05-09 10:41 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2020-05-09 10:41 UTC (permalink / raw
  To: gentoo-commits

commit:     95f2a74b60ec0057e99e8f3ff8e8271af63f1ff7
Author:     Jaak Ristioja <jaak <AT> ristioja <DOT> ee>
AuthorDate: Sat May  9 09:43:35 2020 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sat May  9 10:40:34 2020 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=95f2a74b

ebuild-writing/eapi: Fixed some typos

Signed-off-by: Jaak Ristioja <jaak <AT> ristioja.ee>
Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 ebuild-writing/eapi/text.xml | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index f51a458..9541c02 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -446,7 +446,7 @@ installation targets.
   </dd>
   <dt><c>CTARGET</c></dt>
   <dd>
-    Used in certain cross-compliations, often empty value.
+    Used in certain cross-compilations, often empty value.
   </dd>
 </dl>
 
@@ -473,14 +473,14 @@ installation targets.
   <dd>
     These variables no longer contain a trailing slash with <c>EAPI=7</c>.
   </dd>
-  <dt><c>BDEPEND</c> addded</dt>
+  <dt><c>BDEPEND</c> added</dt>
   <dd>
     Previously, all build-time tools and libraries went into the <c>DEPEND</c>.
     Now, built-time dependencies are split into <c>DEPEND</c> and
     <c>BDEPEND</c>. The difference is simply that <c>BDEPEND</c> are
     dependencies to be executed on the CBUILD. <c>DEPEND</c> remains for other
     dependencies, such as libraries, for the CHOST. This improves the
-    cross-compliation support.
+    cross-compilation support.
   </dd>
   <dt><c>BROOT</c> added</dt>
   <dd>
@@ -562,7 +562,7 @@ installation targets.
       <li><c>-b</c> will check CBUILD build-time dependencies (BDEPEND)</li>
     </ul>
   </dd>
-  <dt>Version manipulation and comparision commands</dt>
+  <dt>Version manipulation and comparison commands</dt>
   <dd>
     <p>
     EAPI=7 introduced three commands for common version number operations.
@@ -612,7 +612,7 @@ installation targets.
     to specify <c>CBUILD</c> and <c>CTARGET</c> respectively have been added
     and are retro-active to all EAPIs. In addition, if the build supports
     <c>--with-sysroot</c>, the correct value will be passed such that normal
-    and cross-compliations succeed.
+    and cross-compilations succeed.
   </dd>
 </dl>
 


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2020-01-23  7:47 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2020-01-23  7:47 UTC (permalink / raw
  To: gentoo-commits

commit:     758897db36d3d176ef9acef42c7aec990ac039f9
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Mon Jan 20 21:13:06 2020 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Thu Jan 23 07:44:51 2020 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=758897db

ebuild-writing/eapi: Update introduction, section on EAPIs 0 to 3.

Modernise the introduction, and add a short section saying that EAPIs
0 to 3 are obsolete.

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 ebuild-writing/eapi/text.xml | 47 ++++++++++++++++++++++++++++++++------------
 1 file changed, 34 insertions(+), 13 deletions(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index 89b88ff..2a47617 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -5,11 +5,12 @@
 
 <body>
 <p>
-The Package Manager Specification (PMS) is a standardization
-effort to ensure that the ebuild file format, the ebuild repository format
-(of which the Gentoo repository is Gentoo's main incarnation) as well as behavior
-of the package managers interacting with these ebuilds is properly written
-down and agreed upon.
+The <uri link="https://wiki.gentoo.org/wiki/Project:PMS">Package Manager
+Specification (PMS)</uri> is a standardization effort to ensure that the
+ebuild file format, the ebuild repository format (of which the Gentoo
+repository is Gentoo's main incarnation) as well as behaviour of the package
+managers interacting with these ebuilds is properly written down and agreed
+upon.
 </p>
 
 <p>
@@ -33,37 +34,57 @@ appendix of the Package Manager Specification.  The two-page leaflet
 can be printed out, consulted for reference and is available
 as <c>app-doc/pms</c> in the main tree.
 </important>
+
 <p>
-If EAPI is undefined in an ebuild, then EAPI=0 is selected.  You should
-set the EAPI variable, by specifying it at the top of the ebuild:
+You must set the EAPI variable by specifying it at the top of the ebuild:
 </p>
 
-<note>
-Most developers prefer to set the EAPI version without quotes. However, the PMS allows single and double quotes as well.
-</note>
-
 <codesample lang="ebuild">
 # Copyright 1999-2020 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=6
+EAPI=7
 </codesample>
 
+<note>
+Most developers prefer to set the EAPI version without quotes. However, the PMS
+allows single and double quotes as well.
+</note>
+
 <important>
 EAPI must only be defined in ebuild files, not eclasses. (eclasses may have
 EAPI-conditional code)
 </important>
 
 <p>
-When writing new ebuilds developers can choose whathever EAPI they think
+When writing new ebuilds developers can choose whatever EAPI they think
 is the best.  Using the features of the latest EAPI is encouraged.
 </p>
 
 </body>
 </section>
 
+<section>
+<title>EAPIs 0 to 3</title>
+<body>
+
+<p>
+EAPIs 0 to 3 are obsolete and must no longer be used. Refer to the Package
+Manager Specification for details about them.
+</p>
+
+</body>
+</section>
+
 <section>
 <title>EAPI=4</title>
+<body>
+
+<todo>
+Split up and move each feature to the section that is relevant for it.
+</todo>
+
+</body>
 
 <subsection>
 <title>EAPI 4 Helpers</title>


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2020-01-09  7:58 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2020-01-09  7:58 UTC (permalink / raw
  To: gentoo-commits

commit:     03ab16d359f1525fa135eb7465dd54695fb16a36
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Thu Jan  9 07:57:14 2020 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Thu Jan  9 07:57:14 2020 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=03ab16d3

ebuild-writing/eapi: Fix link to Prefix Technical Documentation.

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 ebuild-writing/eapi/text.xml | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index a2fbddd..f1bdfed 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -327,7 +327,8 @@ src_compile() {
 		<p>
 			Support for the <c>EPREFIX</c>, <c>EROOT</c>, and <c>ED</c>
 			variables. If an ebuild uses one of these, it must be EAPI3 aware.
-			See <uri link="https://www.gentoo.org/proj/en/gentoo-alt/prefix/techdocs.xml#doc_chap2">Gentoo Prefix Techdocs</uri> for more information.
+			See <uri link="https://wiki.gentoo.org/wiki/Project:Prefix/Technical_Documentation">
+			Gentoo Prefix Technical Documentation</uri> for more information.
 		</p>
 	</li>
 	<li>


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2018-10-24 13:01 Brian Evans
  0 siblings, 0 replies; 34+ messages in thread
From: Brian Evans @ 2018-10-24 13:01 UTC (permalink / raw
  To: gentoo-commits

commit:     b887343bd84cfbfd7c0fa42e1e35158f3817e464
Author:     Brian Evans <grknight <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 17 14:35:57 2018 +0000
Commit:     Brian Evans <grknight <AT> gentoo <DOT> org>
CommitDate: Wed Oct 24 12:56:36 2018 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=b887343b

ebuild-writing/eapi: Add summary of EAPI=7 features

Reference material used includes "The ultimate guide to EAPI 7"[1] by Michał Górny
and the "Package Manager Specification"[2]

[1] https://dev.gentoo.org/~mgorny/articles/the-ultimate-guide-to-eapi-7.html
[2] https://projects.gentoo.org/pms/7/pms.html

Signed-off-by: Brian Evans <grknight <AT> gentoo.org>

 ebuild-writing/eapi/text.xml | 184 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 184 insertions(+)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index 406a562..7fd018f 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -976,6 +976,190 @@ src_install() {
 </body>
 </section>
 
+<section>
+<title>EAPI=7</title>
+<body>
+<subsection>
+<title>Terminology</title>
+<body>
+<p>Documents may use the following terms to better describe dependency and installation targets.</p>
+<ul>
+	<li>
+		<p><b><c>CHOST</c></b></p>
+		<p>The system that will be running the installed package.</p>
+	</li>
+	<li>
+		<p><b><c>CBUILD</c></b></p>
+		<p>The system used to build packages. When not cross-compiling, CBUILD == CHOST.</p>
+	</li>
+	<li>
+		<p><b><c>CTARGET</c></b></p>
+		<p>Used in certain cross-compliations, often empty value.</p>
+	</li>
+</ul>
+</body>
+</subsection>
+<subsection>
+<title>Variables</title>
+<body>
+<ul>
+	<li>
+		<p><b><c>PORTDIR</c> and <c>ECLASSDIR</c> are removed</b></p>
+		<p><c>PORTDIR</c> and <c>ECLASSDIR</c> are no longer defined and cannot be used
+		in ebuilds to access these directories.</p>
+	</li>
+	<li>
+		<p><b><c>DESTTREE</c> and <c>INSDESTTREE</c> are removed</b></p>
+		<p>The unintended exported variables <c>PORTDIR</c> and <c>ECLASSDIR</c>
+		cannot be used in ebuilds to manipulate installation paths.
+		Use <c>into</c> or <c>insinto</c>, respectively, instead.</p>
+	</li>
+	<li>
+		<p><b><c>D</c>, <c>ED</c>, <c>ROOT</c>, and <c>EROOT</c> modified</b></p>
+		<p>These variables no longer contain a trailing slash with <c>EAPI=7</c>.</p>
+	</li>
+	<li>
+		<p><b><c>BDEPEND</c> addded</b></p>
+		<p>
+			Previously, all build-time tools and libraries went into the <c>DEPEND</c>.
+			Now, built-time dependencies are split into <c>DEPEND</c> and <c>BDEPEND</c>.
+			The difference is simply that <c>BDEPEND</c> are dependencies to be executed on the CBUILD.
+			<c>DEPEND</c> remains for other dependencies, such as libraries, for the CHOST.
+			This improves the cross-compliation support.
+		</p>
+	</li>
+	<li>
+		<p><b><c>BROOT</c> added</b></p>
+		<p><c>BROOT</c> is the absolute path to the root directory, including any prefix, containing build
+		dependencies satisfied by BDEPEND, typically executable build tools.</p>
+	</li>
+	<li>
+		<p><b><c>SYSROOT</c> and <c>ESYSROOT</c> added</b></p>
+		<p><c>SYSROOT</c> is the location of where dependencies in <c>DEPEND</c> are installed.
+		<c>ESYSROOT</c> is <c>SYSROOT</c> with <c>EPREFIX</c> appended.
+		</p>
+	</li>
+	<li>
+		<p><b><c>ENV_UNSET</c> added</b></p>
+		<p>A whitespace delimited list of variables to be removed from the build environment.</p>
+	</li>
+</ul>
+</body>
+</subsection>
+<subsection>
+<title>Metadata</title>
+<body>
+<ul>
+	<li>
+		<p><b>Empty groupings are banned</b><p>
+		<p>Groupings which are empty, such as <c>DEPEND="|| ( ${empty_var} )"</c> will now generate an error.
+		Furthermore, conditions within groupings are more strictly enforced.
+		Eg. <c>REQUIRED_USE="|| ( foo? ( bar ) baz? ( zoinks )"</c> would previously work with <c>USE="-a -b"<c> now requires
+		either <c>USE="foo bar"</c> or <c>USE="baz zoinks"</c>.
+		</p>
+	</li>
+</ul>
+</body>
+</subsection>
+<subsection>
+<title>Profiles</title>
+<body>
+<ul>
+	<li>
+		<p><b><c>package.provided</c> banned</b><p>
+		<p>Profiles may no longer contain a <c>package.provided</c> file with <c>EAPI=7</c>.</p>
+	</li>
+</ul>
+</body>
+</subsection>
+<subsection>
+<title>Helpers</title>
+<body>
+<ul>
+	<li>
+		<p><b><c>dohtml</c> banned</b></p>
+		<p>
+			The <c>dohtml</c> helper has been banned with <c>EAPI=7</c>.
+		</p>
+	</li>
+	<li>
+		<p><b><c>dolib</c> and <c>libopts</c> banned</b></p>
+		<p>
+			The <c>dolib</c> helper and the associated <c>libopts</c> have been banned with <c>EAPI=7</c>.
+		</p>
+	</li>
+	<li>
+		<p><b><c>has_version</c> and <c>best_version</c> changes</b></p>
+		<p>
+			<c>has_version</c> and <c>best_version</c> now support an optional switch
+			to determine which type of dependencies to check.
+		</p>
+			<ul>
+				<li><p><c>-r</c> (the default) will check runtime dependencies (RDEPEND)</p></li>
+				<li><p><c>-d</c> will check target build-time dependencies (DEPEND)</p></li>
+				<li><p><c>-b</c> will check host build-time dependencies (BDEPEND)</p></li>
+			</ul>
+	</li>
+	<li>
+		<p><b>Version manipulation and comparision commands</b></p>
+		<p>
+			EAPI=7 introduced three commands for common version number operations.
+		</p>
+			<ul>
+				<li><p><c>ver_cut</c> obtains substrings of a version string</p></li>
+				<li><p><c>ver_rs</c> replaces separators in a version string</p></li>
+				<li><p><c>ver_test</c> compares two versions</p></li>
+			</ul>
+		<p>See <uri link="::ebuild-writing/variables#Version%20and%20Name%20Formatting%20Issues"/>
+		for examples of common uses or 
+		<uri link="https://dev.gentoo.org/~mgorny/articles/the-ultimate-guide-to-eapi-7.html#version-manipulation-and-comparison-commands">
+		an in-depth look</uri></p>
+	</li>
+	<li>
+		<p><b>New function <c>eqawarn</c></b></p>
+		<p>
+			The <c>eqawarn</c> helper has been added with <c>EAPI=7</c>.
+			This function is to alert developers to a deprecated feature.
+			Previously, this was contained in <c>eutils</c> eclass which is no longer necessary.
+		</p>
+	</li>
+	<li>
+		<p><b>New function <c>dostrip</c></b></p>
+		<p>
+			The <c>dostrip</c> helper has been added with <c>EAPI=7</c>.
+			This function controls whether or not to strip a binary.<br>
+			<c>dostrip -x [file]</c> will exclude a binary from being stripped.<br>
+			Conversely, when combined with RESTRICT=strip, <c>dostrip [file]</c> selects a binary
+			file to be stripped.
+		</p>
+	</li>
+	<li>
+		<p><b><c>die</c> and <c>assert</c> changes</b></p>
+		<p>These commands are now safe to use in a subshell and act as if they were called in the main process.</p>
+	</li>
+	<li>
+		<p><b><c>nonfatal</c> changes</b></p>
+		<p>The <c>nonfatal</c> command now works for shell functions and subprocesses.</p>
+	</li>
+	<li>
+		<p><b><c>domo</c> behaviour changed</b></p>
+		<p><c>domo</c> (for localizations) now ignores the <c>into</c> directives.
+		This follows similar commands like <c>doinfo</c> and <c>doman</c>.</p>
+	</li>
+	<li>
+		<p><b><c>econf</c> changes</b></p>
+		<p>The cross-compilation options <c>--build</c> and <c>--target</c> options
+		to specify <c>CBUILD</c> and <c>CTARGET</c> respectively have been added and are retro-active to all EAPIs.
+		In addition, if the build supports <c>--with-sysroot</c>, the correct value will be passed
+		such that normal and cross-compliations succeed.
+		</p>
+	</li>
+</ul>
+</body>
+</subsection>
+</body>
+</section>
+
 </body>
 </chapter>
 </guide>


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2017-09-25  4:27 Göktürk Yüksek
  0 siblings, 0 replies; 34+ messages in thread
From: Göktürk Yüksek @ 2017-09-25  4:27 UTC (permalink / raw
  To: gentoo-commits

commit:     b5f6752aab9664d4672c476065467039b73b2f7b
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun Jun  7 12:44:00 2015 +0000
Commit:     Göktürk Yüksek <gokturk <AT> gentoo <DOT> org>
CommitDate: Mon Sep 25 04:25:12 2017 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=b5f6752a

ebuild-writing/eapi: Replace nonfatal example with something correct

Replace the nonfatal example from a poor programming practice (nonfatal
dodoc) to a code collecting logs for test failures. Based on an old
version of sys-apps/paludis.

Closes: https://bugs.gentoo.org/551190

 ebuild-writing/eapi/text.xml | 26 +++++++++++++++++++-------
 1 file changed, 19 insertions(+), 7 deletions(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index a02b5a6..68f27b0 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -369,19 +369,31 @@ src_compile() {
 		</p>
 		<p>Example:</p>
 		<codesample lang="ebuild">
-EAPI=1
+EAPI=2
 ...
-src_install() {
-	emake DESTDIR="${D}" install || die "make install failed"
-	dodoc ChangeLog README
+src_test() {
+	if ! emake check ; then
+		local a
+		eerror "Tests failed. Looking for files for you to add to your bug report..."
+		while IFS='' read -r -d $'\0' a ; do
+			eerror "    ${a}"
+		done &lt; &lt;(find "${S}" -type f '(' -name '*.epicfail' -o -name '*.log' ')' -print0)
+		die "Make check failed"
+	fi
 }
 		</codesample>
 		<codesample lang="ebuild">
 EAPI=4
 ...
-src_install() {
-	emake DESTDIR="${D}" install
-	nonfatal dodoc ChangeLog README
+src_test() {
+	if ! nonfatal emake check ; then
+		local a
+		eerror "Tests failed. Looking for files for you to add to your bug report..."
+		while IFS='' read -r -d $'\0' a ; do
+			eerror "    ${a}"
+		done &lt; &lt;(find "${S}" -type f '(' -name '*.epicfail' -o -name '*.log' ')' -print0)
+		die "Make check failed"
+	fi
 }
 		</codesample>
 	</li>


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2017-01-25  0:55 Göktürk Yüksek
  0 siblings, 0 replies; 34+ messages in thread
From: Göktürk Yüksek @ 2017-01-25  0:55 UTC (permalink / raw
  To: gentoo-commits

commit:     f4c6229352dfc9705697aa684ce6a251d8dda5f5
Author:     Jonas Stein <news <AT> jonasstein <DOT> de>
AuthorDate: Tue Jan 24 14:26:55 2017 +0000
Commit:     Göktürk Yüksek <gokturk <AT> gentoo <DOT> org>
CommitDate: Wed Jan 25 00:53:42 2017 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=f4c62293

ebuild-writing/eapi: Update example to EAPI=6, 2017

 ebuild-writing/eapi/text.xml | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index a918fd0..6a5de05 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -42,13 +42,11 @@ Most developers prefer to set the EAPI version without quotes. However, the PMS
 </note>
 
 <codesample lang="ebuild">
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # &#36;Id&#36;
 
-EAPI=5
-inherit eutils
-
+EAPI=6
 </codesample>
 
 <important>


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2016-12-08  4:07 Göktürk Yüksek
  0 siblings, 0 replies; 34+ messages in thread
From: Göktürk Yüksek @ 2016-12-08  4:07 UTC (permalink / raw
  To: gentoo-commits

commit:     f8ed217cfb3aa502048bd73cec53578b679a0039
Author:     Göktürk Yüksek <gokturk <AT> gentoo <DOT> org>
AuthorDate: Thu Dec  8 04:06:17 2016 +0000
Commit:     Göktürk Yüksek <gokturk <AT> gentoo <DOT> org>
CommitDate: Thu Dec  8 04:06:17 2016 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=f8ed217c

ebuild-writing/eapi: mention that dohtml has been deprecated in EAPI 6

 ebuild-writing/eapi/text.xml | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index 6218eab..59e0bf3 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -940,6 +940,12 @@ src_install() {
 		</p>
 	</li>
 	<li>
+		<p><b><c>dohtml</c> deprecated</b></p>
+		<p>
+			The <c>dohtml</c> helper has been deprecated with <c>EAPI=6</c>.
+		</p>
+	</li>
+	<li>
 		<p><b><c>nonfatal die</c></b></p>
 		<p>
 			When <c>die</c> or <c>assert</c> are called under the <c>nonfatal</c> command and with the <c>-n</c> option, they will not abort the build process but return with an error.


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2016-09-08 21:23 Mike Gilbert
  0 siblings, 0 replies; 34+ messages in thread
From: Mike Gilbert @ 2016-09-08 21:23 UTC (permalink / raw
  To: gentoo-commits

commit:     6018032574616720916bcb7a7e1fae4ef699fedc
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Thu Sep  8 21:22:55 2016 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Thu Sep  8 21:22:55 2016 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=60180325

ebuild-writing/eapi: replace weird unicode angle brackets

 ebuild-writing/eapi/text.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index aaa7033..c339e91 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -815,7 +815,7 @@ RDEPEND="dev-libs/foo:2=
 		<p>
 		<!-- We probably need an example here -->
 		<pre>
-USAGE: usex &#9001;USE flag&#9002; [true output] [false output] [true suffix] [false suffix]
+USAGE: usex &lt;USE flag&gt; [true output] [false output] [true suffix] [false suffix]
 DESCRIPTION:
 If USE flag is set, echo [true output][true suffix] (defaults to "yes"),
  otherwise echo [false output][false suffix] (defaults to "no").


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2016-04-30  3:09 Göktürk Yüksek
  0 siblings, 0 replies; 34+ messages in thread
From: Göktürk Yüksek @ 2016-04-30  3:09 UTC (permalink / raw
  To: gentoo-commits

commit:     8cdab91359e7bb9112720d1df1dde92409ab2348
Author:     Louis Sautier <sautier.louis <AT> gmail <DOT> com>
AuthorDate: Thu Mar 31 12:36:07 2016 +0000
Commit:     Göktürk Yüksek <gokturk <AT> binghamton <DOT> edu>
CommitDate: Sat Apr 30 02:50:11 2016 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=8cdab913

ebuild-writing/eapi/text: fix typo: s/inform/informs/

 ebuild-writing/eapi/text.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index 8045b28..aaa7033 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -14,7 +14,7 @@ down and agreed upon.
 
 <p>
 EAPI is a version defined in ebuilds and other package manager related files
-which inform the package manager about the file syntax and content. It is,
+which informs the package manager about the file syntax and content. It is,
 in effect, the version of the package manager specification (PMS) that the
 file adheres to.
 </p>


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2016-03-24 15:10 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2016-03-24 15:10 UTC (permalink / raw
  To: gentoo-commits

commit:     7f647d3e3a3b3f029a9c44ef20fd8f9a3077181b
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Thu Mar 24 15:09:33 2016 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Thu Mar 24 15:09:33 2016 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=7f647d3e

ebuild-writing/eapi: Typo.

Bug: 578184

 ebuild-writing/eapi/text.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index b18f052..239f6f3 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -973,7 +973,7 @@ src_install() {
 	<li>
 		<p><b><c>unpack</c> changes</b></p>
 		<ul>
-			<li><p><c>unpack</c> supports elative paths without leading <c>./</c> (<c>unpack foo/bar.tar.gz</c> is valid as relative path).</p></li>
+			<li><p><c>unpack</c> supports relative paths without leading <c>./</c> (<c>unpack foo/bar.tar.gz</c> is valid as relative path).</p></li>
 			<li><p><c>unpack</c> supports <c>.txz</c> (xz compressed tarball).</p></li>
 			<li><p><c>unpack</c> matches filename extensions case-insensitively.</p></li>
 		</ul>


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2016-02-15 18:00 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2016-02-15 18:00 UTC (permalink / raw
  To: gentoo-commits

commit:     4b5ee4105f98de06fd2f75dc032885ba67d111d7
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 15 18:00:38 2016 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Mon Feb 15 18:00:38 2016 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=4b5ee410

ebuild-writing/eapi: Fix documentation of locale settings.

 ebuild-writing/eapi/text.xml | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index 9d0f2ea..b18f052 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -875,7 +875,11 @@ If USE flag is set, echo [true output][true suffix] (defaults to "yes"),
 <ul>
 	<li>
 		<p><b>Locale settings</b></p>
-		<p>With <c>EAPI=6</c> both <c>LC_CTYPE</c> and <c>LC_COLLATE</c> are set to <c>C</c>.</p>
+		<p>
+			Behaviour of case modification and collation order (<c>LC_CTYPE</c>
+			and <c>LC_COLLATE</c>) are guaranteed to be the same as in the
+			C locale, as far as characters in the ASCII range are concerned.
+		</p>
 	</li>
 	<li>
 		<p><b><c>failglob</c> enabled</b></p>


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2016-02-15 12:10 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2016-02-15 12:10 UTC (permalink / raw
  To: gentoo-commits

commit:     dc45ef4f246cf360e9e67ec0fdfa87749bf1f67d
Author:     Markus Meier <maekke <AT> gentoo <DOT> org>
AuthorDate: Thu Nov 19 20:37:34 2015 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Mon Feb 15 12:09:02 2016 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=dc45ef4f

describe EAPI=6 in EAPI Usage and Description page

This is based on PMS and it's cheat sheet

 ebuild-writing/eapi/text.xml | 135 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 135 insertions(+)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index 4cf6133..376089a 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -858,6 +858,141 @@ If USE flag is set, echo [true output][true suffix] (defaults to "yes"),
 </body>
 </section>
 
+<section>
+<title>EAPI=6</title>
+<body>
+
+<subsection>
+<title>Bash version</title>
+<body>
+<p>Ebuilds can use features of Bash version 4.2 (was 3.2 before).</p>
+</body>
+</subsection>
+
+<subsection>
+<title>Ebuild environment</title>
+<body>
+<ul>
+	<li>
+		<p><b>Locale settings</b></p>
+		<p>It is ensured that the behaviour of case modification and collation order for ASCII characters (<c>LC_CTYPE</c> and <c>LC_COLLATE</c>) are the same as in the POSIX locale.</p>
+	</li>
+	<li>
+		<p><b><c>failglob</c> enabled</b></p>
+		<p>
+		The <c>failglob</c> option of Bash is set in global scope, so that unintentional pattern expansion will be caught as an error.
+		</p>
+	</li>
+</ul>
+</body>
+</subsection>
+
+<subsection>
+<title>Phases</title>
+<body>
+<ul>
+	<li>
+		<p><b>New <c>src_prepare</c> Phase Function</b></p>
+		<p>
+			This phase is no longer a no-op, it supports applying patches via the <c>PATCHES</c> variable and applying user patches via <c>eaply_user</c>. The default <c>src_prepare</c> looks like this:
+			<codesample lang="ebuild">
+src_prepare() {
+	if declare -p PATCHES | grep -q "^declare -a "; then
+		[[ -n ${PATCHES[@]} ]] &amp;&amp; eapply "${PATCHES[@]}"
+	else
+		[[ -n ${PATCHES} ]] &amp;&amp; eapply ${PATCHES}
+	fi
+	eapply_user
+}
+			</codesample>
+		</p>
+	</li>
+	<li>
+		<p><b>New <c>src_install</c> Phase Function</b></p>
+		<p>
+			This phase uses the new <c>einstalldocs</c> function for installation of documentation. The default <c>src_install</c> looks like this:
+			<codesample lang="ebuild">
+src_install() {
+	if [[ -f Makefile ]] || [[ -f GNUmakefile ]] || [[ -f makefile ]]; then
+		emake DESTDIR="${D}" install
+	fi
+	einstalldocs
+}
+			</codesample>
+		</p>
+	</li>
+</ul>
+</body>
+</subsection>
+
+<subsection>
+<title>Helpers</title>
+<body>
+<ul>
+	<li>
+		<p><b><c>einstall</c> banned</b></p>
+		<p>
+			The <c>einstall</c> helper has been banned with <c>EAPI=6</c>.
+		</p>
+	</li>
+	<li>
+		<p><b><c>nonfatal die</c></b></p>
+		<p>
+			When <c>die</c> or <c>assert</c> are called under the <c>nonfatal</c> command and with the <c>-n</c> option, they will not abort the build process but return with an error.
+		</p>
+	</li>
+	<li>
+		<p><b><c>eapply</c> support</b></p>
+		<p>
+			The <c>eapply</c> command is a simplified substitute for <c>epatch</c> (from <c>eutils.eclass</c>), implemented in the package manager. The patches from its file or directory arguments are applied using patch <c>-p1</c>.
+		</p>
+	</li>
+	<li>
+		<p><b><c>eapply_user</c> support</b></p>
+		<p>
+			The <c>eapply_user</c> command permits the package manager to apply user-provided patches. It must be called from every <c>src_prepare</c> function.
+		</p>
+	</li>
+	<li>
+		<p><b><c>econf</c> adds <c>--docdir</c> and <c>--htmldir</c></b></p>
+		<p>
+			Options <c>--docdir</c> and <c>--htmldir</c> are passed to <c>configure</c>, in addition to the existing options.
+		</p>
+	</li>
+	<li>
+		<p><b><c>in_iuse</c> support</b></p>
+		<p>
+			The <c>in_iuse</c> function returns <c>true</c> if the <c>USE</c> flag given as its argument is available in the ebuild for <c>USE</c> queries.
+		</p>
+	</li>
+	<li>
+		<p><b><c>unpack</c> changes</b></p>
+		<ul>
+			<li><p><c>unpack</c> supports absolute and relative paths.</p></li>
+			<li><p><c>unpack</c> supports <c>.txz</c> (xz compressed tarball).</p></li>
+			<li><p><c>unpack</c> matches filename extensions case-insensitively.</p></li>
+		</ul>
+	</li>
+	<li>
+		<p><b><c>einstalldocs</c> support</b></p>
+		<p>
+			The <c>einstalldocs</c> function will in-stall the files specified by the <c>DOCS</c> variable (or a default set of files if <c>DOCS</c> is unset) and by the <c>HTML_DOCS</c> variable.
+		</p>
+	</li>
+	<li>
+		<p><b><c>get_libdir</c> support</b></p>
+		<p>
+			The <c>get_libdir</c> command outputs the <c>lib*</c> directory basename suitable for the current ABI.
+		</p>
+	</li>
+</ul>
+</body>
+</subsection>
+
+
+</body>
+</section>
+
 </body>
 </chapter>
 </guide>


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2016-02-15 12:10 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2016-02-15 12:10 UTC (permalink / raw
  To: gentoo-commits

commit:     aff608f26981189bb0f701d70b5ba47bd1189619
Author:     Markus Meier <maekke <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 20 16:40:24 2015 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Mon Feb 15 12:09:02 2016 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=aff608f2

Update EAPI=6 description

Based on feedback from mgorny and steev

 ebuild-writing/eapi/text.xml | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index 376089a..9d0f2ea 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -875,12 +875,12 @@ If USE flag is set, echo [true output][true suffix] (defaults to "yes"),
 <ul>
 	<li>
 		<p><b>Locale settings</b></p>
-		<p>It is ensured that the behaviour of case modification and collation order for ASCII characters (<c>LC_CTYPE</c> and <c>LC_COLLATE</c>) are the same as in the POSIX locale.</p>
+		<p>With <c>EAPI=6</c> both <c>LC_CTYPE</c> and <c>LC_COLLATE</c> are set to <c>C</c>.</p>
 	</li>
 	<li>
 		<p><b><c>failglob</c> enabled</b></p>
 		<p>
-		The <c>failglob</c> option of Bash is set in global scope, so that unintentional pattern expansion will be caught as an error.
+			For <c>EAPI=6</c>, the <c>failglob</c> option of bash is set in the global scope of ebuilds. If set, failed pattern matches during filename expansion result in an error when the ebuild is being sourced.
 		</p>
 	</li>
 </ul>
@@ -892,9 +892,9 @@ If USE flag is set, echo [true output][true suffix] (defaults to "yes"),
 <body>
 <ul>
 	<li>
-		<p><b>New <c>src_prepare</c> Phase Function</b></p>
+		<p><b>Update default implementation of <c>src_prepare</c></b></p>
 		<p>
-			This phase is no longer a no-op, it supports applying patches via the <c>PATCHES</c> variable and applying user patches via <c>eaply_user</c>. The default <c>src_prepare</c> looks like this:
+			This phase is no longer a no-op, it supports applying patches via the <c>PATCHES</c> variable and applying user patches via <c>eapply_user</c>. The default <c>src_prepare</c> looks like this:
 			<codesample lang="ebuild">
 src_prepare() {
 	if declare -p PATCHES | grep -q "^declare -a "; then
@@ -944,13 +944,14 @@ src_install() {
 	<li>
 		<p><b><c>eapply</c> support</b></p>
 		<p>
-			The <c>eapply</c> command is a simplified substitute for <c>epatch</c> (from <c>eutils.eclass</c>), implemented in the package manager. The patches from its file or directory arguments are applied using patch <c>-p1</c>.
+			The <c>eapply</c> command is a simplified substitute for <c>epatch</c> (from <c>eutils.eclass</c>), implemented in the package manager. The patches from its file or directory arguments are applied using patch <c>-p1</c>, but it accepts <c>patch(1)</c> options from GNU patch to override default behavior.
 		</p>
 	</li>
 	<li>
 		<p><b><c>eapply_user</c> support</b></p>
 		<p>
 			The <c>eapply_user</c> command permits the package manager to apply user-provided patches. It must be called from every <c>src_prepare</c> function.
+			<note><c>eapply_user</c> doesn't need to be called explicitly when default <c>src_prepare</c> is called.</note>
 		</p>
 	</li>
 	<li>
@@ -962,13 +963,13 @@ src_install() {
 	<li>
 		<p><b><c>in_iuse</c> support</b></p>
 		<p>
-			The <c>in_iuse</c> function returns <c>true</c> if the <c>USE</c> flag given as its argument is available in the ebuild for <c>USE</c> queries.
+			The <c>in_iuse</c> function returns <c>true</c> if the given parameter is available in the ebuilds <c>USE</c>.
 		</p>
 	</li>
 	<li>
 		<p><b><c>unpack</c> changes</b></p>
 		<ul>
-			<li><p><c>unpack</c> supports absolute and relative paths.</p></li>
+			<li><p><c>unpack</c> supports elative paths without leading <c>./</c> (<c>unpack foo/bar.tar.gz</c> is valid as relative path).</p></li>
 			<li><p><c>unpack</c> supports <c>.txz</c> (xz compressed tarball).</p></li>
 			<li><p><c>unpack</c> matches filename extensions case-insensitively.</p></li>
 		</ul>
@@ -976,7 +977,7 @@ src_install() {
 	<li>
 		<p><b><c>einstalldocs</c> support</b></p>
 		<p>
-			The <c>einstalldocs</c> function will in-stall the files specified by the <c>DOCS</c> variable (or a default set of files if <c>DOCS</c> is unset) and by the <c>HTML_DOCS</c> variable.
+			The <c>einstalldocs</c> function will install the files specified by the <c>DOCS</c> variable (or a default set of files if <c>DOCS</c> is unset) and by the <c>HTML_DOCS</c> variable.
 		</p>
 	</li>
 	<li>


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2015-11-22 12:37 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2015-11-22 12:37 UTC (permalink / raw
  To: gentoo-commits

commit:     b7aff930e229a8dd82229f4495a8caa57625ce51
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Thu Nov 19 19:06:19 2015 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Thu Nov 19 19:06:19 2015 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=b7aff930

ebuild-writing/eapi: Update documentation of doheader in EAPI 5.

Do not mention INSOPTIONS; install options should be set with the
insopts function, but never by directly assigning the INSOPTIONS
variable.

Document the -r option.

Bug: 566254

 ebuild-writing/eapi/text.xml | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index 3acf047..4cf6133 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -806,7 +806,8 @@ RDEPEND="dev-libs/foo:2=
 	<li>
 		<p><b>New doheader helper function</b></p>
 		<p>
-		Installs the given header files into <c>/usr/include/</c>, by default with file mode <c>0644</c>. This can be overridden by setting <c>INSOPTIONS</c> with the <c>insopts</c> function.
+		Installs the given header files into <c>/usr/include/</c>. If option
+		<c>-r</c> is specified, descends recursively into any directories given.
 		</p>
 	</li>
 	<li>


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2014-06-08 17:39 Mike Gilbert
  0 siblings, 0 replies; 34+ messages in thread
From: Mike Gilbert @ 2014-06-08 17:39 UTC (permalink / raw
  To: gentoo-commits

commit:     d38d6b5e7537e6f35ef9b494b7a705d9df6b62c7
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Sun Jun  8 17:37:42 2014 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Sun Jun  8 17:37:42 2014 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/devmanual.git;a=commit;h=d38d6b5e

ebuild-writing/eapi: Replace REPLACED_BY with REPLACED_BY_VERSION

---
 ebuild-writing/eapi/text.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index 1ee4026..3faab22 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -646,7 +646,7 @@ REQUIRED_USE="|| ( foo bar baz )"
 			when using it in these phases.
 		</p>
 		<p>
-			The <c>REPLACED_BY</c> variable contains the single version
+			The <c>REPLACED_BY_VERSION</c> variable contains the single version
 			(<c>PVR</c>) of this package that is replacing us, if we are being
 			uninstalled as part of an install, or an empty string otherwise.
 			It is valid in <c>pkg_prerm</c> and <c>pkg_postrm</c>.


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2013-04-30 12:58 Fabian Groffen
  0 siblings, 0 replies; 34+ messages in thread
From: Fabian Groffen @ 2013-04-30 12:58 UTC (permalink / raw
  To: gentoo-commits

commit:     645a16f5ba91e0cb1ee013a5f252c2eef9baf811
Author:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 30 12:58:11 2013 +0000
Commit:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
CommitDate: Tue Apr 30 12:58:11 2013 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/devmanual.git;a=commit;h=645a16f5

Encourage usage of latest EAPI, bug #464250

---
 ebuild-writing/eapi/text.xml |   13 +++++++++----
 1 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index be31b36..1ee4026 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -33,8 +33,8 @@ can be printed out, consulted for reference and is available
 as <c>app-doc/pms</c> in the main tree.
 </important>
 <p>
-If EAPI is undefined in an ebuild, then EAPI=0 is selected. If you want to override
-the EAPI variable, you have to specify it at the top of the ebuild:
+If EAPI is undefined in an ebuild, then EAPI=0 is selected.  You should
+set the EAPI variable, by specifying it at the top of the ebuild:
 </p>
 
 <note>
@@ -42,11 +42,11 @@ Most developers prefer to set the EAPI version without quotes. However, the PMS
 </note>
 
 <codesample lang="ebuild">
-# Copyright 1999-2010 Gentoo Foundation
+# Copyright 1999-2013 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Header: $
 
-EAPI=1
+EAPI=5
 inherit eutils
 
 </codesample>
@@ -56,6 +56,11 @@ EAPI must only be defined in ebuild files, not eclasses. (eclasses may have
 EAPI-conditional code)
 </important>
 
+<p>
+When writing new ebuilds developers can choose whathever EAPI they think
+is the best.  Using the features of the latest EAPI is encouraged.
+</p>
+
 </body>
 </section>
 


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2013-01-21 17:27 Pacho Ramos
  0 siblings, 0 replies; 34+ messages in thread
From: Pacho Ramos @ 2013-01-21 17:27 UTC (permalink / raw
  To: gentoo-commits

commit:     1247c4073c8a29984cafcdcd1b97644e7b3d4a24
Author:     Pacho Ramos <pachoramos <AT> gmail <DOT> com>
AuthorDate: Mon Jan 21 17:26:51 2013 +0000
Commit:     Pacho Ramos <pacho <AT> gentoo <DOT> org>
CommitDate: Mon Jan 21 17:26:51 2013 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/devmanual.git;a=commit;h=1247c407

Fix previous commit

---
 ebuild-writing/eapi/text.xml |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index d738ab8..be31b36 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -5,7 +5,7 @@
 
 <body>
 <p>
-The Package Manager Specification (PMS) is a community-driven standardization
+The Package Manager Specification (PMS) is a standardization
 effort to ensure that the ebuild file format, the ebuild repository format
 (of which the portage tree is Gentoo's main incarnation) as well as behavior
 of the package managers interacting with these ebuilds is properly written


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2013-01-21  8:18 Pacho Ramos
  0 siblings, 0 replies; 34+ messages in thread
From: Pacho Ramos @ 2013-01-21  8:18 UTC (permalink / raw
  To: gentoo-commits

commit:     f298dd413c0783becb8e83197f8427a3731d95e1
Author:     Pacho Ramos <pachoramos <AT> gmail <DOT> com>
AuthorDate: Sun Jan 20 07:25:47 2013 +0000
Commit:     Pacho Ramos <pacho <AT> gentoo <DOT> org>
CommitDate: Sun Jan 20 22:35:20 2013 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/devmanual.git;a=commit;h=f298dd41

Provide proper descriptions for PMS and EAPI concepts, bug #453058

---
 ebuild-writing/eapi/text.xml |   15 +++++++++++++++
 1 files changed, 15 insertions(+), 0 deletions(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index aadce0d..d738ab8 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -5,6 +5,21 @@
 
 <body>
 <p>
+The Package Manager Specification (PMS) is a community-driven standardization
+effort to ensure that the ebuild file format, the ebuild repository format
+(of which the portage tree is Gentoo's main incarnation) as well as behavior
+of the package managers interacting with these ebuilds is properly written
+down and agreed upon.
+</p>
+
+<p>
+EAPI is a version defined in ebuilds and other package manager related files
+which inform the package manager about the file syntax and content. It is,
+in effect, the version of the package manager specification (PMS) that the
+file adheres to.
+</p>
+
+<p>
 This section provides usage and descriptions of the different EAPIs.
 </p>
 


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2012-11-17 18:59 Markos Chandras
  0 siblings, 0 replies; 34+ messages in thread
From: Markos Chandras @ 2012-11-17 18:59 UTC (permalink / raw
  To: gentoo-commits

commit:     f063528ad01299befddeb8adbe225b3b3751d95b
Author:     Markos Chandras <hwoarang <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 17 14:46:16 2012 +0000
Commit:     Markos Chandras <hwoarang <AT> gentoo <DOT> org>
CommitDate: Sat Nov 17 14:46:16 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/devmanual.git;a=commit;h=f063528a

eapi: Drop quotes from EAPI 1

---
 ebuild-writing/eapi/text.xml |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index 347ad0b..9fe1cbb 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -45,7 +45,7 @@ EAPI-conditional code)
 </section>
 
 <section>
-<title>EAPI="1"</title>
+<title>EAPI=1</title>
 <body>
 
 <ul>


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2012-11-17 18:59 Markos Chandras
  0 siblings, 0 replies; 34+ messages in thread
From: Markos Chandras @ 2012-11-17 18:59 UTC (permalink / raw
  To: gentoo-commits

commit:     e5d551695c76d53be869feaf24bed924eee0d025
Author:     Markos Chandras <hwoarang <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 17 15:22:30 2012 +0000
Commit:     Markos Chandras <hwoarang <AT> gentoo <DOT> org>
CommitDate: Sat Nov 17 18:58:18 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/devmanual.git;a=commit;h=e5d55169

eapi: Add EAPI 5 information. Bug #438338

---
 ebuild-writing/eapi/text.xml |  131 ++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 131 insertions(+), 0 deletions(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index 9fe1cbb..a871067 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -683,6 +683,137 @@ REQUIRED_USE="|| ( foo bar baz )"
 </body>
 </section>
 
+<section>
+<title>EAPI=5</title>
+<body>
+
+<subsection>
+<title>Metadata</title>
+<body>
+<ul>
+	<li>
+		<p><b>REQUIRED_USE supports new at-most-one-of operator</b></p>
+		<p>
+		The new <b>at-most-one-of</b> operator consists of the string <c>'??'</c>, and is satisfied if zero or one (but no more) of its child elements is matched.
+		</p>
+	</li>
+	<li>
+		<p><b>SLOT supports optional "sub-slot" part</b></p>
+		<p>
+		The <c>SLOT</c> variable may contain an optional <b>sub-slot</b> part that follows the regular slot and is delimited by a <c>/</c> character. The sub-slot must be a valid slot name. The sub-slot is used to represent cases in which an upgrade to a new version of a package with a different sub-slot may require dependent packages to be rebuilt. When the sub-slot part is omitted from the SLOT definition, the package is considered to have an implicit sub-slot which is equal to the regular slot.
+		</p>
+	</li>
+	<li>
+		<p><b>Dependency atom slot operators</b></p>
+		<p>
+		A slot dependency may contain an optional sub-slot part that follows the regular slot and is delimited by a <c>/</c> character. An operator slot dependency consists of a colon followed by one of the following operators:
+		</p>
+		<ul>
+			<li>
+			<c>*</c> Indicates that any slot value is acceptable. In addition, for runtime dependencies, indicates that the package will not break if the matched package is uninstalled and replaced by a different matching package in a different slot.
+			</li>
+			<li>
+			<c>=</c> Indicates that any slot value is acceptable. In addition, for runtime dependencies, indicates that the package will break unless a matching package with slot and sub-slot equal to the slot and sub-slot of the best installed version at the time the package was installed is available.
+			</li>
+			<li>
+			<c>slot=</c> Indicates that only a specific slot value is acceptable, and otherwise behaves identically to the plain equals slot operator.
+			</li>
+		</ul>
+	</li>
+</ul>
+</body>
+</subsection>
+
+<subsection>
+<title>Profiles</title>
+<body>
+<ul>
+	<li>
+		<p><b>Profile stable USE forcing and masking</b></p>
+		<p>
+		In profile directories with an EAPI supporting stable masking, new USE configuration files are supported: <c>use.stable.mask</c>, <c>use.stable.force</c>, <c>package.use.stable.mask</c> and <c>package.use.stable.force</c>. These files behave similarly to previously supported USE configuration files, except that they only influence packages that are merged due to a stable keyword.
+		</p>
+	</li>
+</ul>
+</body>
+</subsection>
+
+<subsection>
+<title>Helpers</title>
+<body>
+<ul>
+	<li>
+		<p><b>econf adds --disable-silent-rules</b></p>
+		<p>
+		This option will automatically be passed if <c>--disable-silent-rules</c> occurs in the output of <c>configure --help</c>.
+		</p>
+	</li>
+	<li>
+		<p><b>new* commands can read from standard input</b></p>
+		<p>
+		Standard input is read when the first parameter is <c>-</c> (a hyphen).
+		</p>
+	</li>
+	<li>
+		<p><b>New option --host-root for {has,best}_version</b></p>
+		<p>
+		This option <c>--host-root</c> will cause the query to apply to the host root instead of ROOT.
+		</p>
+	</li>
+	<li>
+		<p><b>New doheader helper function</b></p>
+		<p>
+		Installs the given header files into <c>/usr/include/</c>, by default with file mode <c>0644</c>. This can be overridden by setting <c>INSOPTIONS</c> with the <c>insopts</c> function.
+		</p>
+	</li>
+	<li>
+		<p><b>New usex helper function</b></p>
+		<p>
+		<!-- We probably need an example here -->
+		<pre>
+USAGE: usex &#9001;USE flag&#9002; [true output] [false output] [true suffix] [false suffix]
+DESCRIPTION:
+If USE flag is set, echo [true output][true suffix] (defaults to "yes"),
+ otherwise echo [false output][false suffix] (defaults to "no").
+		</pre>
+		</p>
+	</li>
+</ul>
+</body>
+</subsection>
+
+<subsection>
+<title>Phases</title>
+<body>
+<ul>
+	<li>
+		<p><b>src_test supports parallel tests</b></p>
+		<p>
+		Unlike older EAPIs, the default <c>src_test</c> implementation will not pass the -j1 option to emake.
+		</p>
+	</li>
+</ul>
+</body>
+</subsection>
+
+<subsection>
+<title>Variables</title>
+<body>
+<ul>
+	<li>
+		<p><b>EBUILD_PHASE_FUNC</b></p>
+		<p>
+		During execution of an ebuild phase function (such as <c>pkg_setup</c> or <c>src_unpack</c>),
+		the <c>EBUILD_PHASE_FUNC</c> variable will contain the name of the phase function that is currently executing.
+		</p>
+	</li>
+</ul>
+</body>
+</subsection>
+
+</body>
+</section>
+
 </body>
 </chapter>
 </guide>


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2012-11-02 17:53 Markos Chandras
  0 siblings, 0 replies; 34+ messages in thread
From: Markos Chandras @ 2012-11-02 17:53 UTC (permalink / raw
  To: gentoo-commits

commit:     7ae9205793e707857742df05ae3bd759d88cf095
Author:     Alexandre Rostovtsev <tetromino <AT> gmail <DOT> com>
AuthorDate: Mon May 30 19:19:50 2011 +0000
Commit:     Markos Chandras <hwoarang <AT> gentoo <DOT> org>
CommitDate: Fri Nov  2 17:53:06 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/devmanual.git;a=commit;h=7ae92057

Properly document the DOCS variable in ebuild-writing/eapi (bug 369383)

---
 ebuild-writing/eapi/text.xml |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index 38b9117..347ad0b 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -655,6 +655,15 @@ REQUIRED_USE="|| ( foo bar baz )"
 		</p>
 	</li>
 	<li>
+		<p><b>DOCS</b></p>
+		<p>
+			The <c>DOCS</c> variable is an array or whitespace-separated list
+			of documentation files for the default <c>src_install</c> function
+			to install using <c>dodoc</c>. If undefined, a reasonable default
+			list is used. See the default <c>src_install</c> function above.
+		</p>
+	</li>
+	<li>
 		<p><b>AA and KV variables are gone</b></p>
 		<p>
 			The <c>AA</c> and <c>KV</c> variables are no longer set in EAPI=4.


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2012-08-31 21:18 Markos Chandras
  0 siblings, 0 replies; 34+ messages in thread
From: Markos Chandras @ 2012-08-31 21:18 UTC (permalink / raw
  To: gentoo-commits

commit:     e1d4dcd04ea940cee74e9c9d907b615620698278
Author:     Markos Chandras <hwoarang <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 31 21:17:59 2012 +0000
Commit:     Markos Chandras <hwoarang <AT> gentoo <DOT> org>
CommitDate: Fri Aug 31 21:17:59 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/devmanual.git;a=commit;h=e1d4dcd0

ebuild-writing/eapi: Add case for selecting at least one use flag

---
 ebuild-writing/eapi/text.xml |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index 4ab2789..9d7696b 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -590,6 +590,14 @@ REQUIRED_USE="^^ ( foo bar baz )"
 			While an XOR could be formed from usual <c>DEPEND</c> syntax, a
 			specific <c>^^</c> operator has been added for this case.
 		</p>
+		<p>
+			Finally, to state "at least one of <c>foo</c>, <c>bar</c>, or
+			<c>baz</c> must be set":
+		</p>
+		<codesample lang="ebuild">
+REQUIRED_USE="|| ( foo bar baz )"
+		</codesample>
+
 		<important>
 			See section
 			<uri link="::general-concepts/use-flags/#conflicting-use-flags" />


^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2011-08-24 20:13 Markos Chandras
  0 siblings, 0 replies; 34+ messages in thread
From: Markos Chandras @ 2011-08-24 20:13 UTC (permalink / raw
  To: gentoo-commits

commit:     00977c1e18c8938b973429447dd4dfca588849de
Author:     Markos Chandras <hwoarang <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 24 20:10:11 2011 +0000
Commit:     Markos Chandras <hwoarang <AT> gentoo <DOT> org>
CommitDate: Wed Aug 24 20:10:11 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/devmanual.git;a=commit;h=00977c1e

define variables in global scope since env in pkg_pretend is not
preserved

---
 ebuild-writing/eapi/text.xml |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index 12947c1..4ab2789 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -498,12 +498,13 @@ EAPI="4"
 inherit linux-info
 ...
 
+CONFIG_CHECK="FUSE_FS"
+ERROR_FUSE_FS="this is an unrealistic testcase..."
+
 pkg_pretend() {
 	if use kernel_linux ; then
 		if [[ -e "${ROOT}"/usr/src/linux/.config ]] ; then
 			if kernel_is lt 2 6 30 ; then
-				CONFIG_CHECK="FUSE_FS"
-				FUSE_FS_ERROR="this is an unrealistic testcase..."
 				check_extra_config
 			fi
 		fi



^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2011-03-09 16:42 Jeremy Olexa
  0 siblings, 0 replies; 34+ messages in thread
From: Jeremy Olexa @ 2011-03-09 16:42 UTC (permalink / raw
  To: gentoo-commits

commit:     d7510bbf96280255ad8562d48599a6c63b706803
Author:     Jeremy Olexa <darkside <AT> gentoo <DOT> org>
AuthorDate: Wed Mar  9 16:39:13 2011 +0000
Commit:     Jeremy Olexa <darkside <AT> gentoo <DOT> org>
CommitDate: Wed Mar  9 16:39:13 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/devmanual.git;a=commit;h=d7510bbf

Remove requirement that xz-utils must be installed

---
 ebuild-writing/eapi/text.xml |    3 +--
 1 files changed, 1 insertions(+), 2 deletions(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index 39fc83c..48ad1a9 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -322,8 +322,7 @@ src_compile() {
 		<p><b>unpack supports .xz and .tar.xz</b></p>
 		<p>
 			The <c>unpack</c> command supports xz-archives and xz-compressed tar
-			files. Please note that the ebuild must ensure that
-			<c>app-arch/xz-utils</c> is installed.
+			files.
 		</p>
 	</li>
 </ul>



^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2011-02-13  8:23 Torsten Veller
  0 siblings, 0 replies; 34+ messages in thread
From: Torsten Veller @ 2011-02-13  8:23 UTC (permalink / raw
  To: gentoo-commits

commit:     7cb671f73249a9b50e31f4a1e3b759303aa0e1aa
Author:     Torsten Veller <tove <AT> gentoo <DOT> org>
AuthorDate: Sun Feb 13 08:19:55 2011 +0000
Commit:     Torsten Veller <tove <AT> gentoo <DOT> org>
CommitDate: Sun Feb 13 08:19:55 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/devmanual.git;a=commit;h=7cb671f7

Slot operator dependencies are not in EAPI 4.

https://bugs.gentoo.org/273625
http://git.overlays.gentoo.org/gitweb/?p=proj/pms.git;a=commitdiff;h=409fccc10861c361f37a959195d7581a5c376dd9

---
 ebuild-writing/eapi/text.xml |   17 -----------------
 1 files changed, 0 insertions(+), 17 deletions(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index 5177891..39fc83c 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -448,23 +448,6 @@ src_install() {
 <body>
 <ul>
 	<li>
-		<p><b>slot operator dependencies</b></p>
-		<p>
-			An operator slot dependency contains of a colon followed by either a
-			'<c>*</c>' or '<c>=</c>':
-			<ul>
-				<li><c>*</c> means that any slot of the given package is
-				acceptable. In addition, for runtime dependencies, the
-				package will not break if the given package is replaced by
-				a different slot.</li>
-				<li><c>=</c> means that any slot of the given package is
-				acceptable. Unlike (<c>*</c>), the package will break for
-				runtime dependencies if the slot of the given package and
-				the current package do not match.</li>
-			</ul>
-		</p>
-	</li>
-	<li>
 		<p><b>use dependencies default</b></p>
 		<p>
 			In addition to the use-deps specified in EAPI=2, a <c>(+)</c> or



^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2011-02-04 20:41 darkside
  0 siblings, 0 replies; 34+ messages in thread
From: darkside @ 2011-02-04 20:41 UTC (permalink / raw
  To: gentoo-commits

commit:     061477f9a15522f245ea4fd28a0853153b67beac
Author:     Jeremy Olexa <darkside <AT> gentoo <DOT> org>
AuthorDate: Fri Feb  4 20:41:18 2011 +0000
Commit:     Jeremy Olexa <darkside <AT> gentoo <DOT> org>
CommitDate: Fri Feb  4 20:41:18 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/devmanual.git;a=commit;h=061477f9

fix typo

---
 ebuild-writing/eapi/text.xml |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index 0a63c5b..5177891 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -322,7 +322,7 @@ src_compile() {
 		<p><b>unpack supports .xz and .tar.xz</b></p>
 		<p>
 			The <c>unpack</c> command supports xz-archives and xz-compressed tar
-			files. Please note that the ebuilds must ensure that
+			files. Please note that the ebuild must ensure that
 			<c>app-arch/xz-utils</c> is installed.
 		</p>
 	</li>



^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2011-02-04 20:37 darkside
  0 siblings, 0 replies; 34+ messages in thread
From: darkside @ 2011-02-04 20:37 UTC (permalink / raw
  To: gentoo-commits

commit:     3924937295cb1098b6ca3d20337c33b6b71d86f3
Author:     Jeremy Olexa <darkside <AT> gentoo <DOT> org>
AuthorDate: Fri Feb  4 18:20:49 2011 +0000
Commit:     Jeremy Olexa <darkside <AT> gentoo <DOT> org>
CommitDate: Fri Feb  4 18:20:49 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/devmanual.git;a=commit;h=%(rev)

typo

---
 ebuild-writing/eapi/text.xml |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index 97dc48f..0a63c5b 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -323,7 +323,7 @@ src_compile() {
 		<p>
 			The <c>unpack</c> command supports xz-archives and xz-compressed tar
 			files. Please note that the ebuilds must ensure that
-			<c>app-arch/xz-utils</c> are installed.
+			<c>app-arch/xz-utils</c> is installed.
 		</p>
 	</li>
 </ul>



^ permalink raw reply related	[flat|nested] 34+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
@ 2011-02-04 17:02 darkside
  0 siblings, 0 replies; 34+ messages in thread
From: darkside @ 2011-02-04 17:02 UTC (permalink / raw
  To: gentoo-commits

commit:     b9805301fc71fe9c03497bbfa6bf054cf10b6273
Author:     Jeremy Olexa <darkside <AT> gentoo <DOT> org>
AuthorDate: Fri Feb  4 17:01:18 2011 +0000
Commit:     Jeremy Olexa <darkside <AT> gentoo <DOT> org>
CommitDate: Fri Feb  4 17:01:18 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/devmanual.git;a=commit;h=b9805301fc71fe9c03497bbfa6bf054cf10b6273

EAPI: Move incorrect .xz info to EAPI3

---
 ebuild-writing/eapi/text.xml |   16 ++++------------
 1 files changed, 4 insertions(+), 12 deletions(-)

diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml
index 5718314..97dc48f 100644
--- a/ebuild-writing/eapi/text.xml
+++ b/ebuild-writing/eapi/text.xml
@@ -319,11 +319,11 @@ src_compile() {
 		</p>
 	</li>
 	<li>
-		<p><b>src_unpack() .tar.xz support</b></p>
+		<p><b>unpack supports .xz and .tar.xz</b></p>
 		<p>
-			Support for the <c>.tar.xz</c> format from upstream tarballs.
-			unpack() in src_unpack() will only operate on a .tar.xz tarball if
-			the ebuild is EAPI3 aware.
+			The <c>unpack</c> command supports xz-archives and xz-compressed tar
+			files. Please note that the ebuilds must ensure that
+			<c>app-arch/xz-utils</c> are installed.
 		</p>
 	</li>
 </ul>
@@ -396,14 +396,6 @@ src_install() {
 		</p>
 	</li>
 	<li>
-		<p><b>unpack supports .xz and .tar.xz</b></p>
-		<p>
-			The <c>unpack</c> command supports xz-archives and xz-compressed tar
-			files. Please note that the ebuilds must ensure that
-			<c>app-arch/xz-utils</c> are installed.
-		</p>
-	</li>
-	<li>
 		<p><b>econf adds --disable-dependency-tracking</b></p>
 		<p>
 			Within EAPI=4, <c>econf</c> adds



^ permalink raw reply related	[flat|nested] 34+ messages in thread

end of thread, other threads:[~2024-07-05 20:15 UTC | newest]

Thread overview: 34+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-10-30 19:01 [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/ Markos Chandras
  -- strict thread matches above, loose matches on Subject: below --
2024-07-05 20:15 Ulrich Müller
2022-11-09 12:01 Ulrich Müller
2022-02-25 19:04 Sam James
2022-02-22  7:11 Sam James
2022-02-22  7:11 Sam James
2020-05-09 10:41 Ulrich Müller
2020-01-23  7:47 Ulrich Müller
2020-01-09  7:58 Ulrich Müller
2018-10-24 13:01 Brian Evans
2017-09-25  4:27 Göktürk Yüksek
2017-01-25  0:55 Göktürk Yüksek
2016-12-08  4:07 Göktürk Yüksek
2016-09-08 21:23 Mike Gilbert
2016-04-30  3:09 Göktürk Yüksek
2016-03-24 15:10 Ulrich Müller
2016-02-15 18:00 Ulrich Müller
2016-02-15 12:10 Ulrich Müller
2016-02-15 12:10 Ulrich Müller
2015-11-22 12:37 Ulrich Müller
2014-06-08 17:39 Mike Gilbert
2013-04-30 12:58 Fabian Groffen
2013-01-21 17:27 Pacho Ramos
2013-01-21  8:18 Pacho Ramos
2012-11-17 18:59 Markos Chandras
2012-11-17 18:59 Markos Chandras
2012-11-02 17:53 Markos Chandras
2012-08-31 21:18 Markos Chandras
2011-08-24 20:13 Markos Chandras
2011-03-09 16:42 Jeremy Olexa
2011-02-13  8:23 Torsten Veller
2011-02-04 20:41 darkside
2011-02-04 20:37 darkside
2011-02-04 17:02 darkside

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox