summaryrefslogtreecommitdiff
path: root/toolchain/generic.cmake
diff options
context:
space:
mode:
authorgkostka <kostka.grzegorz@gmail.com>2014-05-20 23:41:24 +0000
committergkostka <kostka.grzegorz@gmail.com>2014-05-20 23:41:24 +0000
commit6f2630560d50340611b372d58c1f450106df5467 (patch)
treea19de50f04e51c8a86ca98d2f3cdf237e06f6ffa /toolchain/generic.cmake
parentb6a7544b8c5b52b1d13f3b9c7c94cdabb6bf5ed1 (diff)
Build system refactoring.
Diffstat (limited to 'toolchain/generic.cmake')
-rw-r--r--toolchain/generic.cmake25
1 files changed, 25 insertions, 0 deletions
diff --git a/toolchain/generic.cmake b/toolchain/generic.cmake
new file mode 100644
index 0000000..d9f5ef6
--- /dev/null
+++ b/toolchain/generic.cmake
@@ -0,0 +1,25 @@
+# Name of the target
+set(CMAKE_SYSTEM_PROCESSOR generic)
+
+# Toolchain settings
+set(CMAKE_C_COMPILER gcc)
+set(CMAKE_CXX_COMPILER g++)
+set(AS as)
+set(AR ar)
+set(OBJCOPY objcopy)
+set(OBJDUMP objdump)
+set(SIZE size)
+
+set(CMAKE_C_FLAGS "-std=gnu99 -fdata-sections -ffunction-sections" CACHE INTERNAL "c compiler flags")
+set(CMAKE_CXX_FLAGS "-fdata-sections -ffunction-sections" CACHE INTERNAL "cxx compiler flags")
+set(CMAKE_ASM_FLAGS "" CACHE INTERNAL "asm compiler flags")
+set(CMAKE_EXE_LINKER_FLAGS "-Wl,--gc-sections" CACHE INTERNAL "exe link flags")
+
+
+SET(CMAKE_C_FLAGS_DEBUG "-O0 -g -ggdb3" CACHE INTERNAL "c debug compiler flags")
+SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g -ggdb3" CACHE INTERNAL "cxx debug compiler flags")
+SET(CMAKE_ASM_FLAGS_DEBUG "-g -ggdb3" CACHE INTERNAL "asm debug compiler flags")
+
+SET(CMAKE_C_FLAGS_RELEASE "-O2" CACHE INTERNAL "c release compiler flags")
+SET(CMAKE_CXX_FLAGS_RELEASE "-O2" CACHE INTERNAL "cxx release compiler flags")
+SET(CMAKE_ASM_FLAGS_RELEASE "" CACHE INTERNAL "asm release compiler flags") \ No newline at end of file