2 # Example config for cross compiling
4 # In this config, it is expected that the tool chains from:
6 # http://kernel.org/pub/tools/crosstool/files/bin/x86_64/
8 # running on a x86_64 system have been downloaded and installed into:
12 # such that the compiler binaries are something like:
14 # /usr/local/gcc-4.5.2-nolibc/mips-linux/bin/mips-linux-gcc
16 # Some of the archs will use gcc-4.5.1 instead of gcc-4.5.2
17 # this config uses variables to differentiate them.
19 # Comments describe some of the options, but full descriptions of
20 # options are described in the samples.conf file.
22 # ${PWD} is defined by ktest.pl to be the directory that the user
23 # was in when they executed ktest.pl. It may be better to hardcode the
24 # path name here. THIS_DIR is the variable used through out the config file
25 # in case you want to change it.
29 # Update the BUILD_DIR option to the location of your git repo you want to test.
30 BUILD_DIR = ${THIS_DIR}/linux.git
32 # The build will go into this directory. It will be created when you run the test.
33 OUTPUT_DIR = ${THIS_DIR}/cross-compile
35 # The build will be compiled with -j8
38 # The test will not stop when it hits a failure.
41 # If you want to have ktest.pl store the failure somewhere, uncomment this option
42 # and change the directory where ktest should store the failures.
43 #STORE_FAILURES = ${THIS_DIR}/failures
45 # The log file is stored in the OUTPUT_DIR called cross.log
46 # If you enable this, you need to create the OUTPUT_DIR. It wont be created for you.
47 LOG_FILE = ${OUTPUT_DIR}/cross.log
49 # The log file will be cleared each time you run ktest.
52 # As some archs do not build with the defconfig, they have been marked
53 # to be ignored. If you want to test them anyway, change DO_FAILED to 1.
54 # If a test that has been marked as DO_FAILED passes, then you should change
55 # that test to be DO_DEFAULT
60 # By setting both DO_FAILED and DO_DEFAULT to zero, you can pick a single
61 # arch that you want to test. (uncomment RUN and chose your arch)
64 # At the bottom of the config file exists a bisect test. You can update that
65 # test and set DO_FAILED and DO_DEFAULT to zero, and uncomment this variable
66 # to run the bisect on the arch.
69 # By default all tests will be running gcc 4.5.2. Some tests are using 4.5.1
70 # and they select that in the test.
71 # Note: GCC_VER is declared as on option and not a variable ('=' instead of ':=')
72 # This is important. A variable is used only in the config file and if it is set
73 # it stays that way for the rest of the config file until it is change again.
74 # Here we want GCC_VER to remain persistent and change for each test, as it is used in
75 # the MAKE_CMD. By using '=' instead of ':=' we achieve our goal.
78 MAKE_CMD = PATH=/usr/local/gcc-${GCC_VER}-nolibc/${CROSS}/bin:$PATH CROSS_COMPILE=${CROSS}- make ARCH=${ARCH}
80 # all tests are only doing builds.
83 # If you want to add configs on top of the defconfig, you can add those configs into
84 # the add-config file and uncomment this option. This is useful if you want to test
85 # all cross compiles with PREEMPT set, or TRACING on, etc.
86 #ADD_CONFIG = ${THIS_DIR}/add-config
88 # All tests are using defconfig
89 BUILD_TYPE = defconfig
91 # The test names will have the arch and cross compiler used. This will be shown in
93 TEST_NAME = ${ARCH} ${CROSS}
96 TEST_START IF ${RUN} == alpha || ${DO_DEFAULT}
97 # Notice that CROSS and ARCH are also options and not variables (again '=' instead
98 # of ':='). This is because TEST_NAME and MAKE_CMD wil use them for each test.
99 # Only options are available during runs. Variables are only present in parsing the
105 TEST_START IF ${RUN} == arm || ${DO_DEFAULT}
106 CROSS = arm-unknown-linux-gnueabi
110 TEST_START IF ${RUN} == ia64 || ${DO_DEFAULT}
114 # m68k fails with error?
115 TEST_START IF ${RUN} == m68k || ${DO_DEFAULT}
120 TEST_START IF ${RUN} == mips || ${RUN} == mips64 || ${DO_DEFAULT}
125 TEST_START IF ${RUN} == mips || ${RUN} == mips32 || ${DO_DEFAULT}
130 TEST_START IF ${RUN} == hppa || ${RUN} == hppa64 || ${DO_FAILED}
135 TEST_START IF ${RUN} == hppa || ${RUN} == hppa32 || ${DO_FAILED}
140 TEST_START IF ${RUN} == ppc || ${RUN} == ppc32 || ${DO_DEFAULT}
141 CROSS = powerpc-linux
145 TEST_START IF ${RUN} == ppc || ${RUN} == ppc64 || ${DO_DEFAULT}
146 CROSS = powerpc64-linux
150 TEST_START IF ${RUN} == s390 || ${DO_DEFAULT}
155 TEST_START IF ${RUN} == sh || ${DO_DEFAULT}
160 TEST_START IF ${RUN} == sparc || ${RUN} == sparc64 || ${DO_DEFAULT}
161 CROSS = sparc64-linux
165 TEST_START IF ${RUN} == sparc || ${RUN} == sparc32 || ${DO_DEFAULT}
170 TEST_START IF ${RUN} == xtensa || ${DO_FAILED}
175 TEST_START IF ${RUN} == uml || ${DO_DEFAULT}
176 MAKE_CMD = make ARCH=um SUBARCH=x86_64
180 TEST_START IF ${RUN} == x86 || ${RUN} == i386 || ${DO_DEFAULT}
181 MAKE_CMD = make ARCH=i386
185 TEST_START IF ${RUN} == x86 || ${RUN} == x86_64 || ${DO_DEFAULT}
186 MAKE_CMD = make ARCH=x86_64
190 #################################
192 # This is a bisect if needed. You need to give it a MIN_CONFIG that
193 # will be the config file it uses. Basically, just copy the created defconfig
194 # for the arch someplace and point MIN_CONFIG to it.
195 TEST_START IF ${RUN} == bisect
196 MIN_CONFIG = ${THIS_DIR}/min-config
205 #################################
207 # These defaults are needed to keep ktest.pl from complaining. They are
208 # ignored because the test does not go pass the build. No install or
209 # booting of the target images.
218 LOCALVERSION = version
222 POWEROFF_ON_ERROR = 0
223 POWEROFF_ON_SUCCESS = 0
224 REBOOT_ON_SUCCESS = 0