Build system refactoring.
[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 \r
10 #Library build\r
11 add_subdirectory(lwext4)\r
12 #Detect all possible warnings for lwext4 target\r
13 set_target_properties(lwext4 PROPERTIES COMPILE_FLAGS "-Wall -Wextra -pedantic")\r
14 \r
15 #Examples\r
16 if    (CMAKE_SYSTEM_PROCESSOR STREQUAL  cortex-m3)\r
17     #cortex-m3 demos\r
18     #...\r
19 elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL  cortex-m4)\r
20     #cortex-m4 demos\r
21     add_subdirectory(demos/stm32f429_disco)\r
22 elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL  bf518)\r
23     #bf518 demos\r
24     #...\r
25 else()\r
26     #Generic example target\r
27     add_subdirectory(blockdev)\r
28     add_subdirectory(fs_test)\r
29     add_subdirectory(demos/generic)\r
30 endif()\r
31 \r
32 \r
33 #DISTRIBUTION\r
34 set(CPACK_PACKAGE_VERSION_MAJOR "0")\r
35 set(CPACK_PACKAGE_VERSION_MINOR "4")\r
36 set(CPACK_PACKAGE_VERSION_PATCH "0")\r
37 set(CPACK_SOURCE_GENERATOR "TBZ2")\r
38 set(CPACK_SOURCE_PACKAGE_FILE_NAME\r
39   "${CMAKE_PROJECT_NAME}-${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")\r
40 set(CPACK_SOURCE_IGNORE_FILES\r
41 "/build" ".svn")\r
42 include(CPack)\r
43 \r
44 add_custom_target(dist COMMAND ${CMAKE_MAKE_PROGRAM} package_source)\r