Skip to content

Commit 738e4eb

Browse files
authored
Fix cross-build
1 parent 0825864 commit 738e4eb

1 file changed

Lines changed: 9 additions & 7 deletions

File tree

GNUmakefile

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ RM := rm -rf
2727
# Binaries
2828
CARGO ?= cargo
2929
CARGOFLAGS ?=
30+
RUSTC_ARCH ?= # should be empty instead of --target $(shell rustc -vV | sed -n 's/host: //p') to share crates ar target dir
3031

3132
# Install directories
3233
PREFIX ?= /usr/local
@@ -342,14 +343,14 @@ use_default := 1
342343
build-pkgs:
343344
ifneq (${MULTICALL}, y)
344345
ifdef BUILD_SPEC_FEATURE
345-
${CARGO} build ${CARGOFLAGS} --features "$(BUILD_SPEC_FEATURE)" ${PROFILE_CMD} $(foreach pkg,$(EXES),-p uu_$(pkg))
346+
$(CARGO) build $(CARGOFLAGS) --features "$(BUILD_SPEC_FEATURE)" ${PROFILE_CMD} $(foreach pkg,$(EXES),-p uu_$(pkg)) $(RUSTC_ARCH)
346347
else
347-
${CARGO} build ${CARGOFLAGS} ${PROFILE_CMD} $(foreach pkg,$(EXES),-p uu_$(pkg))
348+
$(CARGO) build $(CARGOFLAGS) $(PROFILE_CMD) $(foreach pkg,$(EXES),-p uu_$(pkg)) $(RUSTC_ARCH)
348349
endif
349350
endif
350351

351352
build-coreutils:
352-
${CARGO} build ${CARGOFLAGS} --features "${EXES} $(BUILD_SPEC_FEATURE)" ${PROFILE_CMD} --no-default-features
353+
$(CARGO) build $(CARGOFLAGS) --features "$(EXES) $(BUILD_SPEC_FEATURE)" $(PROFILE_CMD) --no-default-features $(RUSTC_ARCH)
353354

354355
build: build-coreutils build-pkgs locales
355356

@@ -400,15 +401,16 @@ busytest: $(BUILDDIR)/busybox $(addprefix test_busybox_,$(filter-out $(SKIP_UTIL
400401
endif
401402

402403
clean:
403-
cargo clean
404-
cd $(DOCSDIR) && $(MAKE) clean
404+
cargo clean $(RUSTC_ARCH)
405+
cd $(DOCSDIR) && $(MAKE) clean $(RUSTC_ARCH)
405406

406407
distclean: clean
407-
$(CARGO) clean $(CARGOFLAGS) && $(CARGO) update $(CARGOFLAGS)
408+
$(CARGO) clean $(CARGOFLAGS) $(RUSTC_ARCH) && $(CARGO) update $(CARGOFLAGS) $(RUSTC_ARCH)
408409

409410
ifeq ($(MANPAGES),y)
410411
build-uudoc:
411-
${CARGO} build ${CARGOFLAGS} --bin uudoc --features "uudoc ${EXES}" ${PROFILE_CMD} --no-default-features
412+
# Use same PROFILE with coreutils to share crates (if not cross-build)
413+
$(CARGO) build $(CARGOFLAGS) --bin uudoc --features "uudoc $(EXES)" $(PROFILE_CMD) --no-default-features
412414

413415
install-manpages: build-uudoc
414416
mkdir -p $(DESTDIR)$(DATAROOTDIR)/man/man1

0 commit comments

Comments
 (0)