mirror of
https://github.com/kata-containers/kata-containers.git
synced 2025-06-26 15:32:30 +00:00
trace-forwarder: Add option rustflags, target, build-type for the make
Support rust-flags, target and build-type. Fixes: #2215 Signed-off-by: Tim Zhang <tim@hyper.sh>
This commit is contained in:
parent
6c39c353e6
commit
6999dccaa8
@ -27,40 +27,7 @@ COMMIT_MSG = $(if $(COMMIT),$(COMMIT),unknown)
|
|||||||
# Exported to allow cargo to see it
|
# Exported to allow cargo to see it
|
||||||
export VERSION_COMMIT := $(if $(COMMIT),$(VERSION)-$(COMMIT),$(VERSION))
|
export VERSION_COMMIT := $(if $(COMMIT),$(VERSION)-$(COMMIT),$(VERSION))
|
||||||
|
|
||||||
##VAR BUILD_TYPE=release|debug type of rust build
|
include ../../utils.mk
|
||||||
BUILD_TYPE = release
|
|
||||||
|
|
||||||
##VAR ARCH=arch target to build (format: uname -m)
|
|
||||||
ARCH = $(shell uname -m)
|
|
||||||
##VAR LIBC=musl|gnu
|
|
||||||
LIBC ?= musl
|
|
||||||
ifneq ($(LIBC),musl)
|
|
||||||
ifeq ($(LIBC),gnu)
|
|
||||||
override LIBC = gnu
|
|
||||||
else
|
|
||||||
$(error "ERROR: A non supported LIBC value was passed. Supported values are musl and gnu")
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(ARCH), ppc64le)
|
|
||||||
override ARCH = powerpc64le
|
|
||||||
override LIBC = gnu
|
|
||||||
$(warning "WARNING: powerpc64le-unknown-linux-musl target is unavailable")
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(ARCH), s390x)
|
|
||||||
override LIBC = gnu
|
|
||||||
$(warning "WARNING: s390x-unknown-linux-musl target is unavailable")
|
|
||||||
endif
|
|
||||||
|
|
||||||
|
|
||||||
EXTRA_RUSTFLAGS :=
|
|
||||||
ifeq ($(ARCH), aarch64)
|
|
||||||
override EXTRA_RUSTFLAGS = -C link-arg=-lgcc
|
|
||||||
$(warning "WARNING: aarch64-musl needs extra symbols from libgcc")
|
|
||||||
endif
|
|
||||||
|
|
||||||
TRIPLE = $(ARCH)-unknown-linux-$(LIBC)
|
|
||||||
|
|
||||||
TARGET_PATH = target/$(TRIPLE)/$(BUILD_TYPE)/$(TARGET)
|
TARGET_PATH = target/$(TRIPLE)/$(BUILD_TYPE)/$(TARGET)
|
||||||
|
|
||||||
|
@ -3,10 +3,12 @@
|
|||||||
# SPDX-License-Identifier: Apache-2.0
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
#
|
#
|
||||||
|
|
||||||
|
include ../../utils.mk
|
||||||
|
|
||||||
default: build
|
default: build
|
||||||
|
|
||||||
build:
|
build:
|
||||||
RUSTFLAGS="--deny warnings" cargo build -v
|
@RUSTFLAGS="$(EXTRA_RUSTFLAGS) --deny warnings" cargo build --target $(TRIPLE) --$(BUILD_TYPE)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
cargo clean
|
cargo clean
|
||||||
|
36
utils.mk
36
utils.mk
@ -105,3 +105,39 @@ $(foreach a,$(3),$(eval $(call make_all_rules,$(a))))
|
|||||||
$(3) : % : %-all
|
$(3) : % : %-all
|
||||||
|
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
|
||||||
|
##VAR BUILD_TYPE=release|debug type of rust build
|
||||||
|
BUILD_TYPE = release
|
||||||
|
|
||||||
|
##VAR ARCH=arch target to build (format: uname -m)
|
||||||
|
ARCH = $(shell uname -m)
|
||||||
|
##VAR LIBC=musl|gnu
|
||||||
|
LIBC ?= musl
|
||||||
|
ifneq ($(LIBC),musl)
|
||||||
|
ifeq ($(LIBC),gnu)
|
||||||
|
override LIBC = gnu
|
||||||
|
else
|
||||||
|
$(error "ERROR: A non supported LIBC value was passed. Supported values are musl and gnu")
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(ARCH), ppc64le)
|
||||||
|
override ARCH = powerpc64le
|
||||||
|
override LIBC = gnu
|
||||||
|
$(warning "WARNING: powerpc64le-unknown-linux-musl target is unavailable")
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(ARCH), s390x)
|
||||||
|
override LIBC = gnu
|
||||||
|
$(warning "WARNING: s390x-unknown-linux-musl target is unavailable")
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
EXTRA_RUSTFLAGS :=
|
||||||
|
ifeq ($(ARCH), aarch64)
|
||||||
|
override EXTRA_RUSTFLAGS = -C link-arg=-lgcc
|
||||||
|
$(warning "WARNING: aarch64-musl needs extra symbols from libgcc")
|
||||||
|
endif
|
||||||
|
|
||||||
|
TRIPLE = $(ARCH)-unknown-linux-$(LIBC)
|
||||||
|
Loading…
Reference in New Issue
Block a user