j
: Next unread message k
: Previous unread message j a
: Jump to all threads
j l
: Jump to MailingList overview
This patch allows for building OpenBIOS on Mac OS X, but without the "Trying" output. It has been tested on Mac OS 10.6 and Debian Linux.
signed-off-by: John Arbuckle programmingkidx@gmail.com
Index: trunk/openbios-devel/config/scripts/switch-arch =================================================================== --- trunk/openbios-devel/config/scripts/switch-arch (revision 1133) +++ trunk/openbios-devel/config/scripts/switch-arch (working copy) @@ -89,15 +89,25 @@
archname() { - HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \ - -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \ - -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \ - -e "s/Power Macintosh/ppc/"` + OS_NAME=`uname` + if test "$OS_NAME" = "Darwin"; then # Can't depend on uname -m on Mac OS X + IS_64BIT=`sysctl hw.cpu64bit_capable` + if test "$IS_64BIT" = "hw.cpu64bit_capable: 1"; then + HOSTARCH="amd64" + else + HOSTARCH="x86" + fi + else + HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \ + -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \ + -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \ + -e "s/Power Macintosh/ppc/"` + fi }
select_prefix() { - for TARGET in ${1}-unknown-linux-gnu- ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi- + for TARGET in ${1}-unknown-linux-gnu- ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi- ppc-elf- do if type ${TARGET}gcc > /dev/null 2>&1 then
Am 08.05.2013 01:54, schrieb Programmingkid:
This patch allows for building OpenBIOS on Mac OS X, but without the "Trying" output. It has been tested on Mac OS 10.6 and Debian Linux.
signed-off-by: John Arbuckle programmingkidx@gmail.com
Index: trunk/openbios-devel/config/scripts/switch-arch
--- trunk/openbios-devel/config/scripts/switch-arch (revision 1133) +++ trunk/openbios-devel/config/scripts/switch-arch (working copy) @@ -89,15 +89,25 @@
archname() {
- HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \
- -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \
- -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \
- -e "s/Power Macintosh/ppc/"`
- OS_NAME=`uname`
- if test "$OS_NAME" = "Darwin"; then # Can't depend on uname -m on Mac OS X
IS_64BIT=`sysctl hw.cpu64bit_capable`
if test "$IS_64BIT" = "hw.cpu64bit_capable: 1"; then
HOSTARCH="amd64"
else
HOSTARCH="x86"
fi
This is clearly wrong, Segher already pointed you to that: You are wrongly assuming Darwin to mean x86/amd64 exclusively! "hw.cpu64bit_capable: 1" can mean ppc64 just as well on 10.5, so it would be best to check for Darwin 64-bitness *after* the original `uname -m` architecture sanitization.
- else
HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \
-e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \
-e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \
-e "s/Power Macintosh/ppc/"`
- fi
}
select_prefix() {
- for TARGET in ${1}-unknown-linux-gnu- ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi-
- for TARGET in ${1}-unknown-linux-gnu- ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi- ppc-elf-
This has nothing to do with Mac OS X and thus, if we want this at all, belongs in a separate patch. git-svn can help with that.
I think it is wrong that you are hardcoding ppc here, so it will fall back to ppc-elf- prefix for sparc, etc. as well. powerpc-elf- prefix is covered by ${1}-elf- here, so you'd need to check the call sites of select_prefix() instead.
Regards, Andreas
do if type ${TARGET}gcc > /dev/null 2>&1 then
"hw.cpu64bit_capable: 1" can mean ppc64 just as well on 10.5, so it would be best to check for Darwin 64-bitness *after* the original `uname -m` architecture sanitization.
It also doesn't exist before 10.5; on 10.4 you test for 64-bit differently.
- for TARGET in ${1}-unknown-linux-gnu- ${1}-linux-gnu- ${1}-
linux- ${1}-elf- ${1}-eabi-
- for TARGET in ${1}-unknown-linux-gnu- ${1}-linux-gnu- ${1}-
linux- ${1}-elf- ${1}-eabi- ppc-elf-
This has nothing to do with Mac OS X and thus, if we want this at all, belongs in a separate patch. git-svn can help with that.
I think it is wrong that you are hardcoding ppc here, so it will fall back to ppc-elf- prefix for sparc, etc. as well. powerpc-elf- prefix is covered by ${1}-elf- here, so you'd need to check the call sites of select_prefix() instead.
And again, ppc-elf- is just a random made-up name.
Segher