Multiple fixes related to basic block type
[lwext4.git] / CMakeLists.txt
1 project(lwext4 C)\r
2 cmake_minimum_required(VERSION 2.8)\r
3 \r
4 \r
5 include_directories(lwext4)\r
6 include_directories(blockdev/filedev)\r
7 include_directories(blockdev/filedev_win)\r
8 \r
9 set(BLOCKDEV_TYPE  none)\r
10 \r
11 #Examples\r
12 if    (CMAKE_SYSTEM_PROCESSOR STREQUAL  cortex-m0)\r
13     #cortex-m0 demos\r
14     #...\r
15 elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL  cortex-m3)\r
16     #cortex-m3 demos\r
17 \r
18 elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL  arm-sim)\r
19     #arm-sim demos\r
20     add_subdirectory(blockdev)\r
21     add_subdirectory(demos/generic)\r
22 elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL  cortex-m4)\r
23     #cortex-m4 demos\r
24     add_subdirectory(demos/stm32f429_disco)\r
25 elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL  bf518)\r
26     add_definitions(-DCONFIG_HAVE_OWN_OFLAGS=1)\r
27     #bf518 demos\r
28     #...\r
29 elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL  avrxmega7)\r
30     add_definitions(-DCONFIG_HAVE_OWN_OFLAGS=1)\r
31     #avrxmega7 demos\r
32     #...\r
33 elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL  msp430g2210)\r
34     add_definitions(-DCONFIG_DEBUG_PRINTF=0)\r
35     add_definitions(-DCONFIG_DEBUG_ASSERT=0)\r
36     add_definitions(-DCONFIG_HAVE_OWN_OFLAGS=1)\r
37     #msp430f6459 demos\r
38     #...\r
39 else()\r
40     #Generic example target\r
41     set(BLOCKDEV_TYPE  linux)\r
42     add_definitions(-DCONFIG_EXTENT_FULL=1)\r
43     add_definitions(-DCONFIG_HAVE_OWN_OFLAGS=0)\r
44     add_definitions(-DCONFIG_HAVE_OWN_ERRNO=0)\r
45     add_definitions(-DCONFIG_HAVE_OWN_ASSERT=0)\r
46     add_definitions(-DCONFIG_BLOCK_DEV_CACHE_SIZE=16)\r
47     add_subdirectory(fs_test)\r
48     add_subdirectory(demos/generic)\r
49 endif()\r
50 \r
51 add_subdirectory(blockdev)\r
52 \r
53 #Library build\r
54 add_subdirectory(lwext4)\r
55 #Detect all possible warnings for lwext4 target\r
56 set_target_properties(lwext4 PROPERTIES COMPILE_FLAGS "-Wall -Wextra -pedantic")\r
57 \r
58 \r
59 #DISTRIBUTION\r
60 set(CPACK_PACKAGE_VERSION_MAJOR "0")\r
61 set(CPACK_PACKAGE_VERSION_MINOR "8")\r
62 set(CPACK_PACKAGE_VERSION_PATCH "0")\r
63 set(CPACK_SOURCE_GENERATOR "TBZ2")\r
64 set(CPACK_SOURCE_PACKAGE_FILE_NAME\r
65   "${CMAKE_PROJECT_NAME}-${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")\r
66 set(CPACK_SOURCE_IGNORE_FILES\r
67 "/build" ".git")\r
68 include(CPack)\r
69 \r
70 add_custom_target(dist COMMAND ${CMAKE_MAKE_PROGRAM} package_source)\r