forked from yao-pkg/pkg-fetch
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDockerfile.linuxcross
48 lines (35 loc) · 1.33 KB
/
Dockerfile.linuxcross
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
FROM ubuntu:bionic AS build
USER root:root
WORKDIR /root/pkg-fetch/
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update
RUN apt-get install -y curl software-properties-common ca-certificates gnupg
# Install Node.js
RUN curl -fsSL https://deb.nodesource.com/setup_16.x | bash - && \
apt-get install -y nodejs
RUN apt-get install -y binutils g++-8 git make patch python3 python3-distutils
ARG TARGET_TOOLCHAIN_ARCH
RUN [ `uname -m` = ${TARGET_TOOLCHAIN_ARCH} ] || \
apt-get install -y binutils-${TARGET_TOOLCHAIN_ARCH}-linux-gnu g++-8-${TARGET_TOOLCHAIN_ARCH}-linux-gnu
ENV CC=${TARGET_TOOLCHAIN_ARCH}-linux-gnu-gcc-8
ENV CXX=${TARGET_TOOLCHAIN_ARCH}-linux-gnu-g++-8
ENV AR=${TARGET_TOOLCHAIN_ARCH}-linux-gnu-ar
ENV NM=${TARGET_TOOLCHAIN_ARCH}-linux-gnu-nm
ENV RANLIB=${TARGET_TOOLCHAIN_ARCH}-linux-gnu-ranlib
ENV READELF=${TARGET_TOOLCHAIN_ARCH}-linux-gnu-readelf
ENV STRIP=${TARGET_TOOLCHAIN_ARCH}-linux-gnu-strip
ENV CC_host=gcc-8
ENV CXX_host=g++-8
ENV AR_host=ar
ENV NM_host=nm
ENV RANLIB_host=ranlib
ENV READELF_host=readelf
RUN npm install -g yarn
COPY . ./
RUN yarn install --ignore-engines
ARG PKG_FETCH_OPTION_a
ARG PKG_FETCH_OPTION_n
ARG PKG_FETCH_OPTION_d
RUN yarn start --arch $PKG_FETCH_OPTION_a --node-range $PKG_FETCH_OPTION_n --output dist --debug $PKG_FETCH_OPTION_d
FROM scratch
COPY --from=build /root/pkg-fetch/dist /