public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/catalyst:master commit in: catalyst/arch/, catalyst/, catalyst/base/
@ 2020-04-14 18:29 Matt Turner
  0 siblings, 0 replies; only message in thread
From: Matt Turner @ 2020-04-14 18:29 UTC (permalink / raw
  To: gentoo-commits

commit:     72b60014663fabea91275f627a83c7f5be2e778b
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 12 00:50:19 2020 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Mon Apr 13 20:43:10 2020 +0000
URL:        https://gitweb.gentoo.org/proj/catalyst.git/commit/?id=72b60014

catalyst: Set CHROOT in stagebase

Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 catalyst/arch/powerpc.py   |  7 ++-----
 catalyst/arch/sparc.py     |  7 ++-----
 catalyst/arch/x86.py       |  7 ++-----
 catalyst/base/stagebase.py | 10 ++++++++--
 catalyst/builder.py        |  8 --------
 5 files changed, 14 insertions(+), 25 deletions(-)

diff --git a/catalyst/arch/powerpc.py b/catalyst/arch/powerpc.py
index 0d88cc59..e2f241d3 100644
--- a/catalyst/arch/powerpc.py
+++ b/catalyst/arch/powerpc.py
@@ -1,5 +1,3 @@
-import platform
-
 from catalyst import builder
 
 class generic_ppc(builder.generic):
@@ -7,9 +5,8 @@ class generic_ppc(builder.generic):
 	def __init__(self,myspec):
 		builder.generic.__init__(self,myspec)
 		self.settings["CHOST"]="powerpc-unknown-linux-gnu"
-		if platform.machine() == 'ppc64':
-			self.setarch('linux32')
-			self.settings["crosscompile"] = False
+		self.settings['setarch_build'] = 'ppc64'
+		self.settings['setarch_arch'] = 'linux32'
 
 class generic_ppc64(builder.generic):
 	"abstract base class for all 64-bit powerpc builders"

diff --git a/catalyst/arch/sparc.py b/catalyst/arch/sparc.py
index 782d8916..38a1479e 100644
--- a/catalyst/arch/sparc.py
+++ b/catalyst/arch/sparc.py
@@ -1,14 +1,11 @@
-import platform
-
 from catalyst import builder
 
 class generic_sparc(builder.generic):
 	"abstract base class for all sparc builders"
 	def __init__(self,myspec):
 		builder.generic.__init__(self,myspec)
-		if platform.machine() == 'sparc64':
-			self.setarch('linux32')
-			self.settings["crosscompile"] = False
+		self.settings['setarch_build'] = 'sparc64'
+		self.settings['setarch_arch'] = 'linux32'
 
 class generic_sparc64(builder.generic):
 	"abstract base class for all sparc64 builders"

diff --git a/catalyst/arch/x86.py b/catalyst/arch/x86.py
index 307365dc..751ae769 100644
--- a/catalyst/arch/x86.py
+++ b/catalyst/arch/x86.py
@@ -1,14 +1,11 @@
-import platform
-
 from catalyst import builder
 
 class generic_x86(builder.generic):
 	"abstract base class for all x86 builders"
 	def __init__(self,myspec):
 		builder.generic.__init__(self,myspec)
-		if platform.machine() == 'x86_64':
-			self.setarch('linux32')
-			self.settings["crosscompile"] = False
+		self.settings['setarch_build'] = 'x86_64'
+		self.settings['setarch_arch'] = 'linux32'
 
 class arch_x86(generic_x86):
 	"builder class for generic x86 (386+)"

diff --git a/catalyst/base/stagebase.py b/catalyst/base/stagebase.py
index d18f28af..d4fafb74 100644
--- a/catalyst/base/stagebase.py
+++ b/catalyst/base/stagebase.py
@@ -136,8 +136,6 @@ class StageBase(TargetBase, ClearBase, GenBase):
 		if buildmachine not in machinemap:
 			raise CatalystError("Unknown build machine type " + buildmachine)
 		self.settings["buildarch"] = machinemap[buildmachine]
-		self.settings["crosscompile"] = (self.settings["hostarch"] != \
-			self.settings["buildarch"])
 
 		# Call arch constructor, pass our settings
 		try:
@@ -149,6 +147,14 @@ class StageBase(TargetBase, ClearBase, GenBase):
 				' %s',
 				self.settings['subarch'], ' '.join(self.subarchmap))
 
+		if 'setarch_arch' in self.settings and platform.machine() == self.settings["setarch_build"]:
+			self.settings["CHROOT"] = f'setarch {self.settings["setarch_arch"]} chroot'
+			self.settings["crosscompile"] = False
+		else:
+			self.settings["CHROOT"] = 'chroot'
+			self.settings["crosscompile"] = \
+				self.settings["hostarch"] != self.settings["buildarch"]
+
 		log.notice('Using target: %s', self.settings['target'])
 		# Print a nice informational message
 		if self.settings["buildarch"] == self.settings["hostarch"]:

diff --git a/catalyst/builder.py b/catalyst/builder.py
index fd8d5eb6..2d139263 100644
--- a/catalyst/builder.py
+++ b/catalyst/builder.py
@@ -1,11 +1,3 @@
 class generic():
 	def __init__(self,myspec):
 		self.settings=myspec
-		self.settings.setdefault('CHROOT', 'chroot')
-
-	def setarch(self, arch):
-		"""Set the chroot wrapper to run through `setarch |arch|`
-
-		Useful for building x86-on-amd64 and such.
-		"""
-		self.settings['CHROOT'] = 'setarch %s %s' % (arch, self.settings['CHROOT'])


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2020-04-14 18:29 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-04-14 18:29 [gentoo-commits] proj/catalyst:master commit in: catalyst/arch/, catalyst/, catalyst/base/ Matt Turner

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