Add 'lib_only' build target.
[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 = 0
11 VERSION_MINOR = 8
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
24 generic:
25         rm -R -f build_generic
26         mkdir build_generic
27         cd build_generic && cmake -G"Unix Makefiles"          \
28         $(COMMON_DEFINITIONS)                                 \
29         -DCMAKE_TOOLCHAIN_FILE=../toolchain/generic.cmake ..
30         
31 bf518:
32         rm -R -f build_bf518
33         mkdir build_bf518
34         cd build_bf518 && cmake -G"Unix Makefiles"            \
35         $(COMMON_DEFINITIONS)                                 \
36         -DCMAKE_TOOLCHAIN_FILE=../toolchain/bf518.cmake ..
37
38 avrxmega7:
39         rm -R -f build_avrxmega7
40         mkdir build_avrxmega7
41         cd build_avrxmega7 && cmake -G"Unix Makefiles"        \
42         $(COMMON_DEFINITIONS)                                 \
43         -DCMAKE_TOOLCHAIN_FILE=../toolchain/avrxmega7.cmake ..
44
45 msp430:
46         rm -R -f build_msp430
47         mkdir build_msp430
48         cd build_msp430 && cmake -G"Unix Makefiles"           \
49         $(COMMON_DEFINITIONS)                                 \
50         -DCMAKE_TOOLCHAIN_FILE=../toolchain/msp430.cmake ..
51
52
53 cortex-m0:
54         rm -R -f build_cortex-m0
55         mkdir build_cortex-m0
56         cd build_cortex-m0 && cmake -G"Unix Makefiles"       \
57         $(COMMON_DEFINITIONS)                                \
58         -DCMAKE_TOOLCHAIN_FILE=../toolchain/cortex-m0.cmake ..
59         
60 cortex-m3:
61         rm -R -f build_cortex-m3
62         mkdir build_cortex-m3
63         cd build_cortex-m3 && cmake -G"Unix Makefiles"       \
64         $(COMMON_DEFINITIONS)                                \
65         -DCMAKE_TOOLCHAIN_FILE=../toolchain/cortex-m3.cmake ..
66         
67 cortex-m4:
68         rm -R -f build_cortex-m4
69         mkdir build_cortex-m4
70         cd build_cortex-m4 && cmake -G"Unix Makefiles"       \
71         $(COMMON_DEFINITIONS)                                \
72         -DCMAKE_TOOLCHAIN_FILE=../toolchain/cortex-m4.cmake ..
73
74 arm-sim:
75         rm -R -f build_arm-sim
76         mkdir build_arm-sim
77         cd build_arm-sim && cmake -G"Unix Makefiles"         \
78         $(COMMON_DEFINITIONS)                                \
79         -DCMAKE_TOOLCHAIN_FILE=../toolchain/arm-sim.cmake ..
80
81 lib_only:
82         rm -R -f build_lib_only
83         mkdir build_lib_only
84         cd build_lib_only && cmake $(COMMON_DEFINITIONS) -DLIB_ONLY=TRUE ..
85
86 all: generic bf518 cortex-m3 cortex-m4 lib_only
87
88
89 clean:
90         rm -R -f build_*
91         rm -R -f ext_images
92         
93 unpack_images:
94         rm -R -f ext_images
95         7z x ext_images.7z
96
97         
98 include fs_test.mk
99
100
101         
102
103         
104