-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathDockerfile.rhel
39 lines (28 loc) · 973 Bytes
/
Dockerfile.rhel
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
# Copyright 2021 - 2022 The MathWorks, Inc.
ARG BUILD_ROOT=/root/
ARG RPM_DIR=${BUILD_ROOT}/rpmbuild/RPMS/x86_64/
ARG ARCH=
ARG DIST_BASE=almalinux
ARG DIST_TAG=8.5
FROM ${DIST_BASE}:${DIST_TAG} AS build-stage
RUN dnf install -y --nodocs dnf-plugins-core && \
dnf config-manager --enable powertools && \
dnf install -y rpm-build
ARG BUILD_ROOT
WORKDIR ${BUILD_ROOT}
RUN dnf download --source glibc && \
dnf builddep -y --nodocs glibc-*.src.rpm && \
rpm -ivh glibc-*.src.rpm
ARG GLIBC_VERSION=2.28-189
COPY scripts/update-specfile.sh ${BUILD_ROOT}
COPY patches/rhel/${GLIBC_VERSION} ${BUILD_ROOT}/patches
RUN cp patches/* rpmbuild/SOURCES && \
./update-specfile.sh
RUN rpmbuild --nocheck -bb rpmbuild/SPECS/glibc.spec
ARG RPM_DIR
WORKDIR ${RPM_DIR}
RUN tar -czf all-packages.tar.gz *.rpm
FROM scratch AS release-stage
ARG RPM_DIR
COPY --from=build-stage ${RPM_DIR}/*.rpm /build/
COPY --from=build-stage ${RPM_DIR}/all-packages.tar.gz /build/