blob: 6982cda6e6a118eea7401fa25555a407d72a096f (
plain)
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
FROM centos:6
ARG TDE_VERSION=14.0.12
ARG ARCH=x86_64
# Enable proxy
# Add EPEL repository
# Add RPMFUSION repository
# Install Trinity build dependencies
COPY packages /packages
RUN echo "proxy=http://proxy:3128" >>"/etc/yum.conf" \
&& rpm -Uvh http://repo/repo/archives/centos/6/os/x86_64/Packages/wget-1.12-10.el6.x86_64.rpm \
&& rm -fv /etc/yum.repos.d/*.repo \
&& wget -P /etc/yum.repos.d -nv http://repo/repo/{centos6,epel6}.repo \
&& sed -i /etc/yum.repos.d/*.repo -e "s|https://|http://|g" \
&& yum -y clean all \
&& yum -y update \
&& rm -fv /etc/yum.repos.d/CentOS-*.repo \
&& rpm -Uvh --nodeps https://download1.rpmfusion.org/free/el/rpmfusion-free-release-6.noarch.rpm \
&& yum -y install $(</packages)
# Add YUM repository for locally built packages
WORKDIR /etc/yum.repos.d
COPY rpmbuild.repo rpmbuild.repo
RUN sed -i "rpmbuild.repo" -e "s|\${ARCH}|${ARCH}|g" -e "s|\${TDE_VERSION}|${TDE_VERSION}|g"
# Fix utempter detection
# Distro-specific patches
RUN chmod a+r /usr/libexec/utempter/utempter \
&& sed -i "/usr/include/jasper/jas_math.h" -e "/#include <stdint.h>/ s|$|\n#ifndef SIZE_MAX\n#define SIZE_MAX ((size_t) -1)\n#endif\n|" \
&& ln -sf libmp4v2.so /usr/lib64/libmp4.so
# Add non-root user to build packages
RUN useradd -m -s /bin/bash -u 1000 trinity \
&& echo "trinity ALL=(ALL) NOPASSWD: ALL" >>"/etc/sudoers"
USER trinity
COPY rpmmacros /home/trinity/.rpmmacros
# Build supplementary development tools
RUN sudo rpm -Uvh http://repo/repo/build-tools/el6/RPMS/x86_64/m4-1.4.16-10.el6.x86_64.rpm
RUN rpmbuild --rebuild http://vault.centos.org/7.7.1908/os/Source/SPackages/autoconf-2.69-11.el7.src.rpm --nodeps \
&& sudo rpm -Uvh ${HOME}/rpmbuild/RPMS/*/autoconf-2*.rpm
RUN rpmbuild --rebuild http://vault.centos.org/7.7.1908/os/Source/SPackages/perl-Module-Install-1.06-4.el7.src.rpm \
&& sudo rpm -Uvh ${HOME}/rpmbuild/RPMS/*/perl-Module-Install-*.rpm
RUN rpmbuild --rebuild http://vault.centos.org/7.7.1908/os/Source/SPackages/perl-Module-ScanDeps-1.10-3.el7.src.rpm \
&& sudo rpm -Uvh ${HOME}/rpmbuild/RPMS/*/perl-Module-ScanDeps-*.rpm
RUN rpm -i https://fr2.rpmfind.net/linux/epel/7/SRPMS/Packages/p/perl-PAR-1.015-4.el7.src.rpm \
&& sed -i ${HOME}/rpmbuild/SPECS/perl-PAR.spec -e "s|%license|%doc|" \
&& rpmbuild -ba ${HOME}/rpmbuild/SPECS/perl-PAR.spec \
&& sudo rpm -Uvh ${HOME}/rpmbuild/RPMS/*/perl-PAR-1*.rpm
RUN rpmbuild --rebuild https://fr2.rpmfind.net/linux/epel/7/SRPMS/Packages/p/perl-Getopt-ArgvFile-1.11-24.el7.src.rpm \
&& sudo rpm -Uvh ${HOME}/rpmbuild/RPMS/*/perl-Getopt-ArgvFile-*.rpm
RUN rpm -i https://fr2.rpmfind.net/linux/epel/7/SRPMS/Packages/p/perl-PAR-Packer-1.041-2.el7.src.rpm \
&& sed -i ${HOME}/rpmbuild/SPECS/perl-PAR-Packer.spec -e "s|%license|%doc|" -e "/^make test/ s|^|#|" \
&& rpmbuild -ba ${HOME}/rpmbuild/SPECS/perl-PAR-Packer.spec \
&& sudo rpm -Uvh ${HOME}/rpmbuild/RPMS/*/perl-PAR-Packer-1*.rpm --nodeps
RUN rpm -i https://dl.fedoraproject.org/pub/epel/7/SRPMS/Packages/c/cln-1.3.4-1.el7.src.rpm \
&& rpmbuild -ba ${HOME}/rpmbuild/SPECS/cln.spec \
&& sudo rpm -Uvh ${HOME}/rpmbuild/RPMS/*/cln{,-devel}-1*.rpm
RUN rpm -i https://dl.fedoraproject.org/pub/epel/7/SRPMS/Packages/l/libqalculate-0.9.7-7.el7.src.rpm \
&& rpmbuild -ba ${HOME}/rpmbuild/SPECS/libqalculate.spec \
&& sudo rpm -Uvh ${HOME}/rpmbuild/RPMS/*/libqalculate{,-devel}-0*.rpm
|