Basic build for OS X.
[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 osx:    
36         $(call generate_common,$@)
37
38 cortex-m0:
39         $(call generate_common,$@)
40         
41 cortex-m0+:
42         $(call generate_common,$@)
43         
44 cortex-m3:
45         $(call generate_common,$@)
46         
47 cortex-m4:
48         $(call generate_common,$@)
49         
50 cortex-m4f:
51         $(call generate_common,$@)
52         
53 cortex-m7:
54         $(call generate_common,$@)
55
56 arm-sim:
57         $(call generate_common,$@)
58
59 avrxmega7: 
60         $(call generate_common,$@)
61
62 msp430:
63         $(call generate_common,$@)
64         
65 mingw:
66         $(call generate_common,$@,-DWIN32=1)
67         
68 lib_only:
69         rm -R -f build_lib_only
70         mkdir build_lib_only
71         cd build_lib_only && cmake $(COMMON_DEFINITIONS) -DLIB_ONLY=TRUE ..
72
73 all: 
74         generic
75
76 clean:
77         rm -R -f build_*
78         rm -R -f ext_images
79
80         
81 include fs_test.mk
82
83
84         
85
86         
87