tools.sh 

Fuego wiki

Login or create account

tools.sh

The tools.sh file provides the definitions for variables used for each platform's toolchains.

A single tools.sh file is located at the directory /fuego-ro/toolchains/tools.sh This file uses the PLATFORM environment variable to load a tools.sh file for a particular toolchain.

An individual platform tools file should be named <PLATFORM>-tools.sh, and be located in the /fuego-ro/toolchains directory.

A new <PLATFORM>-tools.sh files must be added whenever a toolchain or SDK is added to the system.

For example, for the platform 'poky-qemuarm', the file /fuego-ro/toolchains/poky-qemuarm-tools.sh sets the variables needed to compile programs with that toolchain.

The variables that should be exported are:

  • CC - C compiler
  • CXX - C++ compiler
  • CPP - C pre-processor
  • CXXCPP - C++ pre-processor
  • CONFIGURE_FLAGS - flags for the configure script
  • RANLIB - archive index generator (for libs)
  • AS - assembler
  • LD - linker
  • ARCH - architecture
  • CROSS_COMPILE - tool prefix used to build the kernel
  • PREFIX - prefix used with most tools
  • HOST - used with configure --host=$HOST, to specify the machine you are building for
  • SDKROOT - used as prefix for /usr/lib and /usr/include directories

The above variables are directly referenced by the Fuego system.

A few other variables may be used optionally by the build instructions for individual tests.

  • CFLAGS
  • LDFLAGS

Variable usage details [edit section]

Note that some tools variables are referenced in patch files. These don't count as uses from -tools.sh. because they are defined as part of the program build instructions with the program itself.

Here are some specific tools variables and what tests use them:

  • CFLAGS - compiler flags
    • used by Benchmark.netpipe, Benchmark.cyclictest, Benchmark.tiobench, Benchmark.dbench, Benchmark.ffsh, Benchmark.Dhrystone, Benchmark.lmbench2, Benchmark.himeno, Benchmark.nbench_byte, Benchmark.linpack, Benchmark.GLMark, Benchmakr.Whetstone, Functionall.synctest, Functiona.posixtestsuite, Functiona.scrashme, LTP, Functional.rmaptest, Functional.linus_stress, Functional.crashme
  • LDFLAGS - linker flags
    • used by Benchmark.netpipe, Benchmark.cyclictest, Benchmark.Dhrystone, Benchmark.signaltest, Benchmark.Whetstone, Functional.synctest, Functiona.posixtestsuite, Functiona.scrashme, LTP, Functional.rmaptest, Functional.linus_stress, Functional.crashme
  • HOST - this is passed to 'configure' with --host=$HOST
    • used by Benchmark.aim7, Benchmark.bonnie, Benchmark.dbench, Benchmark.ffsb, Benchmark.x11perf, Benchmark.iperf, Benchmark.gtkperf, Functional.ft2demos, netperf, Functional.glib, and Functional.stress.
  • SDKROOT - used as prefix for /usr/include and /usr/lib directories and files in builds
    • used by Benchmark.aim7, Benchmark.blobsallad, Benchmark.GLMark, Benchmark.GLMark, Benchmark.GLMark, Benchmark.gtkperf, Functional.aiostress, Functional.zlib, LTP, and Functional.ft2demos

TBWiki engine 1.8.3 by Tim Bird