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