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 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84
|
#!/usr/bin/make -f
# -*- Mode: makefile -*-
include /usr/share/dpkg/pkg-info.mk
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
# Include test fixtures.
export DH_GOLANG_INSTALL_EXTRA := \
cmd/prometheus/testdata \
cmd/promtool/testdata \
config/testdata \
discovery/file/fixtures \
discovery/http/fixtures \
discovery/moby/testdata \
discovery/puppetdb/fixtures \
documentation/examples/prometheus-agent.yml \
documentation/examples/prometheus.yml \
model/rulefmt/testdata \
promql/fuzz-data \
promql/testdata \
rules/fixtures \
scrape/testdata \
tsdb/testdata \
# EOL
# Do not build examples
export DH_GOLANG_EXCLUDES := documentation
BUILDDIR := $(CURDIR)/.build
METAPKG := github.com/prometheus/common
BRANCH := debian/sid
USER := team+pkg-go@tracker.debian.org
BUILD_DATE = $(shell date --utc --date='@$(SOURCE_DATE_EPOCH)' \
+%Y%m%d-%H:%M:%S)
GO_VERSION = $(shell go version | sed 's/go version \(\S*\).*/\1/')
BUILDFLAGS = -ldflags \
" -X $(METAPKG)/version.Version=$(DEB_VERSION_UPSTREAM)\
-X $(METAPKG)/version.Revision=$(DEB_VERSION)\
-X $(METAPKG)/version.Branch=$(BRANCH)\
-X $(METAPKG)/version.BuildUser=$(USER)\
-X $(METAPKG)/version.BuildDate=$(BUILD_DATE)\
-X $(METAPKG)/version.GoVersion=$(GO_VERSION)"
ifeq ($(DEB_HOST_ARCH_CPU),arm)
# Tests in armel take way too long, and run out of memory in armhf.
TESTFLAGS := -timeout 60m -short
else ifeq ($(DEB_HOST_ARCH_CPU),riscv64)
TESTFLAGS := -timeout 30m -short
else
TESTFLAGS := -timeout 20m
endif
%:
dh $@ --buildsystem=golang --builddirectory=$(BUILDDIR)
WHATIS1 := "prometheus \\- The Prometheus monitoring server"
WHATIS2 := "promtool \\- Tooling for the Prometheus monitoring system"
PROMPB := $(BUILDDIR)/src/github.com/prometheus/prometheus/prompb
override_dh_auto_configure:
dh_auto_configure -- $(BUILDFLAGS)
protoc --gogofast_out=plugins=grpc:$(PROMPB) \
-I$(PROMPB) \
-I$(BUILDDIR)/src/github.com/gogo/protobuf \
-I$(BUILDDIR)/src/github.com/grpc-ecosystem/grpc-gateway/third_party/googleapis \
$(PROMPB)/*.proto
# Exclude package without non-test files.
override_dh_auto_build: DH_GOLANG_EXCLUDES += tsdb/test
override_dh_auto_build:
dh_auto_build -- $(BUILDFLAGS)
$(BUILDDIR)/bin/prometheus --help-man > $(BUILDDIR)/prometheus.1
$(BUILDDIR)/bin/promtool --help-man > $(BUILDDIR)/promtool.1
# Fix whatis entry.
sed -i '/^.SH "NAME"/,+1c.SH "NAME"\n'$(WHATIS1) $(BUILDDIR)/prometheus.1
sed -i '/^.SH "NAME"/,+1c.SH "NAME"\n'$(WHATIS2) $(BUILDDIR)/promtool.1
override_dh_auto_test:
dh_auto_test -- $(TESTFLAGS)
override_dh_auto_install:
dh_auto_install -- --no-source
|