Gentoo Archives: gentoo-commits

From: Brian Dolbec <dolsen@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/catalyst:catalyst_use commit in: catalyst/targets/, targets/stage2/, catalyst/base/, targets/stage1/
Date: Tue, 07 Mar 2017 17:21:35
Message-Id: 1488906689.d2f329b8c64db43ffe617d2d85e17e338548e3df.dolsen@gentoo
1 commit: d2f329b8c64db43ffe617d2d85e17e338548e3df
2 Author: Jorge Manuel B. S. Vicetto (jmbsvicetto) <jmbsvicetto <AT> gentoo <DOT> org>
3 AuthorDate: Tue Mar 7 17:10:51 2017 +0000
4 Commit: Brian Dolbec <dolsen <AT> gentoo <DOT> org>
5 CommitDate: Tue Mar 7 17:11:29 2017 +0000
6 URL: https://gitweb.gentoo.org/proj/catalyst.git/commit/?id=d2f329b8
7
8 Add initial CATALYST_USE support
9
10 Signed-off-by: Jorge Manuel B. S. Vicetto (jmbsvicetto) <jmbsvicetto <AT> gentoo.org>
11
12 catalyst/base/stagebase.py | 13 ++++++++++++-
13 catalyst/targets/grp.py | 7 -------
14 catalyst/targets/livecd_stage1.py | 14 +++++---------
15 targets/stage1/stage1-chroot.sh | 16 ++++++++++++----
16 targets/stage2/stage2-chroot.sh | 16 ----------------
17 5 files changed, 29 insertions(+), 37 deletions(-)
18
19 diff --git a/catalyst/base/stagebase.py b/catalyst/base/stagebase.py
20 index 78fd67f..0d36e33 100644
21 --- a/catalyst/base/stagebase.py
22 +++ b/catalyst/base/stagebase.py
23 @@ -179,6 +179,7 @@ class StageBase(TargetBase, ClearBase, GenBase):
24 self.set_controller_file()
25 self.set_default_action_sequence()
26 self.set_use()
27 + self.set_catalyst_use()
28 self.set_cleanables()
29 self.set_iso_volume_id()
30 self.set_build_kernel_vars()
31 @@ -549,9 +550,19 @@ class StageBase(TargetBase, ClearBase, GenBase):
32 if isinstance(self.settings['use'], str):
33 self.settings["use"] = self.settings["use"].split()
34
35 + def set_catalyst_use(self):
36 + if self.settings["spec_prefix"] + "/catalyst_use" in self.settings:
37 + self.settings["catalyst_use"] = \
38 + self.settings[self.settings["spec_prefix"]+"/catalyst_use"]
39 + del self.settings[self.settings["spec_prefix"]+"/catalyst_use"]
40 + if "catalyst_use" not in self.settings:
41 + self.settings["catalyst_use"] = ""
42 + if isinstance(self.settings['catalyst_use'], str):
43 + self.settings["catalyst_use"] = self.settings["catalyst_use"].split()
44 +
45 # Force bindist when options ask for it
46 if "BINDIST" in self.settings:
47 - self.settings["use"].append("bindist")
48 + self.settings["catalyst_use"].append("bindist")
49
50 def set_stage_path(self):
51 self.settings["stage_path"] = normpath(self.settings["chroot_path"])
52
53 diff --git a/catalyst/targets/grp.py b/catalyst/targets/grp.py
54 index 049bc55..d47654d 100644
55 --- a/catalyst/targets/grp.py
56 +++ b/catalyst/targets/grp.py
57 @@ -52,13 +52,6 @@ class grp(StageBase):
58 raise CatalystError("GRP build aborting due to error.",
59 print_traceback=True)
60
61 - def set_use(self):
62 - StageBase.set_use(self)
63 - if "use" in self.settings:
64 - self.settings["use"].append("bindist")
65 - else:
66 - self.settings["use"]=["bindist"]
67 -
68 def set_mounts(self):
69 self.mounts.append("/tmp/grp")
70 self.mountmap["/tmp/grp"]=self.settings["target_path"]
71
72 diff --git a/catalyst/targets/livecd_stage1.py b/catalyst/targets/livecd_stage1.py
73 index eea4312..c0a664f 100644
74 --- a/catalyst/targets/livecd_stage1.py
75 +++ b/catalyst/targets/livecd_stage1.py
76 @@ -29,16 +29,12 @@ class livecd_stage1(StageBase):
77 def set_spec_prefix(self):
78 self.settings["spec_prefix"]="livecd"
79
80 - def set_use(self):
81 - StageBase.set_use(self)
82 - if "use" in self.settings:
83 - self.settings["use"].append("livecd")
84 - if "BINDIST" in self.settings:
85 - self.settings["use"].append("bindist")
86 + def set_catalyst_use(self):
87 + StageBase.set_catalyst_use(self)
88 + if "catalyst_use" in self.settings:
89 + self.settings["catalyst_use"].append("livecd")
90 else:
91 - self.settings["use"]=["livecd"]
92 - if "BINDIST" in self.settings:
93 - self.settings["use"].append("bindist")
94 + self.settings["catalyst_use"] = ["livecd"]
95
96 def set_packages(self):
97 StageBase.set_packages(self)
98
99 diff --git a/targets/stage1/stage1-chroot.sh b/targets/stage1/stage1-chroot.sh
100 index fbda84b..f243866 100755
101 --- a/targets/stage1/stage1-chroot.sh
102 +++ b/targets/stage1/stage1-chroot.sh
103 @@ -7,7 +7,7 @@ export clst_buildpkgs="$(/tmp/build.py)"
104
105 # Setup our environment
106 [ -n "${clst_BINDIST}" ] && BINDIST="bindist"
107 -BOOTSTRAP_USE="$(portageq envvar BOOTSTRAP_USE) ${BINDIST}"
108 +BOOTSTRAP_USE="$(portageq envvar BOOTSTRAP_USE)"
109
110 FEATURES="${clst_myfeatures} nodoc noman noinfo -news"
111
112 @@ -23,6 +23,10 @@ fi
113 ## Setup seed pkgmgr to ensure latest
114 clst_root_path=/ setup_pkgmgr "build"
115
116 +# We need to ensure the base stage3 has USE="bindist"
117 +# if BINDIST is set to avoid issues with openssl / openssh
118 +[ -e ${clst_make_conf} ] && echo "USE=\"${USE} ${BINDIST}\"" >> ${clst_make_conf}
119 +
120 # Update stage3
121 if [ -n "${clst_update_seed}" ]; then
122 if [ "${clst_update_seed}" == "yes" ]; then
123 @@ -43,6 +47,9 @@ else
124 echo "Skipping seed stage update..."
125 fi
126
127 +# Clear USE
128 +[ -e ${clst_make_conf} ] && sed -i -e "USE=\"s/${BINDIST}//" ${clst_make_conf}
129 +
130 make_destpath /tmp/stage1root
131
132 ## START BUILD
133 @@ -53,7 +60,8 @@ sed -i "/USE=\"${USE} -build\"/d" ${clst_make_conf}
134
135 # Now, we install our packages
136 if [ -e ${clst_make_conf} ]; then
137 - echo "USE=\"-* build ${BOOTSTRAP_USE} ${clst_HOSTUSE}\"" >> ${clst_make_conf}
138 + echo "CATALYST_USE=\"-* build ${BINDIST} ${clst_CATALYST_USE}\"" >> ${clst_make_conf}
139 + echo "USE=\"\${CATALYST_USE} ${USE} \${BOOTSTRAP_USE} ${clst_HOSTUSE}\"" >> ${clst_make_conf}
140 for useexpand in ${clst_HOSTUSEEXPAND}; do
141 x="clst_${useexpand}"
142 echo "${useexpand}=\"${!x}\"" \
143 @@ -62,8 +70,8 @@ if [ -e ${clst_make_conf} ]; then
144 fi
145
146 run_merge "--oneshot ${clst_buildpkgs}"
147 -sed -i "/USE=\"-* build ${BOOTSTRAP_USE} ${clst_HOSTUSE}\"/d" \
148 - ${clst_make_conf}
149 +
150 +# Why are we removing these? Don't we need them for final make.conf?
151 for useexpand in ${clst_HOSTUSEEXPAND}; do
152 x="clst_${useexpand}"
153 sed -i "/${useexpand}=\"${!x}\"/d" \
154
155 diff --git a/targets/stage2/stage2-chroot.sh b/targets/stage2/stage2-chroot.sh
156 index 38dfea3..5fac858 100755
157 --- a/targets/stage2/stage2-chroot.sh
158 +++ b/targets/stage2/stage2-chroot.sh
159 @@ -5,21 +5,5 @@ source /tmp/chroot-functions.sh
160 # Setup the environment
161 export FEATURES="${clst_myfeatures} nodoc noman noinfo -news"
162
163 -# Set bindist USE flag if clst_BINDIST is set
164 -# The bindist functions have been taken from support/chroot-functions.sh
165 -if [ -e "${clst_make_conf}" ] && [ -n "${clst_BINDIST}" ]; then
166 - if grep -q ^USE "${clst_make_conf}"; then
167 - echo "USE=\"\${USE} bindist\"" >> "${clst_make_conf}"
168 - else
169 - echo "USE=\"bindist\"" >> "${clst_make_conf}"
170 - fi
171 -fi
172 -
173 -
174 -
175 ## START BUILD
176 ${clst_repo_basedir}/${clst_repo_name}/scripts/bootstrap.sh ${bootstrap_opts} || exit 1
177 -
178 -# Clean-up USE again
179 -sed -i "/USE=\"\${USE} bindist\"/d" "${clst_make_conf}"
180 -sed -i "/USE=\"bindist\"/d" "${clst_make_conf}"