1 # patchcheck.conf 2 # 3 # This contains a test that takes two git commits and will test each 4 # commit between the two. The build test will look at what files the 5 # commit has touched, and if any of those files produce a warning, then 6 # the build will fail. 7 8 9 # PATCH_START is the commit to begin with and PATCH_END is the commit 10 # to end with (inclusive). This is similar to doing a git rebase -i PATCH_START~1 11 # and then testing each commit and doing a git rebase --continue. 12 # You can use a SHA1, a git tag, or anything that git will accept for a checkout 13 14 PATCH_START := HEAD~3 15 PATCH_END := HEAD 16 17 # Use the oldconfig if build_type wasn't defined 18 DEFAULTS IF NOT DEFINED BUILD_TYPE 19 DO_BUILD_TYPE := oldconfig 20 21 DEFAULTS ELSE 22 DO_BUILD_TYPE := ${BUILD_TYPE} 23 24 DEFAULTS 25 26 27 # Change PATCH_CHECKOUT to be the branch you want to test. The test will 28 # do a git checkout of this branch before starting. Obviously both 29 # PATCH_START and PATCH_END must be in this branch (and PATCH_START must 30 # be contained by PATCH_END). 31 32 PATCH_CHECKOUT := test/branch 33 34 # Usually it's a good idea to have a set config to use for testing individual 35 # patches. 36 PATCH_CONFIG := ${CONFIG_DIR}/config-patchcheck 37 38 # Change PATCH_TEST to run some test for each patch. Each commit that is 39 # tested, after it is built and installed on the test machine, this command 40 # will be executed. Usually what is done is to ssh to the target box and 41 # run some test scripts. If you just want to boot test your patches 42 # comment PATCH_TEST out. 43 PATCH_TEST := ${SSH} "/usr/local/bin/ktest-test-script" 44 45 DEFAULTS IF DEFINED PATCH_TEST 46 PATCH_TEST_TYPE := test 47 48 DEFAULTS ELSE 49 PATCH_TEST_TYPE := boot 50 51 # If for some reason a file has a warning that one of your patches touch 52 # but you do not care about it, set IGNORE_WARNINGS to that commit(s) 53 # (space delimited) 54 #IGNORE_WARNINGS = 39eaf7ef884dcc44f7ff1bac803ca2a1dcf43544 6edb2a8a385f0cdef51dae37ff23e74d76d8a6ce 55 56 # Instead of just checking for warnings to files that are changed 57 # it can be advantageous to check for any new warnings. If a 58 # header file is changed, it could cause a warning in a file not 59 # touched by the commit. To detect these kinds of warnings, you 60 # can use the WARNINGS_FILE option. 61 # 62 # If the variable CREATE_WARNINGS_FILE is set, this config will 63 # enable the WARNINGS_FILE during the patchcheck test. Also, 64 # before running the patchcheck test, it will create the 65 # warnings file. 66 # 67 DEFAULTS IF DEFINED CREATE_WARNINGS_FILE 68 WARNINGS_FILE = ${OUTPUT_DIR}/warnings_file 69 70 TEST_START IF DEFINED CREATE_WARNINGS_FILE 71 # WARNINGS_FILE is already set by the DEFAULTS above 72 TEST_TYPE = make_warnings_file 73 # Checkout the commit before the patches to test, 74 # and record all the warnings that exist before the patches 75 # to test are added 76 CHECKOUT = ${PATCHCHECK_START}~1 77 # Force a full build 78 BUILD_NOCLEAN = 0 79 BUILD_TYPE = ${DO_BUILD_TYPE} 80 81 # If you are running a multi test, and the test failed on the first 82 # test but on, say the 5th patch. If you want to restart on the 83 # fifth patch, set PATCH_START1. This will make the first test start 84 # from this commit instead of the PATCH_START commit. 85 # Note, do not change this option. Just define PATCH_START1 in the 86 # top config (the one you pass to ktest.pl), and this will use it, 87 # otherwise it will just use PATCH_START if PATCH_START1 is not defined. 88 DEFAULTS IF NOT DEFINED PATCH_START1 89 PATCH_START1 := ${PATCH_START} 90 91 TEST_START IF ${TEST} == patchcheck 92 TEST_TYPE = patchcheck 93 MIN_CONFIG = ${PATCH_CONFIG} 94 TEST = ${PATCH_TEST} 95 PATCHCHECK_TYPE = ${PATCH_TEST_TYPE} 96 PATCHCHECK_START = ${PATCH_START1} 97 PATCHCHECK_END = ${PATCH_END} 98 CHECKOUT = ${PATCH_CHECKOUT} 99 BUILD_TYPE = ${DO_BUILD_TYPE} 100 101 TEST_START IF ${TEST} == patchcheck && ${MULTI} 102 TEST_TYPE = patchcheck 103 MIN_CONFIG = ${PATCH_CONFIG} 104 TEST = ${PATCH_TEST} 105 PATCHCHECK_TYPE = ${PATCH_TEST_TYPE} 106 PATCHCHECK_START = ${PATCH_START} 107 PATCHCHECK_END = ${PATCH_END} 108 CHECKOUT = ${PATCH_CHECKOUT} 109 # Use multi to test different compilers? 110 MAKE_CMD = CC=gcc-4.5.1 make 111 BUILD_TYPE = ${DO_BUILD_TYPE}
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.