Fix #includes and build a shared library.
[lwext4.git] / toolchain / generic.cmake
1 # Name of the target
2 set(CMAKE_SYSTEM_PROCESSOR generic)
3
4 # Toolchain settings
5 set(CMAKE_C_COMPILER    cc)
6 set(CMAKE_CXX_COMPILER  c++)
7 set(AS                  as)
8 set(AR                  ar)
9 set(OBJCOPY             objcopy)
10 set(OBJDUMP             objdump)
11 # set(SIZE                size)
12
13 set(CMAKE_C_FLAGS   "-std=gnu99 -fdata-sections -ffunction-sections" CACHE INTERNAL "c compiler flags")
14 set(CMAKE_CXX_FLAGS "-fdata-sections -ffunction-sections" CACHE INTERNAL "cxx compiler flags")
15 set(CMAKE_ASM_FLAGS "" CACHE INTERNAL "asm compiler flags")
16 if (APPLE)
17     set(CMAKE_EXE_LINKER_FLAGS "-dead_strip" CACHE INTERNAL "exe link flags")
18 else (APPLE)
19     set(CMAKE_EXE_LINKER_FLAGS "-Wl,--gc-sections" CACHE INTERNAL "exe link flags")
20 endif (APPLE)
21
22 SET(CMAKE_C_FLAGS_DEBUG "-O0 -g -ggdb3" CACHE INTERNAL "c debug compiler flags")
23 SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g -ggdb3" CACHE INTERNAL "cxx debug compiler flags")
24 SET(CMAKE_ASM_FLAGS_DEBUG "-g -ggdb3" CACHE INTERNAL "asm debug compiler flags")
25
26 SET(CMAKE_C_FLAGS_RELEASE "-O2 -g -ggdb3" CACHE INTERNAL "c release compiler flags")
27 SET(CMAKE_CXX_FLAGS_RELEASE "-O2 -g -ggdb3" CACHE INTERNAL "cxx release compiler flags")
28 SET(CMAKE_ASM_FLAGS_RELEASE "" CACHE INTERNAL "asm release compiler flags")