Skip to content

Instantly share code, notes, and snippets.

@galpeter
Created May 26, 2015 10:56
Show Gist options
  • Save galpeter/4383e5d2a1c78c9a777d to your computer and use it in GitHub Desktop.
Save galpeter/4383e5d2a1c78c9a777d to your computer and use it in GitHub Desktop.
diff --git a/cmake/config/arm-nuttx.cmake b/cmake/config/arm-nuttx.cmake
index 93d4f8d..2224da3 100644
--- a/cmake/config/arm-nuttx.cmake
+++ b/cmake/config/arm-nuttx.cmake
@@ -27,21 +27,27 @@ CMAKE_FORCE_CXX_COMPILER(${EXTERNAL_CMAKE_CXX_COMPILER} GNU)
set(NO_PTHREAD YES)
set(BUILD_TO_LIB YES)
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D__NUTTX__")
+set(FLAGS_COMMON -mcpu=cortex-m4
+ -mthumb
+ -march=armv7e-m
+ -mfpu=fpv4-sp-d16
+ -mfloat-abi=hard
+ -D__NUTTX__
+ -Os
+ -fpermissive
+ -fno-strict-aliasing
+ -fomit-frame-pointer
+ -fno-strength-reduce)
+
+foreach(FLAG ${FLAGS_COMMON})
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${FLAG}")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${FLAG}")
+endforeach()
+
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fpermissive")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-exceptions")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-builtin")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-rtti")
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mcpu=cortex-m4")
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mthumb")
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=armv7e-m")
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mfpu=fpv4-sp-d16")
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mfloat-abi=hard")
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Os")
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-strict-aliasing")
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-strength-reduce")
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fomit-frame-pointer")
set(TARGET_INC ${TARGET_INC} "${NUTTX_HOME}/include")
set(TARGET_INC ${TARGET_INC} "${NUTTX_HOME}/include/cxx")
diff --git a/cmake/config/i686-linux.cmake b/cmake/config/i686-linux.cmake
index 06d7979..e6e3d84 100644
--- a/cmake/config/i686-linux.cmake
+++ b/cmake/config/i686-linux.cmake
@@ -17,9 +17,14 @@ include(CMakeForceCompiler)
set(CMAKE_SYSTEM_NAME Linux)
set(CMAKE_SYSTEM_PROCESSOR x86)
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D__LINUX__")
+set(FLAGS_COMMON -D__LINUX__
+ -fpermissive
+ -fno-builtin)
+
+foreach(FLAG ${FLAGS_COMMON})
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${FLAG}")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${FLAG}")
+endforeach()
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fpermissive")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-exceptions")
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-builtin")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-rtti")
diff --git a/cmake/config/x86_64-darwin.cmake b/cmake/config/x86_64-darwin.cmake
index 64a5a8e..593db76 100644
--- a/cmake/config/x86_64-darwin.cmake
+++ b/cmake/config/x86_64-darwin.cmake
@@ -17,10 +17,15 @@ include(CMakeForceCompiler)
set(CMAKE_SYSTEM_NAME Darwin)
set(CMAKE_SYSTEM_PROCESSOR x86_64)
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D__DARWIN__")
+set(FLAGS_COMMON -D__DARWIN__
+ -fpermissive
+ -fno-builtin)
+
+foreach(FLAG ${FLAGS_COMMON})
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${FLAG}")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${FLAG}")
+endforeach()
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fpermissive")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-exceptions")
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-builtin")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-rtti")
diff --git a/cmake/config/x86_64-linux.cmake b/cmake/config/x86_64-linux.cmake
index 42ecea6..2533cba 100644
--- a/cmake/config/x86_64-linux.cmake
+++ b/cmake/config/x86_64-linux.cmake
@@ -17,9 +17,14 @@ include(CMakeForceCompiler)
set(CMAKE_SYSTEM_NAME Linux)
set(CMAKE_SYSTEM_PROCESSOR x86_64)
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D__LINUX__")
+set(FLAGS_COMMON -D__LINUX__
+ -fpermissive
+ -fno-builtin)
+
+foreach(FLAG ${FLAGS_COMMON})
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${FLAG}")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${FLAG}")
+endforeach()
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fpermissive")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-exceptions")
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-builtin")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-rtti")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment