-
Notifications
You must be signed in to change notification settings - Fork 2
/
Makefile
65 lines (57 loc) · 1.6 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#
# Copyright (c) Jonathan Howard
# MIT License
#
UNAME := $(shell uname)
ifeq ($(UNAME),$(filter $(UNAME),Linux Darwin FreeBSD GNU/kFreeBSD))
ifeq ($(UNAME),$(filter $(UNAME),Darwin))
OS=darwin
else
ifeq ($(UNAME),$(filter $(UNAME),FreeBSD GNU/kFreeBSD))
OS=bsd
else
OS=linux
endif
endif
else
OS=windows
endif
GENIE=ext/bx/tools/bin/$(OS)/genie
DOXY=doxygen
osx-build:
$(GENIE) --file=genie/genie.lua --compiler=osx --with-profiler --with-tools gmake
osx-debug:
$(MAKE) -R -C build/projects/osx config=debug64
osx-development:
$(MAKE) -R -C build/projects/osx config=development64
osx-release:
$(MAKE) -R -C build/projects/osx config=release64
osx: osx-debug osx-development osx-release
linux-gcc:
$(GENIE) --file=genie/genie.lua --compiler=linux-gcc gmake
linux-clang:
$(GENIE) --file=genie/genie.lua --compiler=linux-clang gmake
linux-debug:
$(MAKE) -R -C build/projects/linux config=debug64
linux-development:
$(MAKE) -R -C build/projects/linux config=development64
linux-release:
$(MAKE) -R -C build/projects/linux config=release64
linux: linux-debug linux-development linux-release
windows-build:
$(GENIE) --file=genie/genie.lua vs2013
windows-debug:
devenv build/projects/windows/senior.sln /Build "debug|x64"
windows-development:
devenv build/projects/windows/senior.sln /Build "development|x64"
windows-release:
devenv build/projects/windows/senior.sln /Build "release|x64"
doxy:
$(DOXY) docs/Doxyfile
analyze:
make -R -C build/projects/osx -f senior.make clean
scan-build --use-analyzer=Xcode -V make -e -R -C build/projects/osx/ -f senior.make
.PHONY: clean
clean:
@echo Cleaning...
-@rm -rf build