From da0e1e40213e36fea08141e9c608833549d1244d Mon Sep 17 00:00:00 2001 From: =?utf8?q?Fabian=20Gr=C3=BCnbichler?= Date: Fri, 20 Dec 2019 09:34:14 +0100 Subject: [PATCH] various packaging fixes, bump version MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Fabian Grünbichler --- Makefile | 28 ++++++++++++++++------------ debian/changelog | 8 ++++++++ debian/control | 5 ++--- debian/proxmox-backup-docs.docs | 2 ++ debian/rules | 20 +++++++++++++++++++- defines.mk | 6 +----- docs/Makefile | 2 +- 7 files changed, 49 insertions(+), 22 deletions(-) create mode 100644 debian/proxmox-backup-docs.docs diff --git a/Makefile b/Makefile index 15210c2d..93fb19ab 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,8 @@ +include /usr/share/dpkg/default.mk include defines.mk -ARCH:=$(shell dpkg-architecture -qDEB_BUILD_ARCH) -GITVERSION:=$(shell git rev-parse HEAD) +PACKAGE := $(DEB_SOURCE) +ARCH := $(DEB_BUILD_ARCH) SUBDIRS := etc www docs @@ -29,12 +30,16 @@ ifeq ($(valgrind), yes) CARGO_BUILD_ARGS += --features valgrind endif +CARGO ?= cargo + COMPILED_BINS := \ $(addprefix $(COMPILEDIR)/,$(USR_BIN) $(USR_SBIN) $(SERVICE_BIN)) -DEBS= ${PACKAGE}-server_${PKGVER}-${PKGREL}_${ARCH}.deb ${PACKAGE}-client_${PKGVER}-${PKGREL}_${ARCH}.deb +DEBS= ${PACKAGE}-server_${DEB_VERSION}_${ARCH}.deb ${PACKAGE}-client_${DEB_VERSION}_${ARCH}.deb + +DOC_DEB=${PACKAGE}-docs_${DEB_VERSION}_all.deb -DOC_DEB=${PACKAGE}-docs_${PKGVER}-${PKGREL}_all.deb +DSC = ${PACKAGE}_${DEB_VERSION}.dsc DESTDIR= @@ -47,20 +52,18 @@ $(SUBDIRS): test: #cargo test test_broadcast_future #cargo test $(CARGO_BUILD_ARGS) - cargo test $(tests) $(CARGO_BUILD_ARGS) + $(CARGO) test $(tests) $(CARGO_BUILD_ARGS) doc: - cargo doc --no-deps $(CARGO_BUILD_ARGS) + $(CARGO) doc --no-deps $(CARGO_BUILD_ARGS) # always re-create this dir -# but also copy the local target/ dir as a build-cache .PHONY: build build: rm -rf build - cargo build --release --lib - rsync -a debian Makefile defines.mk Cargo.toml Cargo.lock \ + rsync -a debian Makefile defines.mk Cargo.toml \ src $(SUBDIRS) \ - target tests build/ + tests build/ $(foreach i,$(SUBDIRS), \ $(MAKE) -C build/$(i) clean ;) @@ -70,6 +73,7 @@ $(DOC_DEB): build cd build; dpkg-buildpackage -b -us -uc --no-pre-clean lintian $(DOC_DEB) +# copy the local target/ dir as a build-cache .PHONY: deb deb: $(DEBS) $(DEBS): build @@ -87,7 +91,7 @@ distclean: clean clean: $(foreach i,$(SUBDIRS), \ $(MAKE) -C $(i) clean ;) - cargo clean + $(CARGO) clean rm -rf *.deb *.dsc *.tar.gz *.buildinfo *.changes build find . -name '*~' -exec rm {} ';' @@ -100,7 +104,7 @@ docs: cargo-build .PHONY: cargo-build cargo-build: - cargo build $(CARGO_BUILD_ARGS) + $(CARGO) build $(CARGO_BUILD_ARGS) $(COMPILED_BINS): cargo-build diff --git a/debian/changelog b/debian/changelog index dd39a099..b64be389 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +proxmox-backup (0.1.0) unstable; urgency=medium + + * proper packaging of build-dependencies + + * cleanup packaging + + -- Proxmox Support Team Fri, 20 Dec 2019 09:30:06 +0100 + proxmox-backup (0.1-1) unstable; urgency=medium [ Proxmox Support Team ] diff --git a/debian/control b/debian/control index f280164c..b9e40433 100644 --- a/debian/control +++ b/debian/control @@ -75,7 +75,6 @@ Standards-Version: 4.3.0 Homepage: https://www.proxmox.com Package: proxmox-backup-server -Build-Profiles: Architecture: any Depends: fonts-font-awesome, libjs-extjs (>= 6.0.1), @@ -89,7 +88,6 @@ Description: Proxmox Backup Server daemon with tools and GUI tools. This includes a web-based graphical user interface. Package: proxmox-backup-client -Build-Profiles: Architecture: any Depends: ${misc:Depends}, ${shlibs:Depends} Description: Proxmox Backup Client tools @@ -99,7 +97,8 @@ Description: Proxmox Backup Client tools Package: proxmox-backup-docs Build-Profiles: Section: doc -Depends: libjs-extjs +Depends: libjs-extjs, + ${misc:Depends}, Architecture: all Description: Proxmox Backup Documentation This package contains the Proxmox Backup Documentation files. diff --git a/debian/proxmox-backup-docs.docs b/debian/proxmox-backup-docs.docs new file mode 100644 index 00000000..a82fd454 --- /dev/null +++ b/debian/proxmox-backup-docs.docs @@ -0,0 +1,2 @@ +/usr/share/doc/proxmox-backup/html +/usr/share/doc/proxmox-backup/proxmox-backup.pdf diff --git a/debian/rules b/debian/rules index 0e90b81e..9f5cc20a 100755 --- a/debian/rules +++ b/debian/rules @@ -1,13 +1,31 @@ #!/usr/bin/make -f # See debhelper(7) (uncomment to enable) # output every command that modifies files on the build system. -#DH_VERBOSE = 1 +DH_VERBOSE = 1 + +include /usr/share/dpkg/pkg-info.mk +include /usr/share/rustc/architecture.mk export BUILD_MODE=release +CARGO=/usr/share/cargo/bin/cargo + +export CFLAGS CXXFLAGS CPPFLAGS LDFLAGS +export DEB_HOST_RUST_TYPE DEB_HOST_GNU_TYPE +export CARGO_HOME = $(CURDIR)/debian/cargo_home + +export DEB_CARGO_CRATE=proxmox-backup_$(DEB_VERSION_UPSTREAM) +export DEB_CARGO_PACKAGE=proxmox-backup + %: dh $@ --with=bash-completion +override_dh_auto_configure: + sed -ie 's!proxmox = { git = "ssh://gitolite3@proxdev.maurer-it.com/rust/proxmox",!proxmox = {!' Cargo.toml + sed -ie 's!valgrind.*!!' Cargo.toml + $(CARGO) prepare-debian $(CURDIR)/debian/cargo_registry --link-from-system + dh_auto_configure + override_dh_auto_build: dh_auto_build -- \ PROXY_USER=backup \ diff --git a/defines.mk b/defines.mk index 97723eea..cd89fa1d 100644 --- a/defines.mk +++ b/defines.mk @@ -1,7 +1,3 @@ -PACKAGE := proxmox-backup -PKGVER := 0.1 -PKGREL := 1 - PREFIX = /usr BINDIR = $(PREFIX)/bin SBINDIR = $(PREFIX)/sbin @@ -9,7 +5,7 @@ LIBDIR = $(PREFIX)/lib LIBEXECDIR = $(LIBDIR) DATAROOTDIR = $(PREFIX)/share MAN1DIR = $(PREFIX)/share/man/man1 -DOCDIR = $(PREFIX)/share/doc/${PACKAGE} +DOCDIR = $(PREFIX)/share/doc/proxmox-backup JSDIR = $(DATAROOTDIR)/javascript/proxmox-backup SYSCONFDIR = /etc diff --git a/docs/Makefile b/docs/Makefile index c31265b5..ec93edb4 100644 --- a/docs/Makefile +++ b/docs/Makefile @@ -94,7 +94,7 @@ install_manual_pages: ${MANUAL_PAGES} install_html: html install -dm755 $(DESTDIR)$(DOCDIR) - rsync -a output/html $(DESTDIR)$(DOCDIR) + rsync -a ${BUILDDIR}/html $(DESTDIR)$(DOCDIR) install_pdf: latexpdf install -dm755 $(DESTDIR)$(DOCDIR) -- 2.39.2