initial stagex building example
This commit is contained in:
parent
37f63fd63a
commit
cec12749a9
|
@ -0,0 +1,37 @@
|
||||||
|
FROM scratch AS base
|
||||||
|
|
||||||
|
FROM base AS fetch
|
||||||
|
COPY --from=stagex/rust . /
|
||||||
|
COPY --from=stagex/busybox . /
|
||||||
|
COPY --from=stagex/musl . /
|
||||||
|
COPY --from=stagex/gcc . /
|
||||||
|
COPY --from=stagex/llvm . /
|
||||||
|
COPY --from=stagex/libunwind . /
|
||||||
|
COPY --from=stagex/openssl . /
|
||||||
|
COPY --from=stagex/zlib . /
|
||||||
|
COPY --from=stagex/ca-certificates . /
|
||||||
|
ADD . /src
|
||||||
|
WORKDIR /src
|
||||||
|
RUN cargo fetch
|
||||||
|
|
||||||
|
FROM fetch AS build
|
||||||
|
COPY --from=stagex/clang . /
|
||||||
|
COPY --from=stagex/linux-headers . /
|
||||||
|
COPY --from=stagex/gmp . /
|
||||||
|
COPY --from=stagex/nettle . /
|
||||||
|
COPY --from=stagex/pcsc-lite . /
|
||||||
|
COPY --from=stagex/pkgconf . /
|
||||||
|
COPY --from=stagex/binutils . /
|
||||||
|
ENV NETTLE_STATIC=yes
|
||||||
|
ENV PCSC_LIB_NAME=static=pcsclite
|
||||||
|
ENV RUSTFLAGS='-C codegen-units=1'
|
||||||
|
RUN --network=none \
|
||||||
|
cargo build \
|
||||||
|
--frozen \
|
||||||
|
--release \
|
||||||
|
--features static \
|
||||||
|
--target x86_64-unknown-linux-musl \
|
||||||
|
--bin keyfork
|
||||||
|
|
||||||
|
FROM scratch AS install
|
||||||
|
COPY --from=build keyfork/target/release/keyfork /keyfork
|
5
Makefile
5
Makefile
|
@ -1,5 +1,5 @@
|
||||||
.PHONY: default
|
.PHONY: default
|
||||||
default: docs/book
|
default: out/keyfork docs/book
|
||||||
|
|
||||||
BASE_REF ?= main
|
BASE_REF ?= main
|
||||||
HEAD_REF ?= HEAD
|
HEAD_REF ?= HEAD
|
||||||
|
@ -13,6 +13,9 @@ define clone-repo
|
||||||
test `git -C $(1) rev-parse HEAD` = $(3)
|
test `git -C $(1) rev-parse HEAD` = $(3)
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
out/keyfork: Cargo.toml Cargo.lock crates $(shell git ls-files crates)
|
||||||
|
docker build --progress=plain --output out/ -f Containerfile .
|
||||||
|
|
||||||
docs/book: docs/src/links.md $(shell find docs/src -type f -name '*.md')
|
docs/book: docs/src/links.md $(shell find docs/src -type f -name '*.md')
|
||||||
mdbook build docs
|
mdbook build docs
|
||||||
mkdir -p docs/book/rustdoc
|
mkdir -p docs/book/rustdoc
|
||||||
|
|
Loading…
Reference in New Issue