3 include /usr
/share
/dpkg
/pkg-info.mk
4 include /usr
/share
/dpkg
/architecture.mk
5 include /usr
/share
/dpkg
/buildflags.mk
6 RUSTFLAGS
+= $(foreach flag
,$(LDFLAGS
),-C link-arg
=$(flag
))
7 export CFLAGS CXXFLAGS CPPFLAGS LDFLAGS RUSTFLAGS
9 rust_cpu
= $(subst i586
,i686
,$(1))
10 DEB_HOST_RUST_TYPE
:= $(call rust_cpu
,$(DEB_HOST_GNU_CPU
))-unknown-
$(DEB_HOST_GNU_SYSTEM
)
11 DEB_TARGET_RUST_TYPE
:= $(call rust_cpu
,$(DEB_TARGET_GNU_CPU
))-unknown-
$(DEB_TARGET_GNU_SYSTEM
)
13 # Cargo looks for config in and writes cache to $CARGO_HOME/
14 export CARGO_HOME
= $(CURDIR
)/debian
/cargohome
15 # Ask cargo to be verbose when building
18 DEB_DESTDIR
:= $(CURDIR
)/debian
/tmp
19 VENDORDIR
:= $(CURDIR
)/vendor
20 INDEXDIR
:= $(CURDIR
)/vendor
/index
21 DEPSDIR
:= $(CURDIR
)/deps
24 dh
$@
--with bash-completion
26 override_dh_auto_configure
:
27 cp
-a
$(CURDIR
)/Cargo.lock
$(CURDIR
)/.Cargo.lock.orig
29 override_dh_auto_build
:
30 ifneq ($(filter stage0
,$(DEB_BUILD_PROFILES
)),)
31 # Bootstrap cargo stage0
32 .
/debian
/bootstrap.py \
37 --crate-index
$(INDEXDIR
)/ \
38 --cargo-root
$(CURDIR
)/ \
39 --target-dir
$(DEPSDIR
)/ \
40 --host
=$(DEB_HOST_RUST_TYPE
) \
41 --target
=$(DEB_TARGET_RUST_TYPE
)
42 # Workaround for https://github.com/rust-lang/cargo/issues/1423
43 ln
-s
`find $(DEPSDIR) -name 'cargo-*' -type f -executable` $(CURDIR
)/cargo-stage0
45 ln
-s
`which cargo` $(CURDIR
)/cargo-stage0
47 # Configure to build cargo using the just-built stage0
52 --local-rust-root
=/usr \
53 --cargo
=$(CURDIR
)/cargo-stage0
54 # Build final cargo binary and docs
56 ifeq (,$(findstring nodoc
,$(DEB_BUILD_PROFILES
)))
58 cd target
/doc
/ && rm -f jquery.js
&& ln
-s
/usr
/share
/javascript
/jquery
/jquery.js
61 override_dh_auto_clean
:
62 -mv
$(CURDIR
)/.Cargo.lock.orig
$(CURDIR
)/Cargo.lock
64 -$(RM
) -r
$(CURDIR
)/deps
/*.rlib \
65 $(CURDIR
)/deps
/build_script
* \
66 $(CURDIR
)/deps
/cargo
* \
71 $(CURDIR
)/config.stamp \
73 $(CURDIR
)/cargo-stage0 \
76 override_dh_auto_install
:
77 # We pick stuff directly from target/
79 override_dh_auto_test
:
80 # we don't run tests at the moment due to too many deps