tools build: Add new build support
Adding new build framework into 'tools/build' to be used by tools. There's no change for actual building at this point, it comes in the next patches. The idea and more details are explained in the 'tools/build/Documentation/Build.txt' file. I adopted everything from the kernel build system, with some changes to allow for multiple binaries build definitions. While the kernel's build output is single image (forget modules) we need to be able to build several binaries/libraries. The basic idea is that sser provides 'Build' files with objects definitions like: perf-y += a.o perf-y += b.o libperf-y += c.o libperf-y += d.o and the build framework outputs files: perf-in.o # a.o, b.o compiled in libperf-in.o # c.o, d.o compiled in Signed-off-by: Jiri Olsa <jolsa@kernel.org> Tested-by: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com> Tested-by: Will Deacon <will.deacon@arm.com> Cc: Alexis Berlemont <alexis.berlemont@gmail.com> Cc: Borislav Petkov <bp@alien8.de> Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com> Cc: David Ahern <dsahern@gmail.com> Cc: Frederic Weisbecker <fweisbec@gmail.com> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Paul Mackerras <paulus@samba.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Stephane Eranian <eranian@google.com> Link: http://lkml.kernel.org/n/tip-fbj22h4av0otlxupwcmrxgpa@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:

committed by
Arnaldo Carvalho de Melo

vanhempi
39f5704399
commit
c819e2cf2e
42
tools/build/tests/run.sh
Executable file
42
tools/build/tests/run.sh
Executable file
@@ -0,0 +1,42 @@
|
||||
#!/bin/sh
|
||||
|
||||
function test_ex {
|
||||
make -C ex V=1 clean > ex.out 2>&1
|
||||
make -C ex V=1 >> ex.out 2>&1
|
||||
|
||||
if [ ! -x ./ex/ex ]; then
|
||||
echo FAILED
|
||||
exit -1
|
||||
fi
|
||||
|
||||
make -C ex V=1 clean > /dev/null 2>&1
|
||||
rm -f ex.out
|
||||
}
|
||||
|
||||
function test_ex_suffix {
|
||||
make -C ex V=1 clean > ex.out 2>&1
|
||||
|
||||
# use -rR to disable make's builtin rules
|
||||
make -rR -C ex V=1 ex.o >> ex.out 2>&1
|
||||
make -rR -C ex V=1 ex.i >> ex.out 2>&1
|
||||
make -rR -C ex V=1 ex.s >> ex.out 2>&1
|
||||
|
||||
if [ -x ./ex/ex ]; then
|
||||
echo FAILED
|
||||
exit -1
|
||||
fi
|
||||
|
||||
if [ ! -f ./ex/ex.o -o ! -f ./ex/ex.i -o ! -f ./ex/ex.s ]; then
|
||||
echo FAILED
|
||||
exit -1
|
||||
fi
|
||||
|
||||
make -C ex V=1 clean > /dev/null 2>&1
|
||||
rm -f ex.out
|
||||
}
|
||||
echo -n Testing..
|
||||
|
||||
test_ex
|
||||
test_ex_suffix
|
||||
|
||||
echo OK
|
Viittaa uudesa ongelmassa
Block a user