Try to fix Windows install.
[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         -DLWEXT4_BUILD_SHARED_LIB=ON                          \
23
24 define generate_common
25         rm -R -f build_$(1)
26         mkdir build_$(1)
27         cd build_$(1) && cmake -G"Unix Makefiles"           \
28         $(COMMON_DEFINITIONS)                               \
29         $(2)                                                \
30         -DCMAKE_TOOLCHAIN_FILE=../toolchain/$(1).cmake ..
31 endef
32
33 generic:
34         $(call generate_common,$@)
35
36 osx:
37         $(call generate_common,$@)
38
39 osx32:
40         $(call generate_common,$@,-DCMAKE_OSX_ARCHITECTURES=i386)
41
42 cortex-m0:
43         $(call generate_common,$@)
44
45 cortex-m0+:
46         $(call generate_common,$@)
47
48 cortex-m3:
49         $(call generate_common,$@)
50
51 cortex-m4:
52         $(call generate_common,$@)
53
54 cortex-m4f:
55         $(call generate_common,$@)
56
57 cortex-m7:
58         $(call generate_common,$@)
59
60 arm-sim:
61         $(call generate_common,$@)
62
63 avrxmega7:
64         $(call generate_common,$@)
65
66 msp430:
67         $(call generate_common,$@)
68
69 mingw:
70         $(call generate_common,$@,-DWIN32=1)
71
72 lib_only:
73         rm -R -f build_lib_only
74         mkdir build_lib_only
75         cd build_lib_only && cmake $(COMMON_DEFINITIONS) -DLIB_ONLY=TRUE ..
76
77 all:
78         generic
79
80 clean:
81         rm -R -f build_*
82         rm -R -f ext_images
83
84
85 include fs_test.mk