More.
[lwext4.git] / Makefile
index 023797b350a4989f54c49302e2b3b2bd71695867..8125659259261b17779cd8729b9164075ddd19a1 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -7,8 +7,8 @@ ifneq ($(shell test -d .git), 0)
 GIT_SHORT_HASH:= $(shell git rev-parse --short HEAD)
 endif
 
-VERSION_MAJOR = 0
-VERSION_MINOR = 8
+VERSION_MAJOR = 1
+VERSION_MINOR = 0
 VERSION_PATCH = 0
 
 VERSION = $(VERSION_MAJOR).$(VERSION_MINOR).$(VERSION_PATCH)-$(GIT_SHORT_HASH)
@@ -20,80 +20,79 @@ COMMON_DEFINITIONS =                                      \
        -DVERSION_PATCH=$(VERSION_PATCH)                      \
        -DVERSION=$(VERSION)                                  \
 
+define generate_common
+       rm -R -f build_$(1)
+       mkdir build_$(1)
+       cd build_$(1) && cmake -G"Unix Makefiles"           \
+       $(COMMON_DEFINITIONS)                               \
+       -DLWEXT4_BUILD_SHARED_LIB=ON                        \
+       $(2)                                                \
+       -DCMAKE_TOOLCHAIN_FILE=../toolchain/$(1).cmake ..
+endef
+
+define generate_common_static
+       rm -R -f build_$(1)
+       mkdir build_$(1)
+       cd build_$(1) && cmake -G"Unix Makefiles"           \
+       $(COMMON_DEFINITIONS)                               \
+       -DLWEXT4_BUILD_SHARED_LIB=OFF                       \
+       $(2)                                                \
+       -DCMAKE_TOOLCHAIN_FILE=../toolchain/$(1).cmake ..
+endef
 
 generic:
-       rm -R -f build_generic
-       mkdir build_generic
-       cd build_generic && cmake -G"Unix Makefiles"          \
-       $(COMMON_DEFINITIONS)                                 \
-       -DCMAKE_TOOLCHAIN_FILE=../toolchain/generic.cmake ..
-       
-bf518:
-       rm -R -f build_bf518
-       mkdir build_bf518
-       cd build_bf518 && cmake -G"Unix Makefiles"            \
-       $(COMMON_DEFINITIONS)                                 \
-       -DCMAKE_TOOLCHAIN_FILE=../toolchain/bf518.cmake ..
+       $(call generate_common_static,$@)
 
-avrxmega7:
-       rm -R -f build_avrxmega7
-       mkdir build_avrxmega7
-       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"Unix Makefiles"           \
-       $(COMMON_DEFINITIONS)                                 \
-       -DCMAKE_TOOLCHAIN_FILE=../toolchain/msp430.cmake ..
+osx:
+       $(call generate_common,$@)
 
+osx32:
+       $(call generate_common,$@,-DCMAKE_OSX_ARCHITECTURES=i386)
 
 cortex-m0:
-       rm -R -f build_cortex-m0
-       mkdir build_cortex-m0
-       cd build_cortex-m0 && cmake -G"Unix Makefiles"       \
-       $(COMMON_DEFINITIONS)                                \
-       -DCMAKE_TOOLCHAIN_FILE=../toolchain/cortex-m0.cmake ..
-       
+       $(call generate_common,$@)
+
+cortex-m0+:
+       $(call generate_common,$@)
+
 cortex-m3:
-       rm -R -f build_cortex-m3
-       mkdir build_cortex-m3
-       cd build_cortex-m3 && cmake -G"Unix Makefiles"       \
-       $(COMMON_DEFINITIONS)                                \
-       -DCMAKE_TOOLCHAIN_FILE=../toolchain/cortex-m3.cmake ..
-       
+       $(call generate_common,$@)
+
 cortex-m4:
-       rm -R -f build_cortex-m4
-       mkdir build_cortex-m4
-       cd build_cortex-m4 && cmake -G"Unix Makefiles"       \
-       $(COMMON_DEFINITIONS)                                \
-       -DCMAKE_TOOLCHAIN_FILE=../toolchain/cortex-m4.cmake ..
+       $(call generate_common,$@)
+
+cortex-m4f:
+       $(call generate_common,$@)
+
+cortex-m7:
+       $(call generate_common,$@)
 
 arm-sim:
-       rm -R -f build_arm-sim
-       mkdir build_arm-sim
-       cd build_arm-sim && cmake -G"Unix Makefiles"         \
-       $(COMMON_DEFINITIONS)                                \
-       -DCMAKE_TOOLCHAIN_FILE=../toolchain/arm-sim.cmake ..
-       
-all: generic bf518 cortex-m3 cortex-m4 generic
+       $(call generate_common,$@)
+
+avrxmega7:
+       $(call generate_common,$@)
 
+msp430:
+       $(call generate_common,$@)
+
+mingw:
+       $(call generate_common,$@,-DWIN32=1)
+
+mingw-32:
+       $(call generate_common,$@,-DWIN32=1)
+
+lib_only:
+       rm -R -f build_lib_only
+       mkdir build_lib_only
+       cd build_lib_only && cmake $(COMMON_DEFINITIONS) -DLIB_ONLY=TRUE ..
+
+all:
+       generic
 
 clean:
        rm -R -f build_*
        rm -R -f ext_images
-       
-unpack_images:
-       rm -R -f ext_images
-       7z x ext_images.7z
-
-       
-include fs_test.mk
 
 
-       
-
-       
-       
+include fs_test.mk