Skip to content

Commit 8e86d77

Browse files
committed
build each library in a separate dockerfile command for easier debugging
1 parent 2eb9e03 commit 8e86d77

File tree

2 files changed

+50
-38
lines changed

2 files changed

+50
-38
lines changed

docker/Dockerfile_i686

Lines changed: 26 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,10 @@ RUN curl -O -L https://cmake.org/files/v3.9/cmake-3.9.0.tar.gz && \
2929
# https://trac.ffmpeg.org/wiki/CompilationGuide/Centos#GettheDependencies
3030
# manylinux provides the toolchain and git; we provide cmake
3131
RUN yum install freetype-devel bzip2-devel zlib-devel -y && \
32-
curl -O -L https://www.cpan.org/src/5.0/perl-5.20.1.tar.gz && \
32+
mkdir ~/ffmpeg_sources
33+
34+
# Newer openssl configure requires newer perl
35+
RUN curl -O -L https://www.cpan.org/src/5.0/perl-5.20.1.tar.gz && \
3336
tar -xf perl-5.20.1.tar.gz && \
3437
cd perl-5.20.1 && \
3538
./Configure -des -Dprefix="$HOME/openssl_build" && \
@@ -39,38 +42,41 @@ RUN yum install freetype-devel bzip2-devel zlib-devel -y && \
3942
cd .. && \
4043
rm -rf perl-5.20.1*
4144

42-
RUN mkdir ~/ffmpeg_sources && \
43-
cd ~/ffmpeg_sources && \
45+
RUN cd ~/ffmpeg_sources && \
46+
curl -O -L https://github.com/openssl/openssl/archive/OpenSSL_1_1_1c.tar.gz && \
47+
tar -xf OpenSSL_1_1_1c.tar.gz && \
48+
cd openssl-OpenSSL_1_1_1c && \
49+
true '#in i686, ./config detects x64 in i686 without linux32 \
50+
when run from "docker build"' && \
51+
PERL="$HOME/openssl_build/bin/perl" linux32 ./config --prefix="$HOME/ffmpeg_build" --openssldir="$HOME/ffmpeg_build" shared zlib && \
52+
make -j4 && \
53+
true '#skip installing documentation' && \
54+
make install_sw && \
55+
rm -rf ~/openssl_build
56+
57+
RUN cd ~/ffmpeg_sources && \
4458
curl -O -L http://www.nasm.us/pub/nasm/releasebuilds/2.13.02/nasm-2.13.02.tar.bz2 && \
4559
tar -xf nasm-2.13.02.tar.bz2 && cd nasm-2.13.02 && ./autogen.sh && \
4660
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" && \
4761
make -j4 && \
48-
make install && \
49-
cd ~/ffmpeg_sources && \
62+
make install
63+
64+
RUN cd ~/ffmpeg_sources && \
5065
curl -O -L http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz && \
5166
tar -xf yasm-1.3.0.tar.gz && \
5267
cd yasm-1.3.0 && \
5368
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" && \
5469
make -j4 && \
55-
make install && \
56-
cd ~/ffmpeg_sources && \
70+
make install
71+
72+
RUN cd ~/ffmpeg_sources && \
5773
git clone --depth 1 https://chromium.googlesource.com/webm/libvpx.git && \
5874
cd libvpx && \
5975
./configure --prefix="$HOME/ffmpeg_build" --disable-examples --disable-unit-tests --enable-vp9-highbitdepth --as=yasm --enable-pic --enable-shared && \
6076
make -j4 && \
61-
make install && \
62-
cd ~/ffmpeg_sources && \
63-
curl -O -L https://github.com/openssl/openssl/archive/OpenSSL_1_1_1c.tar.gz && \
64-
tar -xf OpenSSL_1_1_1c.tar.gz && \
65-
cd openssl-OpenSSL_1_1_1c && \
66-
true '#in i686, ./config detects x64 in i686 without linux32 \
67-
when run from "docker build"' && \
68-
PERL="$HOME/openssl_build/bin/perl" linux32 ./config --prefix="$HOME/ffmpeg_build" --openssldir="$HOME/ffmpeg_build" shared zlib && \
69-
make -j4 && \
70-
true '#skip installing documentation' && \
71-
make install_sw && \
72-
cd ~/ffmpeg_sources && \
73-
rm -rf ~/openssl_build && \
77+
make install
78+
79+
RUN cd ~/ffmpeg_sources && \
7480
curl -O -L https://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2 && \
7581
tar -xf ffmpeg-snapshot.tar.bz2 && \
7682
cd ffmpeg && \

docker/Dockerfile_x86_64

Lines changed: 24 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,10 @@ RUN curl -O -L https://cmake.org/files/v3.9/cmake-3.9.0.tar.gz && \
2929
# https://trac.ffmpeg.org/wiki/CompilationGuide/Centos#GettheDependencies
3030
# manylinux provides the toolchain and git; we provide cmake
3131
RUN yum install freetype-devel bzip2-devel zlib-devel -y && \
32-
curl -O -L https://www.cpan.org/src/5.0/perl-5.20.1.tar.gz && \
32+
mkdir ~/ffmpeg_sources
33+
34+
# Newer openssl configure requires newer perl
35+
RUN curl -O -L https://www.cpan.org/src/5.0/perl-5.20.1.tar.gz && \
3336
tar -xf perl-5.20.1.tar.gz && \
3437
cd perl-5.20.1 && \
3538
./Configure -des -Dprefix="$HOME/openssl_build" && \
@@ -39,36 +42,39 @@ RUN yum install freetype-devel bzip2-devel zlib-devel -y && \
3942
cd .. && \
4043
rm -rf perl-5.20.1*
4144

42-
RUN mkdir ~/ffmpeg_sources && \
43-
cd ~/ffmpeg_sources && \
45+
RUN cd ~/ffmpeg_sources && \
46+
curl -O -L https://github.com/openssl/openssl/archive/OpenSSL_1_1_1c.tar.gz && \
47+
tar -xf OpenSSL_1_1_1c.tar.gz && \
48+
cd openssl-OpenSSL_1_1_1c && \
49+
PERL="$HOME/openssl_build/bin/perl" ./config --prefix="$HOME/ffmpeg_build" --openssldir="$HOME/ffmpeg_build" shared zlib && \
50+
make -j4 && \
51+
true '#skip installing documentation' && \
52+
make install_sw && \
53+
rm -rf ~/openssl_build
54+
55+
RUN cd ~/ffmpeg_sources && \
4456
curl -O -L http://www.nasm.us/pub/nasm/releasebuilds/2.13.02/nasm-2.13.02.tar.bz2 && \
4557
tar -xf nasm-2.13.02.tar.bz2 && cd nasm-2.13.02 && ./autogen.sh && \
4658
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" && \
4759
make -j4 && \
48-
make install && \
49-
cd ~/ffmpeg_sources && \
60+
make install
61+
62+
RUN cd ~/ffmpeg_sources && \
5063
curl -O -L http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz && \
5164
tar -xf yasm-1.3.0.tar.gz && \
5265
cd yasm-1.3.0 && \
5366
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" && \
5467
make -j4 && \
55-
make install && \
56-
cd ~/ffmpeg_sources && \
68+
make install
69+
70+
RUN cd ~/ffmpeg_sources && \
5771
git clone --depth 1 https://chromium.googlesource.com/webm/libvpx.git && \
5872
cd libvpx && \
5973
./configure --prefix="$HOME/ffmpeg_build" --disable-examples --disable-unit-tests --enable-vp9-highbitdepth --as=yasm --enable-pic --enable-shared && \
6074
make -j4 && \
61-
make install && \
62-
cd ~/ffmpeg_sources && \
63-
curl -O -L https://github.com/openssl/openssl/archive/OpenSSL_1_1_1c.tar.gz && \
64-
tar -xf OpenSSL_1_1_1c.tar.gz && \
65-
cd openssl-OpenSSL_1_1_1c && \
66-
PERL="$HOME/openssl_build/bin/perl" ./config --prefix="$HOME/ffmpeg_build" --openssldir="$HOME/ffmpeg_build" shared zlib && \
67-
make -j4 && \
68-
true '#skip installing documentation' && \
69-
make install_sw && \
70-
rm -rf ~/openssl_build && \
71-
cd ~/ffmpeg_sources && \
75+
make install
76+
77+
RUN cd ~/ffmpeg_sources && \
7278
curl -O -L https://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2 && \
7379
tar -xf ffmpeg-snapshot.tar.bz2 && \
7480
cd ffmpeg && \

0 commit comments

Comments
 (0)