function test build in 'raw' format
= NAME = test_build = SYNOPSIS = Performs the actual steps needed to build the test software. = DESCRIPTION = This function is defined in the base test script for a test, and executes those commands required to build the software. When this function starts, the source code for the test program has been unpacked, and the current directory is the root directory where the source is located (in /userdata/buildzone/<''test_name''-''platform_name''/> == Commonly called functions or programs == This function can contain calls to just about any command, but there are some common commands used for building Linux source * patch - used to apply patches to the source * configure - used with autoconf-based source * make - used to build programs from source = EXAMPLES = Some sample contents are: {{{#!YellowBox function test_build { make && touch test_suite_ready || build_error "error building software" } }}} {{{#!YellowBox function test_build { configure make && touch test_suite_ready || build_error "error building software" } }}} {{{#!YellowBox function test_build { patch -N -s -p1 < $TEST_HOME/nbench_Makefile.patch rm -f pointer.h && touch pointer.h CLFAGS+= " -s -static -Wall -O3" make CFLAGS="${CFLAGS}" CC="$CC" AR="$AR" RANLIB="$RANLIB" CXX="$CXX" CPP="$CPP" CXXCPP="$CXXCPP" && touch test_suite_ready || build_error "error while building test" } }}} = ENVIRONMENT and ARGUMENTS = A number of environment variables are set (see [[Core interfaces]] and [[Variables]]) However, some variables that are commonly used in this function are: * $TEST_HOME - the directory where source materials for the test are located * This is often used to reference patch files * The toolchain variables: * $CC, $AR, $LD, $RANLIB, $CXX, $CPP, $CXXPP (see [[tools.sh]]) There are no arguments to this function. = RETURN = returns non-zero for error On success, the function should create the file 'test_suite_ready' in the root of the build directory. This is normally done with the 'touch' command, as shown in the examples. = SOURCE = Located in the base script for each test. The base test scripts are located in /home/jenkins/fuego/engine/tests/<test_name>. An example path would be: ''/home/jenkins/fuego/engine/tests/Functional.hello_world/hello_world.sh'' = SEE ALSO = * [[function_build|build]], [[function_pre_build|pre_build]], [[function_post_build|post_build]]