Skip to contentSkip to conversation

arch-ia32: Add x32 to MACHINEOVERRIDES

PATCH In review Saul Wold 3 participants 5 messages Sep 11, 2012

lore
Share & tools
lore

Saul Wold

author
#0 lore raw

PATCH 1/1 arch-ia32: Add x32 to MACHINEOVERRIDES

This will allow the KERNEL_FEATURES to trigger the x32 ABI via overrides

---
 meta/conf/machine/include/ia32/arch-ia32.inc |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
meta/conf/machine/include/ia32/arch-ia32.inc +1 -0
index 15f67d7..fa70e57 100644
@@ -24,6 +24,7 @@ ABIEXTENSION .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", "x32", "" ,d)}"
 TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-mx32", "", d)}"
 TUNE_LDARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-m elf32_x86_64", "", d)}"
 TUNE_ASARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-x32", "", d)}"
+MACHINEOVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", ":x32", "" ,d)}"
 
 # ELF64 ABI
 TUNEVALID[m64] = "IA32e (x86_64) ELF64 standard ABI"
Signature · 1 line
1.7.7.6
#1 lore raw
Quoted 12 lines · Saul Wold

This will allow the KERNEL_FEATURES to trigger the x32 ABI via overrides

---
 meta/conf/machine/include/ia32/arch-ia32.inc |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
meta/conf/machine/include/ia32/arch-ia32.inc +0 -0
index 15f67d7..fa70e57 100644

meta/conf/machine/include/ia32/arch-ia32.inc ABIEXTENSION .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", "x32", "" ,d)}" · line 30

Quoted 7 lines
meta/conf/machine/include/ia32/arch-ia32.inc +1 -0
@@ -24,6 +24,7 @@ ABIEXTENSION .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", "x32", "" ,d)}"
 TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-mx32", "", d)}"
 TUNE_LDARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-m elf32_x86_64", "", d)}"
 TUNE_ASARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-x32", "", d)}"
+MACHINEOVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", ":x32", "" ,d)}"
 
 # ELF64 ABI
 TUNEVALID[m64] = "IA32e (x86_64) ELF64 standard ABI"

This is just for the kernel issue, right?

In that case, just use ${@bb.utils.contains("TUNE_FEATURES", "mx32", "xxxx", "" ,d)} in the kernel recipe code...

Cheers,

Richard

author
#2 lore raw
Quoted 18 lines · Richard Purdie
Quoted 17 lines · Saul Wold

This will allow the KERNEL_FEATURES to trigger the x32 ABI via overrides

---
  meta/conf/machine/include/ia32/arch-ia32.inc |    1 +
  1 files changed, 1 insertions(+), 0 deletions(-)
meta/conf/machine/include/ia32/arch-ia32.inc +1 -0
index 15f67d7..fa70e57 100644
@@ -24,6 +24,7 @@ ABIEXTENSION .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", "x32", "" ,d)}"
  TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-mx32", "", d)}"
  TUNE_LDARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-m elf32_x86_64", "", d)}"
  TUNE_ASARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-x32", "", d)}"
+MACHINEOVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", ":x32", "" ,d)}"
 
Quoted 8 lines

meta/conf/machine/include/ia32/arch-ia32.inc ABIEXTENSION .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", "x32", "" ,d)}" · line 30

Quoted 2 lines
meta/conf/machine/include/ia32/arch-ia32.inc +0 -0
  # ELF64 ABI
  TUNEVALID[m64] = "IA32e (x86_64) ELF64 standard ABI"

This is just for the kernel issue, right?

In that case, just use ${@bb.utils.contains("TUNE_FEATURES", "mx32", "xxxx", "" ,d)} in the kernel recipe code...

It's possible that there will be other recipes that need patches or other changes in the future, but I guess we can cross that bridge when we come to it.

I think I will actually use the features update that Bruce just added from here instead. Since multiple BSP could take advantage of x32 we should not have to edit each of there kernel recipes. It should just be enabled based on the x32 DEFAULTTUNE.

Thanks
Sau!

Quoted 6 lines

Cheers,

Richard

#3 lore raw
Quoted 27 lines · Saul Wold
Quoted 18 lines · Richard Purdie
Quoted 17 lines · Saul Wold

This will allow the KERNEL_FEATURES to trigger the x32 ABI via overrides

---
   meta/conf/machine/include/ia32/arch-ia32.inc |    1 +
   1 files changed, 1 insertions(+), 0 deletions(-)
meta/conf/machine/include/ia32/arch-ia32.inc +1 -0
index 15f67d7..fa70e57 100644
@@ -24,6 +24,7 @@ ABIEXTENSION .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", "x32", "" ,d)}"
   TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-mx32", "", d)}"
   TUNE_LDARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-m elf32_x86_64", "", d)}"
   TUNE_ASARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-x32", "", d)}"
+MACHINEOVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", ":x32", "" ,d)}"
 
Quoted 8 lines

meta/conf/machine/include/ia32/arch-ia32.inc ABIEXTENSION .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", "x32", "" ,d)}" · line 30

Quoted 2 lines
meta/conf/machine/include/ia32/arch-ia32.inc +0 -0
   # ELF64 ABI
   TUNEVALID[m64] = "IA32e (x86_64) ELF64 standard ABI"

This is just for the kernel issue, right?

In that case, just use ${@bb.utils.contains("TUNE_FEATURES", "mx32", "xxxx", "" ,d)} in the kernel recipe code...

Quoted 8 lines

It's possible that there will be other recipes that need patches or other changes in the future, but I guess we can cross that bridge when we come to it.

I think I will actually use the features update that Bruce just added from here instead. Since multiple BSP could take advantage of x32 we should not have to edit each of there kernel recipes. It should just be enabled based on the x32 DEFAULTTUNE.

I know there are a few other things that can (and should) change behavior based on the x32 flag.. but flag or override, it just changes slightly the implementation mechanism -- either should work as long as we consistently use it.

--Mark

Quoted 17 lines

Thanks
Sau!

Quoted 6 lines

Cheers,

Richard

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

#4 lore raw
In reply to Saul Wold
Quoted 27 lines · Saul Wold
Quoted 18 lines · Richard Purdie
Quoted 17 lines · Saul Wold

This will allow the KERNEL_FEATURES to trigger the x32 ABI via overrides

---
  meta/conf/machine/include/ia32/arch-ia32.inc |    1 +
  1 files changed, 1 insertions(+), 0 deletions(-)
meta/conf/machine/include/ia32/arch-ia32.inc +1 -0
index 15f67d7..fa70e57 100644
@@ -24,6 +24,7 @@ ABIEXTENSION .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", "x32", "" ,d)}"
  TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-mx32", "", d)}"
  TUNE_LDARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-m elf32_x86_64", "", d)}"
  TUNE_ASARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-x32", "", d)}"
+MACHINEOVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", ":x32", "" ,d)}"
 
Quoted 8 lines

meta/conf/machine/include/ia32/arch-ia32.inc ABIEXTENSION .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", "x32", "" ,d)}" · line 30

Quoted 2 lines
meta/conf/machine/include/ia32/arch-ia32.inc +0 -0
  # ELF64 ABI
  TUNEVALID[m64] = "IA32e (x86_64) ELF64 standard ABI"

This is just for the kernel issue, right?

In that case, just use ${@bb.utils.contains("TUNE_FEATURES", "mx32", "xxxx", "" ,d)} in the kernel recipe code...

Quoted 8 lines

It's possible that there will be other recipes that need patches or other changes in the future, but I guess we can cross that bridge when we come to it.

I think I will actually use the features update that Bruce just added from here instead. Since multiple BSP could take advantage of x32 we should not have to edit each of there kernel recipes. It should just be enabled based on the x32 DEFAULTTUNE.

No, no, no. DEFAULTTUNE is a really bad idea for these kind of decisions, what if x32 is one of the other tunes enabled?

You're not the first person to use DEFAULTTUNE like this recently and its not what its intended for at all :/.

Also, the kernel features are specific to linux-yocto so you can't use them from a core ABI file.

Cheers,

Richard