summaryrefslogtreecommitdiffstats
path: root/Modules/Platform
diff options
context:
space:
mode:
authorKars de Jong <kars.dejong@locamation.nl>2015-08-13 11:37:53 (GMT)
committerBrad King <brad.king@kitware.com>2015-08-17 14:32:50 (GMT)
commit462fbd1ecac6968f6c0695737c8e432c9660121c (patch)
tree7354b670971fea34d28e7323ad9197bc9fef83c9 /Modules/Platform
parenta38ea312c02eec6e4ee61015f70920999bf79ff9 (diff)
downloadCMake-462fbd1ecac6968f6c0695737c8e432c9660121c.zip
CMake-462fbd1ecac6968f6c0695737c8e432c9660121c.tar.gz
CMake-462fbd1ecac6968f6c0695737c8e432c9660121c.tar.bz2
Add support for ARTOS platform using GNU C with ac compiler driver
Add platform and compiler descriptions for ARTOS RTOS (locamation.com). Signed-off-by: Kars de Jong <kars.dejong@locamation.nl>
Diffstat (limited to 'Modules/Platform')
-rw-r--r--Modules/Platform/ARTOS-GNU-C.cmake9
-rw-r--r--Modules/Platform/ARTOS.cmake17
2 files changed, 26 insertions, 0 deletions
diff --git a/Modules/Platform/ARTOS-GNU-C.cmake b/Modules/Platform/ARTOS-GNU-C.cmake
new file mode 100644
index 0000000..967d0e7
--- /dev/null
+++ b/Modules/Platform/ARTOS-GNU-C.cmake
@@ -0,0 +1,9 @@
+# Define ARTOS to select proper behaviour and tell preprocessor to accept C++ style comments.
+set(CMAKE_C_FLAGS_INIT "-DARTOS -Xp -+")
+# ac doesn't support -g properly and doesn't support the normal gcc optimization options. Just use the defaults set by ac.
+set(CMAKE_C_FLAGS_DEBUG_INIT "")
+set(CMAKE_C_FLAGS_MINSIZEREL_INIT "-DNDEBUG")
+set(CMAKE_C_FLAGS_RELEASE_INIT "-DNDEBUG")
+set(CMAKE_C_FLAGS_RELWITHDEBINFO_INIT "-DNDEBUG")
+# Most projects expect the stdio functions to be available.
+set(CMAKE_C_STANDARD_LIBRARIES_INIT "stdio.a")
diff --git a/Modules/Platform/ARTOS.cmake b/Modules/Platform/ARTOS.cmake
new file mode 100644
index 0000000..f9365d6
--- /dev/null
+++ b/Modules/Platform/ARTOS.cmake
@@ -0,0 +1,17 @@
+# Support for ARTOS RTOS (locamation.com)
+set(CMAKE_LINK_LIBRARY_SUFFIX "")
+set(CMAKE_STATIC_LIBRARY_PREFIX "")
+set(CMAKE_STATIC_LIBRARY_SUFFIX ".a")
+set(CMAKE_SHARED_LIBRARY_PREFIX "")
+set(CMAKE_SHARED_LIBRARY_SUFFIX ".a")
+set(CMAKE_EXECUTABLE_SUFFIX ".x")
+set(CMAKE_DL_LIBS "")
+
+set(CMAKE_FIND_LIBRARY_PREFIXES "")
+set(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
+
+# ARTOS does not support shared libs
+set_property(GLOBAL PROPERTY TARGET_SUPPORTS_SHARED_LIBS FALSE)
+
+set(CMAKE_C_LINK_SHARED_LIBRARY )
+set(CMAKE_C_LINK_MODULE_LIBRARY )