build improvements

indexv1
Jakub Matys 2018-04-11 08:23:07 +02:00
parent 7308bcf51a
commit fe4c2f5228
5 changed files with 51 additions and 13 deletions

View File

@ -1,17 +1,50 @@
BIN_IMAGE = blockbook-build
DEB_IMAGE = blockbook-build-deb
PACKAGER = $(shell id -u):$(shell id -g)
NO_CACHE = false
.PHONY: build test deb
.PHONY: build build-debug test deb
build:
docker run -t --rm -e PACKAGER=$(PACKAGER) -v $(CURDIR):/src -v $(CURDIR)/build:/out blockbook-build make build
strip build/blockbook
build: .bin-image
docker run -t --rm -e PACKAGER=$(PACKAGER) -v $(CURDIR):/src -v $(CURDIR)/build:/out $(BIN_IMAGE) make build
test:
docker run -t --rm -e PACKAGER=$(PACKAGER) -v $(CURDIR):/src blockbook-build make test
build-debug: .bin-image
docker run -t --rm -e PACKAGER=$(PACKAGER) -v $(CURDIR):/src -v $(CURDIR)/build:/out $(BIN_IMAGE) make build-debug
deb:
docker run -t --rm -e PACKAGER=$(PACKAGER) -v $(CURDIR):/src -v $(CURDIR)/build:/out blockbook-build-deb
test: .bin-image
docker run -t --rm -e PACKAGER=$(PACKAGER) -v $(CURDIR):/src $(BIN_IMAGE) make test
clean:
deb: .deb-image
docker run -t --rm -e PACKAGER=$(PACKAGER) -v $(CURDIR):/src -v $(CURDIR)/build:/out $(DEB_IMAGE)
build-images:
rm -f .bin-image .deb-image
$(MAKE) .bin-image .deb-image
.bin-image:
docker build --no-cache=$(NO_CACHE) -t $(BIN_IMAGE) build/bin
@ docker images -q $(BIN_IMAGE) > $@
.deb-image:
docker build --no-cache=$(NO_CACHE) -t $(DEB_IMAGE) build/deb
@ docker images -q $(DEB_IMAGE) > $@
clean: clean-bin clean-deb
clean-all: clean clean-images
clean-bin:
rm -f build/blockbook
clean-deb:
rm -f build/*.deb
clean-images: clean-bin-image clean-deb-image
clean-bin-image:
- docker rmi $(BIN_IMAGE)
@ rm -f .bin-image
clean-deb-image:
- docker rmi $(DEB_IMAGE)
@ rm -f .deb-image

View File

@ -4,7 +4,7 @@ FROM debian:9
RUN apt-get update && apt-get install -y \
build-essential git wget pkg-config lxc-dev libzmq3-dev libgflags-dev \
libsnappy-dev zlib1g-dev libbz2-dev liblz4-dev graphviz
libsnappy-dev zlib1g-dev libbz2-dev liblz4-dev graphviz upx-ucl
ENV GOLANG_VERSION=go1.10.linux-amd64
ENV GOPATH=/go
@ -22,7 +22,7 @@ RUN echo -n "GOPATH: " && echo $GOPATH
# install rocksdb
RUN cd /opt && git clone https://github.com/facebook/rocksdb.git
RUN cd /opt/rocksdb && CFLAGS=-fPIC CXXFLAGS=-fPIC make static_lib
RUN cd /opt/rocksdb && CFLAGS=-fPIC CXXFLAGS=-fPIC make -j 4 static_lib
RUN go get github.com/golang/dep/cmd/dep

View File

@ -1,4 +1,10 @@
build: prepare-sources
cd $(GOPATH)/src/blockbook && go build -o $(CURDIR)/blockbook -ldflags="-s -w"
upx $(CURDIR)/blockbook
cp $(CURDIR)/blockbook /out/blockbook
chown $(PACKAGER) /out/blockbook
build-debug: prepare-sources
cd $(GOPATH)/src/blockbook && go build -o $(CURDIR)/blockbook
cp $(CURDIR)/blockbook /out/blockbook
chown $(PACKAGER) /out/blockbook

View File

@ -2,7 +2,7 @@ Source: blockbook
Section: satoshilabs
Priority: optional
Maintainer: jakub.matys@satoshilabs.com
Build-Depends: debhelper, dh-systemd, dh-exec
Build-Depends: debhelper, dh-systemd, dh-exec, upx
Standards-Version: 3.9.5
Package: blockbook-btc

View File

@ -6,4 +6,3 @@ DH_VERBOSE = 1
dh $@ --with=systemd
override_dh_strip:
dh_strip --no-automatic-dbgsym