-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathMakefile.dist
54 lines (42 loc) · 1.61 KB
/
Makefile.dist
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
VERSION_MAJOR= 0
VERSION_MINOR= 0
VERSION_PATCH= 1
VERSION=$(VERSION_MAJOR).$(VERSION_MINOR).$(VERSION_PATCH)
VERSION_C={$(VERSION_MAJOR), $(VERSION_MINOR), $(VERSION_PATCH)}
PREFIX= brplot
PLIB= $(PREFIX)/lib
PBIN= $(PREFIX)/bin
PINC= $(PREFIX)/include
DIRS= dist dist/$(PREFIX) dist/$(PLIB) dist/$(PBIN) dist/$(PINC) dist/$(PREFIX)/share dist/$(PREFIX)/share/licenses dist/$(PREFIX)/share/licenses/brplot
$(shell rm dist -rdf)
A= $(foreach a,$(DIRS), test -d $(a) || mkdir $(a);)
$(shell $(A))
WANTED= \#define BR_VERSION $(VERSION_C)
CURENT= $(shell cat include/brplot.h | grep "#define BR_VERSION")
$(info $(WANTED))
$(info $(CURENT))
ifneq ($(WANTED), $(CURENT))
C= sed -i 's/$(CURENT)/$(WANTED)/' include/brplot.h
endif
$(shell $(C))
.PHONY: dist
dist: bin/brplot-$(VERSION).tar.gz
echo "Dist saved to $<"
%.$(VERSION_MAJOR).$(VERSION_MINOR): %.$(VERSION_MAJOR).$(VERSION_MINOR).$(VERSION_PATCH)
test -h $@ || ln -s $(notdir $<) $@
%.$(VERSION_MAJOR): %.$(VERSION_MAJOR).$(VERSION_MINOR)
test -h $@ || ln -s $(notdir $<) $@
dist/%: dist/%.$(VERSION_MAJOR)
test -h $@ || ln -s $(notdir $<) $@
bin/brplot-$(VERSION).tar.gz: dist/$(PLIB)/libbrplot.so dist/$(PBIN)/brplot dist/$(PBIN)/brplot dist/$(PINC)/brplot.h dist/$(PREFIX)/share/licenses/brplot/LICENSE
tar -cvzf bin/brplot-$(VERSION).tar.gz dist/*
dist/$(PLIB)/libbrplot.so.$(VERSION):
make TYPE=LIB
cp bin/libbrplot_linux_release_wx_gcc.so $@
dist/$(PBIN)/brplot.$(VERSION):
make TYPE=EXE GUI=RAYLIB
cp bin/brplot_linux_release_wx_gcc $@
dist/$(PINC)/brplot.h:
cp include/brplot.h $@
dist/$(PREFIX)/share/licenses/brplot/LICENSE: LICENSE external/LICENCES
cat $^ > $@