summaryrefslogtreecommitdiffstats
path: root/redhat/docker/el5/Dockerfile.i686
diff options
context:
space:
mode:
authorFrançois Andriot <albator78@libertysurf.fr>2021-05-13 22:37:43 +0200
committerFrançois Andriot <albator78@libertysurf.fr>2021-05-13 22:40:34 +0200
commite992171187e448332d866ac9827f46b7632ce3fa (patch)
tree21afc436092e1bcb55834eb22ad3df9bdab883cb /redhat/docker/el5/Dockerfile.i686
parentec1c5eaa0e86bf9f34c15e86675834683fbcbbfb (diff)
downloadtde-packaging-e992171187e448332d866ac9827f46b7632ce3fa.tar.gz
tde-packaging-e992171187e448332d866ac9827f46b7632ce3fa.zip
RPM: update build scripts for centos5
Signed-off-by: François Andriot <albator78@libertysurf.fr>
Diffstat (limited to 'redhat/docker/el5/Dockerfile.i686')
-rw-r--r--redhat/docker/el5/Dockerfile.i686124
1 files changed, 104 insertions, 20 deletions
diff --git a/redhat/docker/el5/Dockerfile.i686 b/redhat/docker/el5/Dockerfile.i686
index 41fa7813e..f9f9a3af6 100644
--- a/redhat/docker/el5/Dockerfile.i686
+++ b/redhat/docker/el5/Dockerfile.i686
@@ -4,29 +4,113 @@ ARG TDE_VERSION=14.1.0
ARG ARCH=i686
# Add local repositories
-RUN rm -f /etc/yum.repos.d/*.repo
-ADD centos-5.repo /etc/yum.repos.d/centos-5.repo
-ADD epel-5.repo /etc/yum.repos.d/epel-5.repo
-ADD repoforge-5.repo /etc/yum.repos.d/repoforge-5.repo
-
-# Install Trinity build dependencies
-ADD packages.trinity /etc/yum.repos.d/packages
-#RUN yum install -y setarch
-RUN setarch ${ARCH} yum update -y
-RUN setarch ${ARCH} yum install -y $(</etc/yum.repos.d/packages) || :
+COPY packages /packages
+RUN rpm -Uvh --force http://repo/repo/archives/centos/5/os/i386/CentOS/{curl-7.15.5-17.el5_9,libidn-0.6.5-1.1}.i386.rpm \
+ && echo "multilib_policy=best" >>/etc/yum.conf \
+ && cd /etc/yum.repos.d \
+ && rm -fv *.repo \
+ && curl http://repo/repo/{centos5,epel5,repoforge5}.repo >repos.repo \
+ && rpm -e --nodeps --justdb libselinux \
+ && setarch ${ARCH} yum -y update \
+ && setarch ${ARCH} yum -y install $(</packages) || :
# Avoid conflict with gnome-screensaver
-RUN setarch ${ARCH} yum remove -y gnome-screensaver
-RUN setarch ${ARCH} yum install -y --disablerepo="*" --enablerepo="centos-5-extras" xscreensaver
+RUN setarch ${ARCH} yum -y remove gnome-screensaver \
+ && setarch ${ARCH} yum -y install --disablerepo="*" --enablerepo="centos-extras" xscreensaver
-# Add YUM repository for locally built packages
-ADD rpmbuild.repo /etc/yum.repos.d/rpmbuild.repo
-RUN sed -i "/etc/yum.repos.d/rpmbuild.repo" -e "s|\${ARCH}|${ARCH}|g" -e "s|\${TDE_VERSION}|${TDE_VERSION}|g"
+# Updated build tools (not provided in centos5)
+# Distro-specific patches
+RUN rpm -Uvh http://repo/trinity/archives/el5/tools/RPMS/{noarch/autoconf-2.63-5.el5.noarch,noarch/automake-1.11.1-4.el5.noarch,i686/m4-1.4.13-5.el5.i386}.rpm \
+ && rpm -Uvh http://repo/trinity/archives/el5/trinity-14.0.4/RPMS/i686/trinity-poppler{,-devel}-0.12.4-1.el5.i386.rpm \
+ && 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|"
# Add non-root user to build packages
-RUN useradd -m -s /bin/bash -u 1000 trinity
-RUN echo "trinity ALL=(ALL) NOPASSWD: ALL" >>/etc/sudoers
-ADD rpmmacros /home/trinity/.rpmmacros
+RUN useradd -m -s /bin/bash -u 1000 trinity \
+ && echo "trinity ALL=(ALL) NOPASSWD: ALL" >>/etc/sudoers
-# Distro-specific patches
-RUN 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|"
+# Fix sudo running in docker
+RUN sed -i "/etc/sudoers" -e "/requiretty/ s|^|#|"
+
+# Use GCC 4.4 by default
+RUN rm -f /usr/bin/gcc && ln -sf /usr/bin/gcc44 /usr/bin/gcc \
+ && rm -f /usr/bin/g++ && ln -sf /usr/bin/g++44 /usr/bin/g++ \
+ && rm -f /usr/bin/c++ && ln -sf /usr/bin/g++44 /usr/bin/c++
+
+USER trinity
+COPY rpmmacros /home/trinity/.rpmmacros
+RUN mkdir -p ${HOME}/rpmbuild/{BUILD,BUILDROOT,SOURCES,SPECS,RPMS/noarch,RPMS/${ARCH},SRPMS}
+
+# Build development tools
+RUN wget -nv -P /tmp http://vault.centos.org/6.10/os/Source/SPackages/cmake-2.8.12.2-4.el6.src.rpm \
+ && rpm -ivh --nomd5 /tmp/cmake-2.8.12.2-4.el6.src.rpm \
+ && setarch ${ARCH} rpmbuild -ba ${HOME}/rpmbuild/SPECS/cmake.spec --without gui \
+ && sudo rpm -Uvh ${HOME}/rpmbuild/RPMS/*/cmake-2*.rpm \
+ && rm -fv /tmp/*.src.rpm \
+ && sudo sed -i "/usr/share/cmake/Modules/FindGTK2.cmake" -e "/GTK2_GIO/ s|^|#|"
+
+RUN wget -nv -P /tmp http://vault.centos.org/6.10/os/Source/SPackages/binutils-2.20.51.0.2-5.48.el6.src.rpm \
+ && rpm -ivh --nomd5 /tmp/binutils-2.20.51.0.2-5.48.el6.src.rpm \
+ && setarch ${ARCH} rpmbuild -ba ${HOME}/rpmbuild/SPECS/binutils.spec --nodeps \
+ && sudo rpm -Uvh ${HOME}/rpmbuild/RPMS/*/binutils{,-devel}-2*.rpm \
+ && rm -fv /tmp/*.src.rpm
+
+# Build dependencies
+RUN wget -nv -P /tmp http://vault.centos.org/6.10/os/Source/SPackages/file-5.04-30.el6.src.rpm \
+ && rpm -ivh --nomd5 /tmp/file-5.04-30.el6.src.rpm \
+ && setarch ${ARCH} rpmbuild -ba ${HOME}/rpmbuild/SPECS/file.spec \
+ && sudo rpm -Uvh ${HOME}/rpmbuild/RPMS/*/file{,-libs,-devel}-5*.rpm \
+ && rm -fv /tmp/*.src.rpm
+
+RUN wget -nv -P /tmp http://archives.fedoraproject.org/pub/archive/epel/6/SRPMS/Packages/p/pcsc-perl-1.4.14-2.el6.src.rpm \
+ && rpm -ivh --nomd5 /tmp/pcsc-perl-1.4.14-2.el6.src.rpm \
+ && sed -i ${HOME}/rpmbuild/SPECS/pcsc-perl.spec -e "s|%license|%doc|" -e "/URL:/ s|$|\nBuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)|" \
+ && setarch ${ARCH} rpmbuild -ba ${HOME}/rpmbuild/SPECS/pcsc-perl.spec --define "__isa_bits 32" \
+ && sudo rpm -Uvh ${HOME}/rpmbuild/RPMS/*/pcsc-perl-1*.rpm \
+ && rm -fv /tmp/*.src.rpm
+
+RUN wget -nv -P /tmp http://archives.fedoraproject.org/pub/archive/epel/6/SRPMS/Packages/s/sword-1.7.3-2.el6.src.rpm \
+ && rpm -ivh --nomd5 /tmp/sword-1.7.3-2.el6.src.rpm \
+ && sed -i ${HOME}/rpmbuild/SPECS/sword.spec -e "/URL:/ s|$|\nBuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)|" \
+ && setarch ${ARCH} rpmbuild -ba ${HOME}/rpmbuild/SPECS/sword.spec \
+ && sudo rpm -Uvh ${HOME}/rpmbuild/RPMS/*/sword{,-devel}-1*.rpm \
+ && rm -fv /tmp/*.src.rpm
+
+RUN wget -nv -P /tmp http://vault.centos.org/6.10/os/Source/SPackages/gnuchess-5.07-14.1.el6.src.rpm \
+ && rpm -ivh --nomd5 /tmp/gnuchess-5.07-14.1.el6.src.rpm \
+ && setarch ${ARCH} rpmbuild -ba ${HOME}/rpmbuild/SPECS/gnuchess.spec \
+ && sudo rpm -Uvh ${HOME}/rpmbuild/RPMS/*/gnuchess-5*.rpm \
+ && rm -fv /tmp/*.src.rpm
+
+RUN wget -nv -P /tmp http://fr2.rpmfind.net/linux/epel/7/SRPMS/Packages/p/perl-PAR-1.015-4.el7.src.rpm \
+ && rpm -ivh --nomd5 /tmp/perl-PAR-1.015-4.el7.src.rpm \
+ && sed -i ${HOME}/rpmbuild/SPECS/perl-PAR.spec -e "s|%license|%doc|" -e "/perl(AutoLoader)/ s|^|#|" -e "/URL:/ s|$|\nBuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)|" -e "/^make test/ s|^|#|" \
+ && setarch ${ARCH} rpmbuild -ba ${HOME}/rpmbuild/SPECS/perl-PAR.spec \
+ && sudo rpm -Uvh ${HOME}/rpmbuild/RPMS/*/perl-PAR-1*.rpm \
+ && rm -fv /tmp/*.src.rpm
+
+RUN wget -nv -P /tmp http://vault.centos.org/7.7.1908/os/Source/SPackages/perl-Module-ScanDeps-1.10-3.el7.src.rpm \
+ && rpm -ivh --nomd5 /tmp/perl-Module-ScanDeps-1.10-3.el7.src.rpm \
+ && sed -i ${HOME}/rpmbuild/SPECS/perl-Module-ScanDeps.spec -e "/URL:/ s|$|\nBuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)|" -e "/^make test/ s|^|#|" \
+ && setarch ${ARCH} rpmbuild -ba ${HOME}/rpmbuild/SPECS/perl-Module-ScanDeps.spec \
+ && sudo rpm -Uvh ${HOME}/rpmbuild/RPMS/*/perl-Module-ScanDeps-*.rpm \
+ && rm -fv /tmp/*.src.rpm
+
+RUN wget -nv -P /tmp http://fr2.rpmfind.net/linux/epel/7/SRPMS/Packages/p/perl-PAR-Packer-1.041-2.el7.src.rpm \
+ && rpm -ivh --nomd5 /tmp/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|^|#|" -e "/^Summary:/ s|$|\nGroup: Development/Languages|" -e "/URL:/ s|$|\nBuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)|" -e "s|desktop-file-install|desktop-file-install --vendor=''|" \
+ && setarch ${ARCH} rpmbuild -ba ${HOME}/rpmbuild/SPECS/perl-PAR-Packer.spec --define "_unpackaged_files_terminate_build 0" \
+ && sudo rpm -Uvh ${HOME}/rpmbuild/RPMS/*/perl-PAR-Packer-1*.rpm --nodeps \
+ && rm -fv /tmp/*.src.rpm
+
+RUN wget -nv -P /tmp http://vault.centos.org/6.10/os/Source/SPackages/exempi-2.1.0-5.el6.src.rpm \
+ && rpm -ivh --nomd5 /tmp/exempi-2.1.0-5.el6.src.rpm \
+ && setarch ${ARCH} rpmbuild -ba ${HOME}/rpmbuild/SPECS/exempi.spec \
+ && sudo rpm -Uvh ${HOME}/rpmbuild/RPMS/*/exempi{,-devel}-2*.rpm \
+ && rm -fv /tmp/*.src.rpm
+
+RUN wget -nv -P /tmp http://vault.centos.org/6.10/os/Source/SPackages/pilot-link-0.12.4-6.el6.src.rpm \
+ && rpm -ivh --nomd5 /tmp/pilot-link-0.12.4-6.el6.src.rpm \
+ && setarch ${ARCH} rpmbuild -ba ${HOME}/rpmbuild/SPECS/pilot-link.spec \
+ && sudo rpm -Uvh ${HOME}/rpmbuild/RPMS/*/pilot-link{,-devel}-0*.rpm \
+ && rm -fv /tmp/*.src.rpm