* [pve-devel] [PATCH proxmox-offline-mirror v2 1/2] build: use cargo wrapper
@ 2024-07-10 11:57 Fabian Grünbichler
2024-07-10 11:57 ` [pve-devel] [PATCH proxmox-offline-mirror v2 2/2] build: execute dh-cargo-built-using Fabian Grünbichler
2024-07-22 17:03 ` [pve-devel] applied-series: [PATCH proxmox-offline-mirror v2 1/2] build: use cargo wrapper Thomas Lamprecht
0 siblings, 2 replies; 3+ messages in thread
From: Fabian Grünbichler @ 2024-07-10 11:57 UTC (permalink / raw)
To: pve-devel
for package builds to ensure all common flags are actually set.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
---
Notes:
v2: symlink wrapper config in place
Makefile | 9 +++++++--
debian/rules | 11 ++++++++---
docs/Makefile | 4 ++--
3 files changed, 17 insertions(+), 7 deletions(-)
diff --git a/Makefile b/Makefile
index c652bda..ab23b73 100644
--- a/Makefile
+++ b/Makefile
@@ -19,10 +19,15 @@ DEBS = $(DEB) $(HELPER_DEB) $(DBG_DEB) $(HELPER_DBG_DEB) $(DOC_DEB)
ifeq ($(BUILD_MODE), release)
CARGO_BUILD_ARGS += --release
COMPILEDIR := target/release
+else ifeq ($(BUILD_MODE), release-deb)
+CARGO_BUILD_ARGS += --release
+COMPILEDIR := target/$(DEB_HOST_RUST_TYPE)/release
else
COMPILEDIR := target/debug
endif
+CARGO ?= cargo
+
USR_BIN := \
proxmox-offline-mirror \
proxmox-offline-mirror-helper
@@ -34,7 +39,7 @@ all: cargo-build $(SUBDIRS)
.PHONY: cargo-build
cargo-build:
- cargo build $(CARGO_BUILD_ARGS)
+ $(CARGO) build $(CARGO_BUILD_ARGS)
.PHONY: $(SUBDIRS)
$(SUBDIRS): cargo-build
@@ -98,7 +103,7 @@ distclean: clean
.PHONY: clean
clean:
- cargo clean
+ $(CARGO) clean
rm -f *.deb *.build *.buildinfo *.changes *.dsc rust-$(PACKAGE)*.tar*
rm -rf $(PACKAGE)-[0-9]*/
find . -name '*~' -exec rm {} ';'
diff --git a/debian/rules b/debian/rules
index 58b733f..5a34545 100644
--- a/debian/rules
+++ b/debian/rules
@@ -3,13 +3,13 @@
include /usr/share/dpkg/pkg-info.mk
include /usr/share/rustc/architecture.mk
-export BUILD_MODE=release
+export BUILD_MODE=release-deb
-CARGO=/usr/share/cargo/bin/cargo
+export 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 CARGO_HOME=$(CURDIR)/debian/cargo_home
export DEB_CARGO_CRATE=proxmox-offline-mirror_$(DEB_VERSION_UPSTREAM)
export DEB_CARGO_PACKAGE=proxmox-offline-mirror
@@ -24,6 +24,11 @@ override_dh_auto_configure:
@perl -ne 'if (/^version\s*=\s*"(\d+(?:\.\d+)+)"/) { my $$v_cargo = $$1; my $$v_deb = "$(DEB_VERSION_UPSTREAM)"; \
die "ERROR: d/changelog <-> Cargo.toml version mismatch: $$v_cargo != $$v_deb\n" if $$v_cargo ne $$v_deb; exit(0); }' Cargo.toml
$(CARGO) prepare-debian $(CURDIR)/debian/cargo_registry --link-from-system
+ # `cargo build` and `cargo install` have different config precedence, symlink
+ # the wrapper config into a place where `build` picks it up as well..
+ # https://doc.rust-lang.org/cargo/commands/cargo-install.html#configuration-discovery
+ mkdir -p $(CURDIR)/.cargo
+ ln -s $(CARGO_HOME)/config.toml $(CURDIR)/.cargo/config.toml
dh_auto_configure
override_dh_auto_test:
diff --git a/docs/Makefile b/docs/Makefile
index 973355a..fa52867 100644
--- a/docs/Makefile
+++ b/docs/Makefile
@@ -21,10 +21,10 @@ SPHINXBUILD = sphinx-build
BUILDDIR = output
ifeq ($(BUILD_MODE), release)
-COMPILEDIR := ../target/release
+COMPILEDIR := ../target/$release
SPHINXOPTS += -t release
else ifeq ($(BUILD_MODE), release-deb)
-COMPILEDIR := ../target/$(DEB_TARGET_GNU_CPU)-unknown-$(DEB_TARGET_GNU_SYSTEM)/release
+COMPILEDIR := ../target/$(DEB_HOST_RUST_TYPE)/release
SPHINXOPTS += -t release
else
COMPILEDIR := ../target/debug
--
2.39.2
_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
^ permalink raw reply [flat|nested] 3+ messages in thread
* [pve-devel] [PATCH proxmox-offline-mirror v2 2/2] build: execute dh-cargo-built-using
2024-07-10 11:57 [pve-devel] [PATCH proxmox-offline-mirror v2 1/2] build: use cargo wrapper Fabian Grünbichler
@ 2024-07-10 11:57 ` Fabian Grünbichler
2024-07-22 17:03 ` [pve-devel] applied-series: [PATCH proxmox-offline-mirror v2 1/2] build: use cargo wrapper Thomas Lamprecht
1 sibling, 0 replies; 3+ messages in thread
From: Fabian Grünbichler @ 2024-07-10 11:57 UTC (permalink / raw)
To: pve-devel
this ensures the X-Cargo-Built-Using (and soon, Static-Built-Using) substvars
are actually filled with contents, and allow to find out which rustc version
and dependency versions were used to build a particular binary package.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
---
debian/rules | 3 +++
1 file changed, 3 insertions(+)
diff --git a/debian/rules b/debian/rules
index 5a34545..0d3c755 100644
--- a/debian/rules
+++ b/debian/rules
@@ -35,6 +35,9 @@ override_dh_auto_test:
# skip for now to avoid additional debug builds - no tests anyway
# dh_auto_test -- test --all
+execute_after_dh_auto_install:
+ /usr/share/cargo/bin/dh-cargo-built-using $(DEB_CARGO_PACKAGE)
+
override_dh_missing:
dh_missing --fail-missing
--
2.39.2
_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
^ permalink raw reply [flat|nested] 3+ messages in thread
* [pve-devel] applied-series: [PATCH proxmox-offline-mirror v2 1/2] build: use cargo wrapper
2024-07-10 11:57 [pve-devel] [PATCH proxmox-offline-mirror v2 1/2] build: use cargo wrapper Fabian Grünbichler
2024-07-10 11:57 ` [pve-devel] [PATCH proxmox-offline-mirror v2 2/2] build: execute dh-cargo-built-using Fabian Grünbichler
@ 2024-07-22 17:03 ` Thomas Lamprecht
1 sibling, 0 replies; 3+ messages in thread
From: Thomas Lamprecht @ 2024-07-22 17:03 UTC (permalink / raw)
To: Proxmox VE development discussion, Fabian Grünbichler
Am 10/07/2024 um 13:57 schrieb Fabian Grünbichler:
> for package builds to ensure all common flags are actually set.
>
> Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
> ---
>
> Notes:
> v2: symlink wrapper config in place
>
> Makefile | 9 +++++++--
> debian/rules | 11 ++++++++---
> docs/Makefile | 4 ++--
> 3 files changed, 17 insertions(+), 7 deletions(-)
>
>
applied both patches, thanks!
_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2024-07-22 17:03 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-07-10 11:57 [pve-devel] [PATCH proxmox-offline-mirror v2 1/2] build: use cargo wrapper Fabian Grünbichler
2024-07-10 11:57 ` [pve-devel] [PATCH proxmox-offline-mirror v2 2/2] build: execute dh-cargo-built-using Fabian Grünbichler
2024-07-22 17:03 ` [pve-devel] applied-series: [PATCH proxmox-offline-mirror v2 1/2] build: use cargo wrapper Thomas Lamprecht
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.