diff options
| author | Jon <[email protected]> | 2012-06-04 20:11:55 -0400 |
|---|---|---|
| committer | Jon <[email protected]> | 2012-06-04 21:19:57 -0400 |
| commit | dfce4a7b33464b39f7677cfb4d093f19c566e756 (patch) | |
| tree | 621d6c1e3bc4a29c621ef5f4aa2171b72e3fdb0e /cmake | |
| parent | 501f7f6027b99416b94f093bb30691c5ae43d7d0 (diff) | |
| download | mruby-dfce4a7b33464b39f7677cfb4d093f19c566e756.tar.gz mruby-dfce4a7b33464b39f7677cfb4d093f19c566e756.zip | |
Add Ubuntu -> Linux-on-ARM CMake toolchain files
Add separate sample CMake toolchain files targeting Linux running
on ARM, with and without hardware floating point support. Samples
use the `gcc-arm-linux-gnueabihf` and `gcc-arm-linux-gnueabi` cross
toolchains from the standard Ubuntu package repositories.
Diffstat (limited to 'cmake')
| -rw-r--r-- | cmake/Toolchain-Ubuntu-gnueabi.cmake.sample | 29 | ||||
| -rw-r--r-- | cmake/Toolchain-Ubuntu-gnueabihf.cmake.sample | 29 |
2 files changed, 58 insertions, 0 deletions
diff --git a/cmake/Toolchain-Ubuntu-gnueabi.cmake.sample b/cmake/Toolchain-Ubuntu-gnueabi.cmake.sample new file mode 100644 index 000000000..bf29a5cad --- /dev/null +++ b/cmake/Toolchain-Ubuntu-gnueabi.cmake.sample @@ -0,0 +1,29 @@ +# Sample toolchain file for building for ARM from an Ubuntu Linux system. +# +# Typical usage: +# 1) install cross compiler: `sudo apt-get install gcc-arm-linux-gnueabi` +# 2) cp cmake/Toolchain-Ubuntu-gnueabi.cmake.sample ~/Toolchain-Ubuntu-gnueabi.cmake +# 3) tweak toolchain values as needed +# 4) cd build +# 5) cmake -DCMAKE_TOOLCHAIN_FILE=~/Toolchain-Ubuntu-gnueabi.cmake .. + +# name of the target OS on which the built artifacts will run and the +# toolchain prefix. if target is an embedded system without an OS, set +# CMAKE_SYSTEM_NAME to `Generic` +set(CMAKE_SYSTEM_NAME Linux) +set(TOOLCHAIN_PREFIX arm-linux-gnueabi) + +# cross compilers to use for C +set(CMAKE_C_COMPILER ${TOOLCHAIN_PREFIX}-gcc) + +# target environment on the build host system +# set 1st to dir with the cross compiler's C/C++ headers/libs +# set 2nd to dir containing personal cross development headers/libs +set(CMAKE_FIND_ROOT_PATH /usr/${TOOLCHAIN_PREFIX} ~/crossdev/eabi) + +# modify default behavior of FIND_XXX() commands to +# search for headers/libs in the target environment and +# search for programs in the build host environment +set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) +set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) +set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) diff --git a/cmake/Toolchain-Ubuntu-gnueabihf.cmake.sample b/cmake/Toolchain-Ubuntu-gnueabihf.cmake.sample new file mode 100644 index 000000000..2d7f2769c --- /dev/null +++ b/cmake/Toolchain-Ubuntu-gnueabihf.cmake.sample @@ -0,0 +1,29 @@ +# Sample toolchain file for building for ARM (w/hw float support) from an Ubuntu Linux system. +# +# Typical usage: +# 1) install cross compiler: `sudo apt-get install gcc-arm-linux-gnueabihf` +# 2) cp cmake/Toolchain-Ubuntu-gnueabihf.cmake.sample ~/Toolchain-Ubuntu-gnueabihf.cmake +# 3) tweak toolchain values as needed +# 4) cd build +# 5) cmake -DCMAKE_TOOLCHAIN_FILE=~/Toolchain-Ubuntu-gnueabihf.cmake .. + +# name of the target OS on which the built artifacts will run and the +# toolchain prefix. if target is an embedded system without an OS, set +# CMAKE_SYSTEM_NAME to `Generic` +set(CMAKE_SYSTEM_NAME Linux) +set(TOOLCHAIN_PREFIX arm-linux-gnueabihf) + +# cross compilers to use for C +set(CMAKE_C_COMPILER ${TOOLCHAIN_PREFIX}-gcc) + +# target environment on the build host system +# set 1st to dir with the cross compiler's C/C++ headers/libs +# set 2nd to dir containing personal cross development headers/libs +set(CMAKE_FIND_ROOT_PATH /usr/${TOOLCHAIN_PREFIX} ~/crossdev/eabihf) + +# modify default behavior of FIND_XXX() commands to +# search for headers/libs in the target environment and +# search for programs in the build host environment +set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) +set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) +set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) |
