1 |
Author: zmedico |
2 |
Date: 2009-04-30 07:00:35 +0000 (Thu, 30 Apr 2009) |
3 |
New Revision: 13471 |
4 |
|
5 |
Modified: |
6 |
main/branches/2.1.6/bin/ebuild.sh |
7 |
Log: |
8 |
- Move DEFINED_PHASES code into _source_ebuild() and add it to the list of |
9 |
readonly variables. |
10 |
- Save DEFINED_PHASES in the vdb entries, as requested by lxnay. (trunk r13300) |
11 |
|
12 |
Modified: main/branches/2.1.6/bin/ebuild.sh |
13 |
=================================================================== |
14 |
--- main/branches/2.1.6/bin/ebuild.sh 2009-04-30 07:00:23 UTC (rev 13470) |
15 |
+++ main/branches/2.1.6/bin/ebuild.sh 2009-04-30 07:00:35 UTC (rev 13471) |
16 |
@@ -1008,7 +1008,7 @@ |
17 |
local f x |
18 |
IFS=$' \t\n\r' |
19 |
for f in ASFLAGS CATEGORY CBUILD CC CFLAGS CHOST CTARGET CXX \ |
20 |
- CXXFLAGS DEPEND EXTRA_ECONF EXTRA_EINSTALL EXTRA_MAKE \ |
21 |
+ CXXFLAGS DEFINED_PHASES DEPEND EXTRA_ECONF EXTRA_EINSTALL EXTRA_MAKE \ |
22 |
FEATURES INHERITED IUSE LDFLAGS LIBCFLAGS LIBCXXFLAGS \ |
23 |
LICENSE PDEPEND PF PKGUSE PROPERTIES PROVIDE RDEPEND RESTRICT SLOT \ |
24 |
KEYWORDS HOMEPAGE SRC_URI DESCRIPTION; do |
25 |
@@ -1529,11 +1529,6 @@ |
26 |
PORTAGE_BASHRCS_SOURCED=1 |
27 |
local x |
28 |
|
29 |
- if [[ -n $EBUILD_PHASE && -n $EAPI ]] ; then |
30 |
- local phase_func=$(_ebuild_arg_to_phase "$EAPI" $EBUILD_PHASE) |
31 |
- [[ -n $phase_func ]] && _ebuild_phase_funcs "$EAPI" $phase_func |
32 |
- fi |
33 |
- |
34 |
local OCC="${CC}" OCXX="${CXX}" |
35 |
|
36 |
if [[ $EBUILD_PHASE != depend ]] ; then |
37 |
@@ -1570,7 +1565,7 @@ |
38 |
# of ebuild.sh will work for pkg_postinst, pkg_prerm, and pkg_postrm |
39 |
# when portage is upgrading itself. |
40 |
|
41 |
-READONLY_EBUILD_METADATA="DEPEND DESCRIPTION |
42 |
+READONLY_EBUILD_METADATA="DEFINED_PHASES DEPEND DESCRIPTION |
43 |
EAPI HOMEPAGE INHERITED IUSE KEYWORDS LICENSE |
44 |
PDEPEND PROVIDE RDEPEND RESTRICT SLOT SRC_URI" |
45 |
|
46 |
@@ -1800,6 +1795,7 @@ |
47 |
unset x y |
48 |
export SANDBOX_ON=${PORTAGE_SANDBOX_ON} |
49 |
unset PORTAGE_SANDBOX_ON |
50 |
+ [[ -n $EAPI ]] || EAPI=0 |
51 |
fi |
52 |
|
53 |
_source_ebuild() { |
54 |
@@ -1839,6 +1835,37 @@ |
55 |
unset ECLASS E_IUSE E_DEPEND E_RDEPEND E_PDEPEND |
56 |
set +f |
57 |
|
58 |
+ [[ -n $EAPI ]] || EAPI=0 |
59 |
+ |
60 |
+ # alphabetically ordered by $EBUILD_PHASE value |
61 |
+ local valid_phases |
62 |
+ case "$EAPI" in |
63 |
+ 0|1) |
64 |
+ valid_phases="src_compile pkg_config pkg_info src_install |
65 |
+ pkg_nofetch pkg_postinst pkg_postrm pkg_preinst pkg_prerm |
66 |
+ pkg_setup src_test src_unpack" |
67 |
+ ;; |
68 |
+ *) |
69 |
+ valid_phases="src_compile pkg_config src_configure pkg_info |
70 |
+ src_install pkg_nofetch pkg_postinst pkg_postrm pkg_preinst |
71 |
+ src_prepare pkg_prerm pkg_setup src_test src_unpack" |
72 |
+ ;; |
73 |
+ esac |
74 |
+ |
75 |
+ DEFINED_PHASES= |
76 |
+ for f in $valid_phases ; do |
77 |
+ if [[ $(type -t $f) = function ]] ; then |
78 |
+ f=${f#pkg_} |
79 |
+ DEFINED_PHASES+=" ${f#src_}" |
80 |
+ fi |
81 |
+ done |
82 |
+ [[ -n $DEFINED_PHASES ]] || DEFINED_PHASES=- |
83 |
+ |
84 |
+ if [[ -n $EBUILD_PHASE && $EBUILD_PHASE != depend ]] ; then |
85 |
+ local phase_func=$(_ebuild_arg_to_phase "$EAPI" "$EBUILD_PHASE") |
86 |
+ [[ -n $phase_func ]] && _ebuild_phase_funcs "$EAPI" "$phase_func" |
87 |
+ fi |
88 |
+ |
89 |
# This needs to be exported since prepstrip is a separate shell script. |
90 |
[[ -n $QA_PRESTRIPPED ]] && export QA_PRESTRIPPED |
91 |
} |
92 |
@@ -1851,10 +1878,6 @@ |
93 |
fi |
94 |
fi |
95 |
|
96 |
-# Set default EAPI if necessary, so that most |
97 |
-# code can simply assume that it's defined. |
98 |
-[[ -n $EAPI ]] || EAPI=0 |
99 |
- |
100 |
# unset USE_EXPAND variables that contain only the special "*" token |
101 |
for x in ${USE_EXPAND} ; do |
102 |
[ "${!x}" == "*" ] && unset ${x} |
103 |
@@ -2047,30 +2070,6 @@ |
104 |
[ -n "${EAPI}" ] || EAPI=0 |
105 |
local eapi=$EAPI |
106 |
|
107 |
- # alphabetically ordered by $EBUILD_PHASE value |
108 |
- local valid_phases |
109 |
- case $eapi in |
110 |
- 0|1) |
111 |
- valid_phases="src_compile pkg_config pkg_info src_install |
112 |
- pkg_nofetch pkg_postinst pkg_postrm pkg_preinst pkg_prerm |
113 |
- pkg_setup src_test src_unpack" |
114 |
- ;; |
115 |
- *) |
116 |
- valid_phases="src_compile pkg_config src_configure pkg_info |
117 |
- src_install pkg_nofetch pkg_postinst pkg_postrm pkg_preinst |
118 |
- src_prepare pkg_prerm pkg_setup src_test src_unpack" |
119 |
- ;; |
120 |
- esac |
121 |
- |
122 |
- DEFINED_PHASES= |
123 |
- for f in $valid_phases ; do |
124 |
- if [[ $(type -t $f) = function ]] ; then |
125 |
- f=${f#pkg_} |
126 |
- DEFINED_PHASES+=" ${f#src_}" |
127 |
- fi |
128 |
- done |
129 |
- [[ -n $DEFINED_PHASES ]] || DEFINED_PHASES=- |
130 |
- |
131 |
if [ -n "${dbkey}" ] ; then |
132 |
> "${dbkey}" |
133 |
for f in ${auxdbkeys} ; do |