From 4bc21c454fc0583e249db3f23a3cf7aca72dd61d Mon Sep 17 00:00:00 2001 From: Sven Gothel Date: Tue, 23 Apr 2013 20:07:58 +0200 Subject: Add cmake toolchain files for armv6 (armv5t-softfp) and armv6hf (armv6-hardfp), incl. sym-links to cross compiler --- cmake/toolchain.gcc-armv6.cmake | 13 +++++++++++++ cmake/toolchain.gcc-armv6hf.cmake | 13 +++++++++++++ scripts/arm-linux-gnueabi | 1 + scripts/arm-linux-gnueabihf | 1 + scripts/make.gcc-armv6-cross.sh | 13 +++++++++++++ scripts/make.gcc-armv6hf-cross.sh | 11 +++++++++++ scripts/sys-arm-linux-gnueabi/bin/gcc | 1 + scripts/sys-arm-linux-gnueabi/bin/ld | 1 + scripts/sys-arm-linux-gnueabi/bin/objdump | 1 + scripts/sys-arm-linux-gnueabi/bin/strip | 1 + scripts/sys-arm-linux-gnueabihf/bin/gcc | 1 + scripts/sys-arm-linux-gnueabihf/bin/ld | 1 + scripts/sys-arm-linux-gnueabihf/bin/objdump | 1 + scripts/sys-arm-linux-gnueabihf/bin/strip | 1 + scripts/xtools-armhf-linux-gnueabi/bin/gcc | 1 + scripts/xtools-armhf-linux-gnueabi/bin/ld | 1 + scripts/xtools-armhf-linux-gnueabi/bin/objdump | 1 + scripts/xtools-armhf-linux-gnueabi/bin/strip | 1 + scripts/xtools-armsf-linux-gnueabi/bin/gcc | 1 + scripts/xtools-armsf-linux-gnueabi/bin/ld | 1 + scripts/xtools-armsf-linux-gnueabi/bin/objdump | 1 + scripts/xtools-armsf-linux-gnueabi/bin/strip | 1 + 22 files changed, 68 insertions(+) create mode 100644 cmake/toolchain.gcc-armv6.cmake create mode 100644 cmake/toolchain.gcc-armv6hf.cmake create mode 120000 scripts/arm-linux-gnueabi create mode 120000 scripts/arm-linux-gnueabihf create mode 100755 scripts/make.gcc-armv6-cross.sh create mode 100755 scripts/make.gcc-armv6hf-cross.sh create mode 120000 scripts/sys-arm-linux-gnueabi/bin/gcc create mode 120000 scripts/sys-arm-linux-gnueabi/bin/ld create mode 120000 scripts/sys-arm-linux-gnueabi/bin/objdump create mode 120000 scripts/sys-arm-linux-gnueabi/bin/strip create mode 120000 scripts/sys-arm-linux-gnueabihf/bin/gcc create mode 120000 scripts/sys-arm-linux-gnueabihf/bin/ld create mode 120000 scripts/sys-arm-linux-gnueabihf/bin/objdump create mode 120000 scripts/sys-arm-linux-gnueabihf/bin/strip create mode 120000 scripts/xtools-armhf-linux-gnueabi/bin/gcc create mode 120000 scripts/xtools-armhf-linux-gnueabi/bin/ld create mode 120000 scripts/xtools-armhf-linux-gnueabi/bin/objdump create mode 120000 scripts/xtools-armhf-linux-gnueabi/bin/strip create mode 120000 scripts/xtools-armsf-linux-gnueabi/bin/gcc create mode 120000 scripts/xtools-armsf-linux-gnueabi/bin/ld create mode 120000 scripts/xtools-armsf-linux-gnueabi/bin/objdump create mode 120000 scripts/xtools-armsf-linux-gnueabi/bin/strip diff --git a/cmake/toolchain.gcc-armv6.cmake b/cmake/toolchain.gcc-armv6.cmake new file mode 100644 index 00000000..931afa57 --- /dev/null +++ b/cmake/toolchain.gcc-armv6.cmake @@ -0,0 +1,13 @@ +# For normal gcc compilation, but use static-libgcc + +set(CMAKE_C_FLAGS "-fpic -march=armv5te -marm -mfloat-abi=softfp -include ${CMAKE_MODULE_PATH}/glibc-compat-symbols.h") + +set(CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS}" CACHE STRING "c++ flags") +set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}" CACHE STRING "c flags") + +set(LINKER_FLAGS "-fpic -march=armv5te -marm -mfloat-abi=softfp -static-libgcc") + +set(CMAKE_SHARED_LINKER_FLAGS "${LINKER_FLAGS}" CACHE STRING "linker flags" FORCE) +set(CMAKE_MODULE_LINKER_FLAGS "${LINKER_FLAGS}" CACHE STRING "linker flags" FORCE) +set(CMAKE_EXE_LINKER_FLAGS "${LINKER_FLAGS}" CACHE STRING "linker flags" FORCE) + diff --git a/cmake/toolchain.gcc-armv6hf.cmake b/cmake/toolchain.gcc-armv6hf.cmake new file mode 100644 index 00000000..f6edc136 --- /dev/null +++ b/cmake/toolchain.gcc-armv6hf.cmake @@ -0,0 +1,13 @@ +# For normal gcc compilation, but use static-libgcc + +set(CMAKE_C_FLAGS "-fpic -march=armv6 -marm -mfloat-abi=hard -include ${CMAKE_MODULE_PATH}/glibc-compat-symbols.h") + +set(CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS}" CACHE STRING "c++ flags") +set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}" CACHE STRING "c flags") + +set(LINKER_FLAGS "-fpic -march=armv6 -marm -mfloat-abi=hard -static-libgcc") + +set(CMAKE_SHARED_LINKER_FLAGS "${LINKER_FLAGS}" CACHE STRING "linker flags" FORCE) +set(CMAKE_MODULE_LINKER_FLAGS "${LINKER_FLAGS}" CACHE STRING "linker flags" FORCE) +set(CMAKE_EXE_LINKER_FLAGS "${LINKER_FLAGS}" CACHE STRING "linker flags" FORCE) + diff --git a/scripts/arm-linux-gnueabi b/scripts/arm-linux-gnueabi new file mode 120000 index 00000000..8b9c9e18 --- /dev/null +++ b/scripts/arm-linux-gnueabi @@ -0,0 +1 @@ +xtools-armsf-linux-gnueabi \ No newline at end of file diff --git a/scripts/arm-linux-gnueabihf b/scripts/arm-linux-gnueabihf new file mode 120000 index 00000000..cb71826d --- /dev/null +++ b/scripts/arm-linux-gnueabihf @@ -0,0 +1 @@ +xtools-armhf-linux-gnueabi \ No newline at end of file diff --git a/scripts/make.gcc-armv6-cross.sh b/scripts/make.gcc-armv6-cross.sh new file mode 100755 index 00000000..2eaa1cdf --- /dev/null +++ b/scripts/make.gcc-armv6-cross.sh @@ -0,0 +1,13 @@ +#! /bin/sh + +SDIR=`dirname $0` +CDIR=$SDIR/../cmake + +PATH=$SDIR/arm-linux-gnueabi/bin:$PATH +export PATH + +which gcc + +cmake .. -DCMAKE_TOOLCHAIN_FILE=$CDIR/toolchain.gcc-armv6.cmake +make + diff --git a/scripts/make.gcc-armv6hf-cross.sh b/scripts/make.gcc-armv6hf-cross.sh new file mode 100755 index 00000000..406e5241 --- /dev/null +++ b/scripts/make.gcc-armv6hf-cross.sh @@ -0,0 +1,11 @@ +#! /bin/sh + +SDIR=`dirname $0` +CDIR=$SDIR/../cmake + +PATH=$SDIR/arm-linux-gnueabihf/bin:$PATH +export PATH + +cmake .. -DCMAKE_TOOLCHAIN_FILE=$CDIR/toolchain.gcc-armv6hf.cmake +make + diff --git a/scripts/sys-arm-linux-gnueabi/bin/gcc b/scripts/sys-arm-linux-gnueabi/bin/gcc new file mode 120000 index 00000000..edeaa99b --- /dev/null +++ b/scripts/sys-arm-linux-gnueabi/bin/gcc @@ -0,0 +1 @@ +/usr/bin/arm-linux-gnueabi-gcc \ No newline at end of file diff --git a/scripts/sys-arm-linux-gnueabi/bin/ld b/scripts/sys-arm-linux-gnueabi/bin/ld new file mode 120000 index 00000000..68f4fae2 --- /dev/null +++ b/scripts/sys-arm-linux-gnueabi/bin/ld @@ -0,0 +1 @@ +/usr/bin/arm-linux-gnueabi-ld \ No newline at end of file diff --git a/scripts/sys-arm-linux-gnueabi/bin/objdump b/scripts/sys-arm-linux-gnueabi/bin/objdump new file mode 120000 index 00000000..a48d9ee9 --- /dev/null +++ b/scripts/sys-arm-linux-gnueabi/bin/objdump @@ -0,0 +1 @@ +/usr/bin/arm-linux-gnueabi-objdump \ No newline at end of file diff --git a/scripts/sys-arm-linux-gnueabi/bin/strip b/scripts/sys-arm-linux-gnueabi/bin/strip new file mode 120000 index 00000000..8dab56bf --- /dev/null +++ b/scripts/sys-arm-linux-gnueabi/bin/strip @@ -0,0 +1 @@ +/usr/bin/arm-linux-gnueabi-strip \ No newline at end of file diff --git a/scripts/sys-arm-linux-gnueabihf/bin/gcc b/scripts/sys-arm-linux-gnueabihf/bin/gcc new file mode 120000 index 00000000..dca59c0f --- /dev/null +++ b/scripts/sys-arm-linux-gnueabihf/bin/gcc @@ -0,0 +1 @@ +/usr/bin/arm-linux-gnueabihf-gcc \ No newline at end of file diff --git a/scripts/sys-arm-linux-gnueabihf/bin/ld b/scripts/sys-arm-linux-gnueabihf/bin/ld new file mode 120000 index 00000000..bce9f7fb --- /dev/null +++ b/scripts/sys-arm-linux-gnueabihf/bin/ld @@ -0,0 +1 @@ +/usr/bin/arm-linux-gnueabihf-ld \ No newline at end of file diff --git a/scripts/sys-arm-linux-gnueabihf/bin/objdump b/scripts/sys-arm-linux-gnueabihf/bin/objdump new file mode 120000 index 00000000..ded739ce --- /dev/null +++ b/scripts/sys-arm-linux-gnueabihf/bin/objdump @@ -0,0 +1 @@ +/usr/bin/arm-linux-gnueabihf-objdump \ No newline at end of file diff --git a/scripts/sys-arm-linux-gnueabihf/bin/strip b/scripts/sys-arm-linux-gnueabihf/bin/strip new file mode 120000 index 00000000..c941465e --- /dev/null +++ b/scripts/sys-arm-linux-gnueabihf/bin/strip @@ -0,0 +1 @@ +/usr/bin/arm-linux-gnueabihf-strip \ No newline at end of file diff --git a/scripts/xtools-armhf-linux-gnueabi/bin/gcc b/scripts/xtools-armhf-linux-gnueabi/bin/gcc new file mode 120000 index 00000000..ad74056d --- /dev/null +++ b/scripts/xtools-armhf-linux-gnueabi/bin/gcc @@ -0,0 +1 @@ +/usr/local/x-tools/armhf-unknown-linux-gnueabi/bin/armhf-unknown-linux-gnueabi-gcc \ No newline at end of file diff --git a/scripts/xtools-armhf-linux-gnueabi/bin/ld b/scripts/xtools-armhf-linux-gnueabi/bin/ld new file mode 120000 index 00000000..6d1bd138 --- /dev/null +++ b/scripts/xtools-armhf-linux-gnueabi/bin/ld @@ -0,0 +1 @@ +/usr/local/x-tools/armhf-unknown-linux-gnueabi/bin/armhf-unknown-linux-gnueabi-ld \ No newline at end of file diff --git a/scripts/xtools-armhf-linux-gnueabi/bin/objdump b/scripts/xtools-armhf-linux-gnueabi/bin/objdump new file mode 120000 index 00000000..9502840a --- /dev/null +++ b/scripts/xtools-armhf-linux-gnueabi/bin/objdump @@ -0,0 +1 @@ +/usr/local/x-tools/armhf-unknown-linux-gnueabi/bin/armhf-unknown-linux-gnueabi-objdump \ No newline at end of file diff --git a/scripts/xtools-armhf-linux-gnueabi/bin/strip b/scripts/xtools-armhf-linux-gnueabi/bin/strip new file mode 120000 index 00000000..a4ce5087 --- /dev/null +++ b/scripts/xtools-armhf-linux-gnueabi/bin/strip @@ -0,0 +1 @@ +/usr/local/x-tools/armhf-unknown-linux-gnueabi/bin/armhf-unknown-linux-gnueabi-strip \ No newline at end of file diff --git a/scripts/xtools-armsf-linux-gnueabi/bin/gcc b/scripts/xtools-armsf-linux-gnueabi/bin/gcc new file mode 120000 index 00000000..171bfb69 --- /dev/null +++ b/scripts/xtools-armsf-linux-gnueabi/bin/gcc @@ -0,0 +1 @@ +/usr/local/x-tools/armsf-unknown-linux-gnueabi/bin/armsf-unknown-linux-gnueabi-gcc \ No newline at end of file diff --git a/scripts/xtools-armsf-linux-gnueabi/bin/ld b/scripts/xtools-armsf-linux-gnueabi/bin/ld new file mode 120000 index 00000000..f10f5b85 --- /dev/null +++ b/scripts/xtools-armsf-linux-gnueabi/bin/ld @@ -0,0 +1 @@ +/usr/local/x-tools/armsf-unknown-linux-gnueabi/bin/armsf-unknown-linux-gnueabi-ld \ No newline at end of file diff --git a/scripts/xtools-armsf-linux-gnueabi/bin/objdump b/scripts/xtools-armsf-linux-gnueabi/bin/objdump new file mode 120000 index 00000000..8e28b950 --- /dev/null +++ b/scripts/xtools-armsf-linux-gnueabi/bin/objdump @@ -0,0 +1 @@ +/usr/local/x-tools/armsf-unknown-linux-gnueabi/bin/armsf-unknown-linux-gnueabi-objdump \ No newline at end of file diff --git a/scripts/xtools-armsf-linux-gnueabi/bin/strip b/scripts/xtools-armsf-linux-gnueabi/bin/strip new file mode 120000 index 00000000..1e5fe910 --- /dev/null +++ b/scripts/xtools-armsf-linux-gnueabi/bin/strip @@ -0,0 +1 @@ +/usr/local/x-tools/armsf-unknown-linux-gnueabi/bin/armsf-unknown-linux-gnueabi-strip \ No newline at end of file -- cgit v1.2.3