Merge pull request #49 from sirocyl/patch-1
[lwext4.git] / Makefile
1
2 #Release
3 #Debug
4 BUILD_TYPE = Release
5
6 ifneq ($(shell test -d .git), 0)
7 GIT_SHORT_HASH:= $(shell git rev-parse --short HEAD)
8 endif
9
10 VERSION_MAJOR = 1
11 VERSION_MINOR = 0
12 VERSION_PATCH = 0
13
14 VERSION = $(VERSION_MAJOR).$(VERSION_MINOR).$(VERSION_PATCH)-$(GIT_SHORT_HASH)
15
16 COMMON_DEFINITIONS =                                      \
17         -DCMAKE_BUILD_TYPE=$(BUILD_TYPE)                      \
18         -DVERSION_MAJOR=$(VERSION_MAJOR)                      \
19         -DVERSION_MINOR=$(VERSION_MINOR)                      \
20         -DVERSION_PATCH=$(VERSION_PATCH)                      \
21         -DVERSION=$(VERSION)                                  \
22
23 define generate_common
24         rm -R -f build_$(1)
25         mkdir build_$(1)
26         cd build_$(1) && cmake -G"Unix Makefiles"           \
27         $(COMMON_DEFINITIONS)                               \
28         $(2)                                                \
29         -DCMAKE_TOOLCHAIN_FILE=../toolchain/$(1).cmake ..
30 endef
31
32 generic:
33         $(call generate_common,$@)
34
35 cortex-m0:
36         $(call generate_common,$@)
37         
38 cortex-m0+:
39         $(call generate_common,$@)
40         
41 cortex-m3:
42         $(call generate_common,$@)
43         
44 cortex-m4:
45         $(call generate_common,$@)
46         
47 cortex-m4f:
48         $(call generate_common,$@)
49         
50 cortex-m7:
51         $(call generate_common,$@)
52
53 arm-sim:
54         $(call generate_common,$@)
55
56 avrxmega7: 
57         $(call generate_common,$@)
58
59 msp430:
60         $(call generate_common,$@)
61         
62 mingw:
63         $(call generate_common,$@,-DWIN32=1)
64         
65 lib_only:
66         rm -R -f build_lib_only
67         mkdir build_lib_only
68         cd build_lib_only && cmake $(COMMON_DEFINITIONS) -DLIB_ONLY=TRUE ..
69
70 all: 
71         generic
72
73 clean:
74         rm -R -f build_*
75         rm -R -f ext_images
76
77         
78 include fs_test.mk
79
80
81         
82
83         
84