summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2012-09-18 06:29:19 -0700
committerYukihiro "Matz" Matsumoto <[email protected]>2012-09-18 06:29:19 -0700
commit25a98d2b89b31ac065a7eb4bd9f4fad7be5de24f (patch)
tree20032e8c76034b230d13f876c66da7403442b3fd
parent4bf51cdd420aee2b40ef0a48fa798da0c82db726 (diff)
parenta55ffc78e8f2a0847cfb05b1e40dda4078500d10 (diff)
downloadmruby-25a98d2b89b31ac065a7eb4bd9f4fad7be5de24f.tar.gz
mruby-25a98d2b89b31ac065a7eb4bd9f4fad7be5de24f.zip
Merge pull request #474 from monaka/pr-generic-sh-elf-support
Generic sh-elf target support.
-rw-r--r--cmake/Toolchain-OSX-GenericShElf.cmake.sample37
1 files changed, 37 insertions, 0 deletions
diff --git a/cmake/Toolchain-OSX-GenericShElf.cmake.sample b/cmake/Toolchain-OSX-GenericShElf.cmake.sample
new file mode 100644
index 000000000..1f847830a
--- /dev/null
+++ b/cmake/Toolchain-OSX-GenericShElf.cmake.sample
@@ -0,0 +1,37 @@
+#
+# Typical usage:
+# 0) install cmake version 2.8-9 or higher.
+# 1) install a PizzaFactory cross compiler
+# a) darwin toolchain targeting sh-elf: http://sourceforge.jp/projects/pf3gnuchains/downloads/50061/sh-pizzafactory-elf.pkg/
+# b) install pkg.
+# c) export PATH=$PATH:/pizza/bin
+# 2) cp cmake/Toolchain-OSX-GenericShElf.cmake.sample ~/Toolchain-OSX-GenericShElf.cmake
+# 3) tweak toolchain values as needed
+# 4) cd build
+# 5) cmake -DCMAKE_TOOLCHAIN_FILE=~/Toolchain-OSX-GenericShElf.cmake ..
+# 6) Run mirb on gdb
+# a) sh-pizzafactory-elf-gdb tools/mirb/mirb
+# b) target sim
+# c) load
+# d) run
+
+# name of the target OS on which the built artifacts will run
+# and the toolchain prefix
+set(CMAKE_SYSTEM_NAME Generic)
+set(TOOLCHAIN_PREFIX sh-pizzafactory-elf)
+
+# cross compilers to use for C and C++
+set(CMAKE_C_COMPILER ${TOOLCHAIN_PREFIX}-gcc)
+set(CMAKE_CXX_COMPILER ${TOOLCHAIN_PREFIX}-g++)
+
+# target environment(s) 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 /pizza/${TOOLCHAIN_PREFIX})
+
+# 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)