|
1 | | -.PHONY: all clean install dev release debug sanitize |
| 1 | +.PHONY: all clean install dev release debug sanitize deb debian-dirs |
2 | 2 |
|
3 | 3 | ######################################################################### |
4 | 4 | # BUILD COMMON |
5 | 5 | ######################################################################### |
6 | 6 |
|
| 7 | +VERSION ?= 1.0.0-rc10 |
7 | 8 | PREFIX ?= /usr |
8 | 9 | CXXFLAGS ?= -march=native |
9 | 10 | CXXFLAGS += -std=c++11 -Wall -Wno-reorder -fPIC -pie \ |
10 | | - -DVERSION=$(shell cat VERSION) -Wl,-rpath=$(PREFIX)/share/e9tool/lib/ |
| 11 | + -DVERSION=$(VERSION) -Wl,-rpath=$(PREFIX)/share/e9tool/lib/ |
11 | 12 |
|
12 | 13 | E9PATCH_OBJS=\ |
13 | 14 | src/e9patch/e9CFR.o \ |
@@ -164,3 +165,31 @@ debug: dev |
164 | 165 |
|
165 | 166 | sanitize: CXXFLAGS += -O0 -g -fsanitize=address |
166 | 167 | sanitize: dev |
| 168 | + |
| 169 | +DEB := e9patch_$(VERSION)_amd64.deb |
| 170 | +deb: $(DEB) |
| 171 | + |
| 172 | +$(DEB): install/debian-binary install/control.tar.gz install/data.tar.gz |
| 173 | + fakeroot ar cr $@ $^ |
| 174 | + |
| 175 | +install/debian-binary: debian-dirs |
| 176 | + echo 2.0 > $@ |
| 177 | + |
| 178 | +install/control.tar.gz: install/control/md5sums install/control/control |
| 179 | + (cd install/control;\ |
| 180 | + tar cz --owner root --group root -f ../control.tar.gz .) |
| 181 | + |
| 182 | +install/control/md5sums: install/data |
| 183 | + find $< -type f | xargs md5sum | sed 's#$</##' > $@ |
| 184 | + |
| 185 | +install/control/control: debian-binary-control.in |
| 186 | + sed 's/\bVERSION\b/$(VERSION)/' $< > $@ |
| 187 | + |
| 188 | +install/data.tar.gz: install/data |
| 189 | + (cd $<; tar cz --owner root --group root -f ../data.tar.gz .) |
| 190 | + |
| 191 | +install/data: tool release |
| 192 | + $(MAKE) DESTDIR=install/data install |
| 193 | + |
| 194 | +debian-dirs: |
| 195 | + mkdir -p install/control |
0 commit comments