ext4: remove read-only check in get atime/mtime/ctime/mode/own methods
[lwext4.git] / Makefile
index b02b584f330761b0ee26d12d1d2be60412b6511b..c69247d02548a3b7882700224cb5d96287891ba8 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -3,53 +3,88 @@
 #Debug
 BUILD_TYPE = Release
 
-#Check: http://www.cmake.org/Wiki/CMake_Generator_Specific_Information
-#"Unix Makefiles"
-#"Eclipse CDT4 - Unix Makefiles"
-PROJECT_SETUP = "Unix Makefiles"
+ifneq ($(shell test -d .git), 0)
+GIT_SHORT_HASH:= $(shell git rev-parse --short HEAD)
+endif
+
+VERSION_MAJOR = 1
+VERSION_MINOR = 0
+VERSION_PATCH = 0
+
+VERSION = $(VERSION_MAJOR).$(VERSION_MINOR).$(VERSION_PATCH)-$(GIT_SHORT_HASH)
+
+COMMON_DEFINITIONS =                                      \
+       -DCMAKE_BUILD_TYPE=$(BUILD_TYPE)                      \
+       -DVERSION_MAJOR=$(VERSION_MAJOR)                      \
+       -DVERSION_MINOR=$(VERSION_MINOR)                      \
+       -DVERSION_PATCH=$(VERSION_PATCH)                      \
+       -DVERSION=$(VERSION)                                  \
+
 
 generic:
        rm -R -f build_generic
        mkdir build_generic
-       cd build_generic && cmake -G$(PROJECT_SETUP) -DCMAKE_BUILD_TYPE=$(BUILD_TYPE) -DCMAKE_TOOLCHAIN_FILE=../toolchain/generic.cmake ..
-       
-bf518:
-       rm -R -f build_bf518
-       mkdir build_bf518
-       cd build_bf518 && cmake -G$(PROJECT_SETUP) -DCMAKE_BUILD_TYPE=$(BUILD_TYPE) -DCMAKE_TOOLCHAIN_FILE=../toolchain/bf518.cmake ..
+       cd build_generic && cmake -G"Unix Makefiles"          \
+       $(COMMON_DEFINITIONS)                                 \
+       -DCMAKE_TOOLCHAIN_FILE=../toolchain/generic.cmake ..
+
+mingw:
+       rm -R -f build_mingw
+       mkdir build_mingw
+       cd build_mingw && cmake -G"Unix Makefiles"          \
+       $(COMMON_DEFINITIONS)                                 \
+       -DWIN32=1 \
+       -DCMAKE_TOOLCHAIN_FILE=../toolchain/mingw.cmake ..
 
 avrxmega7:
        rm -R -f build_avrxmega7
        mkdir build_avrxmega7
-       cd build_avrxmega7 && cmake -G$(PROJECT_SETUP) -DCMAKE_BUILD_TYPE=$(BUILD_TYPE) -DCMAKE_TOOLCHAIN_FILE=../toolchain/avrxmega7.cmake ..
+       cd build_avrxmega7 && cmake -G"Unix Makefiles"        \
+       $(COMMON_DEFINITIONS)                                 \
+       -DCMAKE_TOOLCHAIN_FILE=../toolchain/avrxmega7.cmake ..
 
 msp430:
        rm -R -f build_msp430
        mkdir build_msp430
-       cd build_msp430 && cmake -G$(PROJECT_SETUP) -DCMAKE_BUILD_TYPE=$(BUILD_TYPE) -DCMAKE_TOOLCHAIN_FILE=../toolchain/msp430.cmake ..
+       cd build_msp430 && cmake -G"Unix Makefiles"           \
+       $(COMMON_DEFINITIONS)                                 \
+       -DCMAKE_TOOLCHAIN_FILE=../toolchain/msp430.cmake ..
 
 
 cortex-m0:
        rm -R -f build_cortex-m0
        mkdir build_cortex-m0
-       cd build_cortex-m0 && cmake -G$(PROJECT_SETUP) -DCMAKE_BUILD_TYPE=$(BUILD_TYPE) -DCMAKE_TOOLCHAIN_FILE=../toolchain/cortex-m0.cmake ..
+       cd build_cortex-m0 && cmake -G"Unix Makefiles"       \
+       $(COMMON_DEFINITIONS)                                \
+       -DCMAKE_TOOLCHAIN_FILE=../toolchain/cortex-m0.cmake ..
        
 cortex-m3:
        rm -R -f build_cortex-m3
        mkdir build_cortex-m3
-       cd build_cortex-m3 && cmake -G$(PROJECT_SETUP) -DCMAKE_BUILD_TYPE=$(BUILD_TYPE) -DCMAKE_TOOLCHAIN_FILE=../toolchain/cortex-m3.cmake ..
+       cd build_cortex-m3 && cmake -G"Unix Makefiles"       \
+       $(COMMON_DEFINITIONS)                                \
+       -DCMAKE_TOOLCHAIN_FILE=../toolchain/cortex-m3.cmake ..
        
 cortex-m4:
        rm -R -f build_cortex-m4
        mkdir build_cortex-m4
-       cd build_cortex-m4 && cmake -G$(PROJECT_SETUP) -DCMAKE_BUILD_TYPE=$(BUILD_TYPE) -DCMAKE_TOOLCHAIN_FILE=../toolchain/cortex-m4.cmake ..
+       cd build_cortex-m4 && cmake -G"Unix Makefiles"       \
+       $(COMMON_DEFINITIONS)                                \
+       -DCMAKE_TOOLCHAIN_FILE=../toolchain/cortex-m4.cmake ..
 
 arm-sim:
        rm -R -f build_arm-sim
        mkdir build_arm-sim
-       cd build_arm-sim && cmake -G$(PROJECT_SETUP) -DCMAKE_BUILD_TYPE=$(BUILD_TYPE) -DCMAKE_TOOLCHAIN_FILE=../toolchain/arm-sim.cmake ..
-       
-all: generic bf518 cortex-m3 cortex-m4 generic
+       cd build_arm-sim && cmake -G"Unix Makefiles"         \
+       $(COMMON_DEFINITIONS)                                \
+       -DCMAKE_TOOLCHAIN_FILE=../toolchain/arm-sim.cmake ..
+
+lib_only:
+       rm -R -f build_lib_only
+       mkdir build_lib_only
+       cd build_lib_only && cmake $(COMMON_DEFINITIONS) -DLIB_ONLY=TRUE ..
+
+all: generic bf518 cortex-m3 cortex-m4 lib_only
 
 
 clean: