public inbox for gentoo-catalyst@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-catalyst] [PATCH 1/3] arch/ppc.toml: add CHOST based subarches
@ 2020-10-21  4:33 Georgy Yakovlev
  2020-10-21  4:33 ` [gentoo-catalyst] [PATCH 2/3] arch/ppc.toml: don't force -mabi=elfv2 on power subarches Georgy Yakovlev
  2020-10-21  4:33 ` [gentoo-catalyst] [PATCH 3/3] arch/ppc.toml: add power9 subarches Georgy Yakovlev
  0 siblings, 2 replies; 3+ messages in thread
From: Georgy Yakovlev @ 2020-10-21  4:33 UTC (permalink / raw
  To: gentoo-catalyst; +Cc: Georgy Yakovlev

if stage spec sets chost value, code in
catalyst/base/stagebase.py#L76 will derive subarch
value from the frontmost part of CHOST triple.

if such subarch is not defined in toml file, build will fail.

Add generic copy of base subarches defined in CHOST format.

Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org>
---
 arch/ppc.toml | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/arch/ppc.toml b/arch/ppc.toml
index a3db919e..870c7647 100644
--- a/arch/ppc.toml
+++ b/arch/ppc.toml
@@ -46,10 +46,18 @@ USE = [ "altivec", "ibm",]
 COMMON_FLAGS = "-O2 -pipe"
 CHOST = "powerpc64-unknown-linux-gnu"
 
+[ppc64.powerpc64]
+COMMON_FLAGS = "-O2 -pipe"
+CHOST = "powerpc64-unknown-linux-gnu"
+
 [ppc64.ppc64le]
 COMMON_FLAGS = "-O2 -pipe"
 CHOST = "powerpc64le-unknown-linux-gnu"
 
+[ppc64.powerpc64le]
+COMMON_FLAGS = "-O2 -pipe"
+CHOST = "powerpc64le-unknown-linux-gnu"
+
 [ppc.g3]
 CHOST = "powerpc-unknown-linux-gnu"
 COMMON_FLAGS = "-O2 -mcpu=G3 -mtune=G3 -pipe"
@@ -68,3 +76,6 @@ USE = [ "altivec",]
 CHOST = "powerpc-unknown-linux-gnu"
 COMMON_FLAGS = "-O2 -mcpu=powerpc -mtune=powerpc -pipe"
 
+[ppc.powerpc]
+CHOST = "powerpc-unknown-linux-gnu"
+COMMON_FLAGS = "-O2 -mcpu=powerpc -mtune=powerpc -pipe"
-- 
2.29.0



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

* [gentoo-catalyst] [PATCH 2/3] arch/ppc.toml: don't force -mabi=elfv2 on power subarches.
  2020-10-21  4:33 [gentoo-catalyst] [PATCH 1/3] arch/ppc.toml: add CHOST based subarches Georgy Yakovlev
@ 2020-10-21  4:33 ` Georgy Yakovlev
  2020-10-21  4:33 ` [gentoo-catalyst] [PATCH 3/3] arch/ppc.toml: add power9 subarches Georgy Yakovlev
  1 sibling, 0 replies; 3+ messages in thread
From: Georgy Yakovlev @ 2020-10-21  4:33 UTC (permalink / raw
  To: gentoo-catalyst; +Cc: Georgy Yakovlev

-mabi=elfv2 is default on ppc64le in gcc/glibc toolchain for all
powerpc64le-*-linux-gnu CHOSTS, so we don't need to pass it.

forcing -mabi=elfv2 on ppc64(be) is quite risky, as it's not standard
configuration and not officialy supported by glibc at all.
according to glibc upstream it should be a separate ABI port.
Also many apps/tools assume elfv1 on big-endian, and while fixes are
being upstreamed, we've observed breakage in: openssl[asm], nodejs,
ffmpeg and  others.

If we want to ship elfv2 ppc64be stage,
we should define it as separate subarch and strictly put it in experimental.

to my knowledge those subarch definitions are not used by releng yet, so
we will not break anything.

Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org>
---
 arch/ppc.toml | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/arch/ppc.toml b/arch/ppc.toml
index 870c7647..6f74789d 100644
--- a/arch/ppc.toml
+++ b/arch/ppc.toml
@@ -23,22 +23,22 @@ CHOST = "powerpc64-unknown-linux-gnu"
 USE = [ "altivec", "ibm",]
 
 [ppc64.power7]
-COMMON_FLAGS = "-O2 -pipe -mcpu=power7 -mtune=power7 -mabi=elfv2"
+COMMON_FLAGS = "-O2 -pipe -mcpu=power7 -mtune=power7"
 CHOST = "powerpc64-unknown-linux-gnu"
 USE = [ "altivec", "ibm",]
 
 [ppc64.power7le]
-COMMON_FLAGS = "-O2 -pipe -mcpu=power7 -mtune=power7 -mabi=elfv2"
+COMMON_FLAGS = "-O2 -pipe -mcpu=power7 -mtune=power7"
 CHOST = "powerpc64le-unknown-linux-gnu"
 USE = [ "altivec", "ibm",]
 
 [ppc64.power8]
-COMMON_FLAGS = "-O2 -pipe -mcpu=power8 -mtune=power8 -mabi=elfv2"
+COMMON_FLAGS = "-O2 -pipe -mcpu=power8 -mtune=power8"
 CHOST = "powerpc64-unknown-linux-gnu"
 USE = [ "altivec", "ibm",]
 
 [ppc64.power8le]
-COMMON_FLAGS = "-O2 -pipe -mcpu=power8 -mtune=power8 -mabi=elfv2"
+COMMON_FLAGS = "-O2 -pipe -mcpu=power8 -mtune=power8"
 CHOST = "powerpc64le-unknown-linux-gnu"
 USE = [ "altivec", "ibm",]
 
-- 
2.29.0



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

* [gentoo-catalyst] [PATCH 3/3] arch/ppc.toml: add power9 subarches
  2020-10-21  4:33 [gentoo-catalyst] [PATCH 1/3] arch/ppc.toml: add CHOST based subarches Georgy Yakovlev
  2020-10-21  4:33 ` [gentoo-catalyst] [PATCH 2/3] arch/ppc.toml: don't force -mabi=elfv2 on power subarches Georgy Yakovlev
@ 2020-10-21  4:33 ` Georgy Yakovlev
  1 sibling, 0 replies; 3+ messages in thread
From: Georgy Yakovlev @ 2020-10-21  4:33 UTC (permalink / raw
  To: gentoo-catalyst; +Cc: Georgy Yakovlev

Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org>
---
 arch/ppc.toml | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/arch/ppc.toml b/arch/ppc.toml
index 6f74789d..c8623cca 100644
--- a/arch/ppc.toml
+++ b/arch/ppc.toml
@@ -42,6 +42,16 @@ COMMON_FLAGS = "-O2 -pipe -mcpu=power8 -mtune=power8"
 CHOST = "powerpc64le-unknown-linux-gnu"
 USE = [ "altivec", "ibm",]
 
+[ppc64.power9]
+COMMON_FLAGS = "-O2 -pipe -mcpu=power9 -mtune=power9"
+CHOST = "powerpc64-unknown-linux-gnu"
+USE = [ "altivec", "ibm",]
+
+[ppc64.power9le]
+COMMON_FLAGS = "-O2 -pipe -mcpu=power9 -mtune=power9"
+CHOST = "powerpc64le-unknown-linux-gnu"
+USE = [ "altivec", "ibm",]
+
 [ppc64.ppc64]
 COMMON_FLAGS = "-O2 -pipe"
 CHOST = "powerpc64-unknown-linux-gnu"
-- 
2.29.0



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

end of thread, other threads:[~2020-10-21  4:34 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-10-21  4:33 [gentoo-catalyst] [PATCH 1/3] arch/ppc.toml: add CHOST based subarches Georgy Yakovlev
2020-10-21  4:33 ` [gentoo-catalyst] [PATCH 2/3] arch/ppc.toml: don't force -mabi=elfv2 on power subarches Georgy Yakovlev
2020-10-21  4:33 ` [gentoo-catalyst] [PATCH 3/3] arch/ppc.toml: add power9 subarches Georgy Yakovlev

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