Add ext4_mkfs_read_info function
[lwext4.git] / CMakeLists.txt
index 2f630fb7aa229634d2d7221b5ce60a58e2549cbf..f4c95d49393a42a16428eb6a44fc84a3288c7b2e 100644 (file)
@@ -2,40 +2,68 @@ project(lwext4 C)
 cmake_minimum_required(VERSION 2.8)\r
 \r
 \r
-#LIBRARY\r
-include_directories(. lwext4)\r
-aux_source_directory(lwext4 LWEXT4_SRC)\r
-add_library(lwext4  ${LWEXT4_SRC})\r
+include_directories(lwext4)\r
+include_directories(blockdev/filedev)\r
+include_directories(blockdev/filedev_win)\r
+\r
+set(BLOCKDEV_TYPE  none)\r
 \r
 #Examples\r
-if(CMAKE_SYSTEM_PROCESSOR STREQUAL  cortex-m3)\r
-    #Library size print\r
-    add_custom_target(lib_size ALL DEPENDS lwext4 COMMAND ${SIZE} -B liblwext4.a)\r
+if    (CMAKE_SYSTEM_PROCESSOR STREQUAL  cortex-m0)\r
+    #cortex-m0 demos\r
+    #...\r
+elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL  cortex-m3)\r
+    #cortex-m3 demos\r
+\r
+elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL  arm-sim)\r
+    #arm-sim demos\r
+    add_subdirectory(blockdev)\r
+    add_subdirectory(demos/generic)\r
 elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL  cortex-m4)\r
-    #Library size print\r
-    add_custom_target(lib_size ALL DEPENDS lwext4 COMMAND ${SIZE} -B liblwext4.a)\r
-    #Discoery disco demo\r
-    include(demos/stm32f429_disco/stm32f429_demo.cmake)\r
+    #cortex-m4 demos\r
+    add_subdirectory(demos/stm32f429_disco)\r
 elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL  bf518)\r
-    #Library size print\r
-    add_custom_target(lib_size ALL DEPENDS lwext4 COMMAND ${SIZE} -B liblwext4.a)\r
+    add_definitions(-DCONFIG_HAVE_OWN_OFLAGS=1)\r
+    #bf518 demos\r
+    #...\r
+elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL  avrxmega7)\r
+    add_definitions(-DCONFIG_HAVE_OWN_OFLAGS=1)\r
+    #avrxmega7 demos\r
+    #...\r
+elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL  msp430g2210)\r
+    add_definitions(-DCONFIG_DEBUG_PRINTF=0)\r
+    add_definitions(-DCONFIG_DEBUG_ASSERT=0)\r
+    add_definitions(-DCONFIG_HAVE_OWN_OFLAGS=1)\r
+    #msp430f6459 demos\r
+    #...\r
 else()\r
-    #Library size print\r
-    add_custom_target(lib_size ALL DEPENDS lwext4 COMMAND size -B liblwext4.a)\r
     #Generic example target\r
-    include(demos/generic/generic.cmake)\r
-    include(fs_test/fs_test.cmake)\r
+    set(BLOCKDEV_TYPE  linux)\r
+    add_definitions(-DCONFIG_HAVE_OWN_OFLAGS=0)\r
+    add_definitions(-DCONFIG_HAVE_OWN_ERRNO=0)\r
+    add_definitions(-DCONFIG_HAVE_OWN_ASSERT=0)\r
+    add_definitions(-DCONFIG_BLOCK_DEV_CACHE_SIZE=16)\r
+    add_subdirectory(fs_test)\r
+    add_subdirectory(demos/generic)\r
 endif()\r
 \r
+add_subdirectory(blockdev)\r
+\r
+#Library build\r
+add_subdirectory(lwext4)\r
+#Detect all possible warnings for lwext4 target\r
+set_target_properties(lwext4 PROPERTIES COMPILE_FLAGS "-Wall -Wextra -pedantic")\r
+\r
+\r
 #DISTRIBUTION\r
 set(CPACK_PACKAGE_VERSION_MAJOR "0")\r
-set(CPACK_PACKAGE_VERSION_MINOR "3")\r
+set(CPACK_PACKAGE_VERSION_MINOR "8")\r
 set(CPACK_PACKAGE_VERSION_PATCH "0")\r
 set(CPACK_SOURCE_GENERATOR "TBZ2")\r
 set(CPACK_SOURCE_PACKAGE_FILE_NAME\r
   "${CMAKE_PROJECT_NAME}-${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")\r
 set(CPACK_SOURCE_IGNORE_FILES\r
-"/build" ".svn")\r
+"/build" ".git")\r
 include(CPack)\r
 \r
 add_custom_target(dist COMMAND ${CMAKE_MAKE_PROGRAM} package_source)\r