Correctly manage PPC cross-compiler on M68K host

This commit is contained in:
Laurent Vivier 2007-09-08 23:34:10 +00:00
parent 880d7d25fd
commit 757e8f9f34

View File

@ -1,5 +1,11 @@
#!/bin/sh
CC=gcc
AS=as
LD=ld
OBJCOPY=objcopy
STRIP=strip
# build info
WHO=$(whoami)
@ -23,56 +29,55 @@ SIGNATURE = \$(PACKAGE)-\$(VERSION) \$(WHO)@\$(WHERE)(\$(ARCH) \$(OS)) \$(WHEN)
if test "${ARCH}" != "m68k"
then
M68K_CROSS_COMPILE=m68k-linux-
if ! type "${M68K_CROSS_COMPILE}gcc" > /dev/null 2>&1
if ! type "${M68K_CROSS_COMPILE}${CC}" > /dev/null 2>&1
then
M68K_CROSS_COMPILE=m68k-linux-gnu-
if ! type "${M68K_CROSS_COMPILE}gcc" > /dev/null 2>&1
if ! type "${M68K_CROSS_COMPILE}${CC}" > /dev/null 2>&1
then
echo "Cannot find m68k cross-compiler" 1>&2
exit 1
fi
fi
M68K_GCC_VERSION=$(${M68K_CROSS_COMPILE}gcc -dumpversion 2> /dev/null)
echo "cross-compiler is ${M68K_CROSS_COMPILE}gcc ${M68K_GCC_VERSION}" 1>&2
M68K_GCC_VERSION=$(${M68K_CROSS_COMPILE}${CC} -dumpversion 2> /dev/null)
echo "cross-compiler is ${M68K_CROSS_COMPILE}${CC} ${M68K_GCC_VERSION}" 1>&2
fi
cat <<!EOF
M68K_CROSS_COMPILE = ${M68K_CROSS_COMPILE}
M68K_AS = \$(M68K_CROSS_COMPILE)as
M68K_CC = \$(M68K_CROSS_COMPILE)gcc
M68K_LD = \$(M68K_CROSS_COMPILE)ld
M68K_OBJCOPY = \$(M68K_CROSS_COMPILE)objcopy
M68K_STRIP = \$(M68K_CROSS_COMPILE)strip
M68K_AS = \$(M68K_CROSS_COMPILE)${AS}
M68K_CC = \$(M68K_CROSS_COMPILE)${CC}
M68K_LD = \$(M68K_CROSS_COMPILE)${LD}
M68K_OBJCOPY = \$(M68K_CROSS_COMPILE)${OBJCOPY}
M68K_STRIP = \$(M68K_CROSS_COMPILE)${STRIP}
!EOF
if test "${ARCH}" != "ppc"
then
PPC_CROSS_COMPILE=powerpc-linux-
if ! type "${PPC_CROSS_COMPILE}gcc" > /dev/null 2>&1
if ! type "${PPC_CROSS_COMPILE}${CC}" > /dev/null 2>&1
then
PPC_CROSS_COMPILE=powerpc-linux-gnu-
if ! type "${PPC_CROSS_COMPILE}gcc" > /dev/null 2>&1
if ! type "${PPC_CROSS_COMPILE}${CC}" > /dev/null 2>&1
then
echo "Cannot find powerpc cross-compiler" 1>&2
exit 0
fi
fi
PPC_GCC_VERSION=$(${PPC_CROSS_COMPILE}gcc -dumpversion 2> /dev/null)
echo "cross-compiler is ${PPC_CROSS_COMPILE}gcc ${PPC_GCC_VERSION}" 1>&2
fi
else
PPC_GCC_VERSION=$(${PPC_CROSS_COMPILE}${CC} -dumpversion 2> /dev/null)
echo "cross-compiler is ${PPC_CROSS_COMPILE}${CC} ${PPC_GCC_VERSION}" 1>&2
cat <<!EOF
PPC_CROSS_COMPILE = ${PPC_CROSS_COMPILE}
PPC_AS = \$(PPC_CROSS_COMPILE)as
PPC_CC = \$(PPC_CROSS_COMPILE)gcc
PPC_LD = \$(PPC_CROSS_COMPILE)ld
PPC_OBJCOPY = \$(PPC_CROSS_COMPILE)objcopy
PPC_STRIP = \$(PPC_CROSS_COMPILE)strip
PPC_AS = \$(PPC_CROSS_COMPILE)${AS}
PPC_CC = \$(PPC_CROSS_COMPILE)${CC}
PPC_LD = \$(PPC_CROSS_COMPILE)${LD}
PPC_OBJCOPY = \$(PPC_CROSS_COMPILE)${OBJCOPY}
PPC_STRIP = \$(PPC_CROSS_COMPILE)${STRIP}
!EOF
fi
fi
fi
# target compiler
@ -94,6 +99,11 @@ override LD = \$(M68K_LD)
override OBJCOPY = \$(M68K_OBJCOPY)
override STRIP = \$(M68K_STRIP)
!EOF
if type "${PPC_CROSS_COMPILE}${CC}" > /dev/null 2>&1
then
cat <<!EOF
else ifeq (\$(TARGET),ppc-linux)
override AS = \$(PPC_AS)
@ -102,13 +112,17 @@ override LD = \$(PPC_LD)
override OBJCOPY = \$(PPC_OBJCOPY)
override STRIP = \$(PPC_STRIP)
!EOF
fi
cat <<!EOF
else
AS = \$(CROSS_COMPILE)as
CC = \$(CROSS_COMPILE)gcc
LD = \$(CROSS_COMPILE)ld
OBJCOPY = \$(CROSS_COMPILE)objcopy
STRIP = \$(CROSS_COMPILE)strip
AS = \$(CROSS_COMPILE)${AS}
CC = \$(CROSS_COMPILE)${CC}
LD = \$(CROSS_COMPILE)${LD}
OBJCOPY = \$(CROSS_COMPILE)${OBJCOPY}
STRIP = \$(CROSS_COMPILE)${STRIP}
endif
!EOF