Oh, and if you want to automate this. I attached a ktest.pl config thatdoes it for you. I'll be pushing this config and others into a examplesdirectory come the next merge window.

Ktest is located in the Linux tree under tools/testing/ktest/

You can run a bunch of cross compiles by doing:

ktest.pl crosstests.conf

-- Steve

## Example config for cross compiling## In this config, it is expected that the tool chains from:## http://kernel.org/pub/tools/crosstool/files/bin/x86_64/## running on a x86_64 system have been downloaded and installed into:## /usr/local/## such that the compiler binaries are something like:## /usr/local/gcc-4.5.2-nolibc/mips-linux/bin/mips-linux-gcc## Some of the archs will use gcc-4.5.1 instead of gcc-4.5.2# this config uses variables to differentiate them.# # Comments will be described for some areas, but the opitons are# all documented in the samples.conf file.

# ${PWD} is defined by ktest.pl to be the directory that the user# was in when they executed ktest.pl. It may be better to hardcode the# path name here. THIS_DIR is the variable used through out the config file# in case you want to change it.THIS_DIR := ${PWD}# Update the BUILD_DIR option to the location of your git repo you want to test.BUILD_DIR = ${THIS_DIR}/linux.git# The build will go into this directory. It will be created when you run the test.OUTPUT_DIR = ${THIS_DIR}/cross-compile# The build will be compiled with -j8BUILD_OPTIONS = -j8

# The test will not stop when it hits a failure.DIE_ON_FAILURE = 0

# If you want to have ktest.pl store the failure somewhere, uncomment this option# and change the directory where ktest should store the failures.#STORE_FAILURES = ${THIS_DIR}/failures# The log file is stored in the OUTPUT_DIR called cross.log# If you enable this, you need to create the OUTPUT_DIR. It wont be created for you.#LOG_FILE = ${OUTPUT_DIR}/cross.log# The log file will be cleared each time you run ktest.CLEAR_LOG = 1

# As some archs do not build with the defconfig, they have been marked# to be ignored. If you want to test them anyway, change DO_FAILED to one.# If a test that has been marked as DO_FAILED passes, then you should change# that test to be DO_DEFAULT

DO_FAILED := 0DO_DEFAULT := 1

# By setting both DO_FAILED and DO_DEFAULT to zero, you can pick a single# arch that you want to test. (uncomment RUN and chose your arch)#RUN := m32r

# At the bottom of the config file exists a bisect test. You can update that# test and set DO_FAILED and DO_DEFAULT to zero, and uncomment this variable# to run the bisect on the arch.#RUN := bisect

# By default all tests will be running gcc 4.5.2. Some tests are using 4.5.1# and they select that in the test.# Note: GCC_VER is declared as on option and not a variable ('=' istead of ':=')# This is important. A variable is used only in the config file and if it is set# it stays that way for the rest of the config file until it is change again.# Here we want GCC_VER to remain persistent throughout the tests, as it is used in# the MAKE_CMD. By using '=' instead of ':=' we achieve our goal.

# If you want to add configs on top of the defconfig, you can add those configs into# the add-config file and uncomment this option. This is useful if you want to test# all cross compiles with PREEMPT set, or TRACING on, etc.#ADD_CONFIG = ${THIS_DIR}/add-config# All tests are using defconfigBUILD_TYPE = defconfig