This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] Sample config for e500v2 toolchain


This is a sample config file for Freescale e500v2 processors (e.g.,
MPC8548, MPC8572).  It uses eglibc (for e500/SPE patches) and a recent
gcc (4.3.1, for e500v2 DPFP support) and will generate appropriate
dual-precision floating point instructions by default.

Note: If building a Linux kernel with this toolchain, you will want to
make sure -mno-spe AND -mspe=no are passed to gcc to prevent SPE
ABI/instructions from getting into the kernel (which is currently
unsupported).  At this time, the kernel build system only passes
-mno-spe by default (this should be fixed soon hopefully).

A binutils snapshot is used to fix a bug present in 2.18 preventing
U-Boot from being compiled (CodeSourcery issue #2297: internal.h
(ELF_IS_SECTION_IN_SEGMENT): Adjust to cope with segments at the end of
memory).

Index: samples/powerpc-e500v2-linux-gnuspe/crosstool.config
===================================================================
--- samples/powerpc-e500v2-linux-gnuspe/crosstool.config	(revision 0)
+++ samples/powerpc-e500v2-linux-gnuspe/crosstool.config	(revision 0)
@@ -0,0 +1,307 @@
+#
+# Automatically generated make config: don't edit
+# crosstool-NG version: 1.2.0+svn_trunk@1078
+# Tue Oct 14 09:42:55 2008
+#
+
+#
+# Paths and misc options
+#
+
+#
+# crosstool-NG behavior
+#
+# CT_OBSOLETE is not set
+CT_EXPERIMENTAL=y
+# CT_DEBUG_CT is not set
+
+#
+# Paths
+#
+CT_LOCAL_TARBALLS_DIR="${HOME}/src"
+CT_SAVE_TARBALLS=y
+CT_WORK_DIR="${CT_TOP_DIR}/targets"
+CT_PREFIX_DIR="${HOME}/x-tools/${CT_TARGET}"
+CT_INSTALL_DIR="${CT_PREFIX_DIR}"
+# CT_CUSTOM_PATCH is not set
+CT_REMOVE_DOCS=y
+CT_INSTALL_DIR_RO=y
+
+#
+# Downloading
+#
+# CT_FORCE_DOWNLOAD is not set
+# CT_USE_PROXY is not set
+CT_PROXY_TYPE="none"
+# CT_USE_LAN_MIRROR is not set
+CT_CONNECT_TIMEOUT=10
+# CT_ONLY_DOWNLOAD is not set
+
+#
+# Extracting
+#
+# CT_FORCE_EXTRACT is not set
+CT_OVERIDE_CONFIG_GUESS_SUB=y
+# CT_ONLY_EXTRACT is not set
+
+#
+# Build behavior
+#
+CT_PARALLEL_JOBS=1
+CT_LOAD=0
+CT_NICE=0
+CT_USE_PIPES=y
+# CT_CONFIG_SHELL_ASH is not set
+
+#
+# Logging
+#
+# CT_LOG_ERROR is not set
+# CT_LOG_WARN is not set
+# CT_LOG_INFO is not set
+CT_LOG_EXTRA=y
+# CT_LOG_DEBUG is not set
+# CT_LOG_ALL is not set
+CT_LOG_LEVEL_MAX="EXTRA"
+# CT_LOG_SEE_TOOLS_WARN is not set
+CT_LOG_PROGRESS_BAR=y
+CT_LOG_TO_FILE=y
+CT_LOG_FILE_COMPRESS=y
+
+#
+# Target options
+#
+CT_ARCH="powerpc"
+# CT_ARCH_SUPPORT_ARCH is not set
+CT_ARCH_SUPPORT_ABI=y
+CT_ARCH_SUPPORT_CPU=y
+CT_ARCH_SUPPORT_TUNE=y
+# CT_ARCH_SUPPORT_FPU is not set
+# CT_ARCH_SUPPORTS_BOTH_ENDIAN is not set
+# CT_ARCH_DEFAULT_BE is not set
+# CT_ARCH_DEFAULT_LE is not set
+CT_ARCH_ABI=""
+CT_ARCH_CPU="8548"
+CT_ARCH_TUNE="8548"
+CT_ARCH_FLOAT_HW=y
+# CT_ARCH_FLOAT_SW is not set
+CT_TARGET_CFLAGS="-mfloat-gprs=double -Wa,-me500x2"
+CT_TARGET_LDFLAGS=""
+
+#
+# General target options
+#
+# CT_ARCH_alpha is not set
+# CT_ARCH_arm is not set
+# CT_ARCH_ia64 is not set
+# CT_ARCH_mips is not set
+CT_ARCH_powerpc=y
+# CT_ARCH_sh is not set
+# CT_ARCH_x86_64 is not set
+# CT_ARCH_x86 is not set
+CT_ARCH_POWERPC_SPE=y
+
+#
+# Target optimisations
+#
+
+#
+# Toolchain options
+#
+
+#
+# General toolchain options
+#
+CT_USE_SYSROOT=y
+CT_SHARED_LIBS=y
+CT_TARGET_VENDOR="e500v2"
+CT_TARGET_ALIAS_SED_EXPR=""
+CT_TARGET_ALIAS=""
+
+#
+# Toolchain type
+#
+# CT_NATIVE is not set
+CT_CROSS=y
+# CT_CROSS_NATIVE is not set
+# CT_CANADIAN is not set
+CT_TOOLCHAIN_TYPE="cross"
+CT_BUILD=""
+CT_CC_NATIVE="gcc"
+
+#
+# Operating System
+#
+# CT_BARE_METAL is not set
+CT_KERNEL="linux"
+CT_KERNEL_VERSION="2.6.26.5"
+# CT_KERNEL_bare_metal is not set
+CT_KERNEL_linux=y
+CT_KERNEL_LINUX_INSTALL=y
+CT_KERNEL_LINUX_INSTALL_CHECK=y
+# CT_KERNEL_V_2_6_18_8 is not set
+# CT_KERNEL_V_2_6_19_7 is not set
+# CT_KERNEL_V_2_6_20_21 is not set
+# CT_KERNEL_V_2_6_21_7 is not set
+# CT_KERNEL_V_2_6_22_19 is not set
+# CT_KERNEL_V_2_6_23_17 is not set
+# CT_KERNEL_V_2_6_24_7 is not set
+# CT_KERNEL_V_2_6_25_18 is not set
+# CT_KERNEL_V_2_6_26 is not set
+# CT_KERNEL_V_2_6_26_1 is not set
+# CT_KERNEL_V_2_6_26_2 is not set
+# CT_KERNEL_V_2_6_26_3 is not set
+# CT_KERNEL_V_2_6_26_4 is not set
+CT_KERNEL_V_2_6_26_5=y
+# CT_KERNEL_V_2_6_26_6 is not set
+# CT_KERNEL_V_2_6_27 is not set
+CT_KERNEL_LINUX_VERBOSITY_0=y
+# CT_KERNEL_LINUX_VERBOSITY_1 is not set
+# CT_KERNEL_LINUX_VERBOSITY_2 is not set
+CT_KERNEL_LINUX_VERBOSE_LEVEL=0
+# CT_KERNEL_LINUX_USE_CUSTOM_DIR is not set
+
+#
+# GMP and MPFR
+#
+CT_GMP_MPFR=y
+CT_GMP_MPFR_TARGET=y
+CT_GMP_V_4_2_2=y
+# CT_GMP_V_4_2_4 is not set
+CT_GMP_VERSION="4.2.2"
+CT_GMP_CHECK=y
+CT_MPFR_V_2_3_1=y
+# CT_MPFR_V_2_3_2 is not set
+CT_MPFR_VERSION="2.3.1"
+CT_MPFR_CHECK=y
+
+#
+# binutils
+#
+CT_BINUTILS_VERSION="2.18.90"
+# CT_BINUTILS_V_2_14 is not set
+# CT_BINUTILS_V_2_15 is not set
+# CT_BINUTILS_V_2_16_1 is not set
+# CT_BINUTILS_V_2_17 is not set
+# CT_BINUTILS_V_2_18 is not set
+# CT_BINUTILS_V_2_18_50_0_4 is not set
+# CT_BINUTILS_V_2_18_50_0_6 is not set
+# CT_BINUTILS_V_2_18_50_0_7 is not set
+# CT_BINUTILS_V_2_18_50_0_8 is not set
+# CT_BINUTILS_V_2_18_50_0_9 is not set
+CT_BINUTILS_V_2_18_90=y
+# CT_BINUTILS_V_2_18_91 is not set
+# CT_BINUTILS_V_2_18_92 is not set
+# CT_BINUTILS_V_2_18_93 is not set
+# CT_BINUTILS_V_2_19_50_0_1 is not set
+CT_BINUTILS_EXTRA_CONFIG="--enable-spe=yes --enable-e500x2 --with-e500x2"
+CT_BINUTILS_FOR_TARGET=y
+CT_BINUTILS_FOR_TARGET_IBERTY=y
+CT_BINUTILS_FOR_TARGET_BFD=y
+
+#
+# C compiler
+#
+CT_CC="gcc"
+CT_CC_VERSION="4.3.1"
+CT_CC_gcc=y
+# CT_CC_V_2_95_3 is not set
+# CT_CC_V_3_2_3 is not set
+# CT_CC_V_3_3_6 is not set
+# CT_CC_V_3_4_6 is not set
+# CT_CC_V_4_0_0 is not set
+# CT_CC_V_4_0_1 is not set
+# CT_CC_V_4_0_2 is not set
+# CT_CC_V_4_0_3 is not set
+# CT_CC_V_4_0_4 is not set
+# CT_CC_V_4_1_0 is not set
+# CT_CC_V_4_1_1 is not set
+# CT_CC_V_4_1_2 is not set
+# CT_CC_V_4_2_0 is not set
+# CT_CC_V_4_2_1 is not set
+# CT_CC_V_4_2_2 is not set
+# CT_CC_V_4_2_3 is not set
+# CT_CC_V_4_2_4 is not set
+# CT_CC_V_4_3_0 is not set
+CT_CC_V_4_3_1=y
+# CT_CC_V_4_3_2 is not set
+CT_CC_GCC_4_3_or_later=y
+CT_CC_CXA_ATEXIT=y
+CT_CC_SJLJ_EXCEPTIONS_CONFIGURE=y
+# CT_CC_SJLJ_EXCEPTIONS_USE is not set
+# CT_CC_SJLJ_EXCEPTIONS_DONT_USE is not set
+CT_CC_CORE_EXTRA_CONFIG=""
+CT_CC_EXTRA_CONFIG="--with-long-double-128"
+CT_CC_PKGVERSION="crosstool-NG-${CT_VERSION}"
+CT_CC_BUGURL=""
+CT_CC_SUPPORT_CXX=y
+CT_CC_SUPPORT_FORTRAN=y
+CT_CC_SUPPORT_JAVA=y
+CT_CC_SUPPORT_ADA=y
+CT_CC_SUPPORT_OBJC=y
+CT_CC_SUPPORT_OBJCXX=y
+
+#
+# Additional supported languages:
+#
+CT_CC_LANG_CXX=y
+CT_CC_LANG_FORTRAN=y
+CT_CC_LANG_JAVA=y
+# CT_CC_LANG_ADA is not set
+# CT_CC_LANG_OBJC is not set
+# CT_CC_LANG_OBJCXX is not set
+CT_CC_LANG_OTHERS=""
+CT_LIBC="eglibc"
+
+#
+# C-library
+#
+CT_LIBC_VERSION="2_6"
+CT_LIBC_eglibc=y
+# CT_LIBC_glibc is not set
+# CT_LIBC_uClibc is not set
+# CT_EGLIBC_V_2_5 is not set
+CT_EGLIBC_V_2_6=y
+# CT_EGLIBC_V_2_7 is not set
+# CT_EGLIBC_V_2_8 is not set
+# CT_EGLIBC_V_TRUNK is not set
+CT_EGLIBC_REVISION="HEAD"
+CT_EGLIBC_CHECKOUT=y
+
+#
+# Common C library options
+#
+CT_LIBC_SUPPORT_NPTL=y
+CT_LIBC_SUPPORT_LINUXTHREADS=y
+CT_THREADS="nptl"
+CT_THREADS_NPTL=y
+# CT_THREADS_LINUXTHREADS is not set
+# CT_THREADS_NONE is not set
+
+#
+# glibc/eglibc common options
+#
+CT_LIBC_GLIBC_EXTRA_CONFIG=""
+CT_LIBC_GLIBC_EXTRA_CFLAGS=""
+CT_LIBC_EXTRA_CC_ARGS=""
+CT_LIBC_GLIBC_USE_PORTS=y
+# CT_LIBC_ADDONS is not set
+# CT_LIBC_GLIBC_KERNEL_VERSION_NONE is not set
+CT_LIBC_GLIBC_KERNEL_VERSION_AS_HEADERS=y
+# CT_LIBC_GLIBC_KERNEL_VERSION_CHOSEN is not set
+CT_LIBC_GLIBC_MIN_KERNEL="2.6.26.5"
+
+#
+# Tools facilities
+#
+# CT_TOOL_libelf is not set
+# CT_TOOL_sstrip is not set
+
+#
+# Debug facilities
+#
+# CT_DEBUG_dmalloc is not set
+# CT_DEBUG_duma is not set
+# CT_DEBUG_gdb is not set
+# CT_DEBUG_ltrace is not set
+# CT_DEBUG_strace is not set



--
For unsubscribe information see http://sourceware.org/lists.html#faq


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]