pFad - Phone/Frame/Anonymizer/Declutterfier! Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

URL: http://github.com/opencv/opencv-python/commit/3ec7ac6fbea0e3140611df81c498a25ad8376154

.css" /> Create Dockerfile_x86_64 · opencv/opencv-python@3ec7ac6 · GitHub
Skip to content

Commit 3ec7ac6

Browse files
authored
Create Dockerfile_x86_64
1 parent 4924e6b commit 3ec7ac6

File tree

1 file changed

+160
-0
lines changed

1 file changed

+160
-0
lines changed

docker/musllinux/Dockerfile_x86_64

Lines changed: 160 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,160 @@
1+
#
2+
FROM quay.io/pypa/musllinux_1_2_x86_64:latest
3+
4+
ARG CCACHE_VERSION=3.7.9
5+
ARG FFMPEG_VERSION=6.1.1
6+
ARG FREETYPE_VERSION=2.13.3
7+
ARG LIBPNG_VERSION=1.6.48
8+
ARG VPX_VERSION=v1.15.1
9+
ARG NASM_VERSION=2.15.04
10+
ARG OPENSSL_VERSION=1_1_1w
11+
ARG YASM_VERSION=1.3.0
12+
ARG AOM_VERSION=v3.12.1
13+
ARG AVIF_VERSION=v1.3.0
14+
15+
ENV LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
16+
17+
RUN apk add --no-cache \
18+
build-base \
19+
diffutils \
20+
cmake \
21+
bash \
22+
git \
23+
curl \
24+
wget \
25+
tar \
26+
xz \
27+
zlib-dev \
28+
xz-dev \
29+
nasm \
30+
yasm \
31+
pkgconfig \
32+
openssl-dev \
33+
libjpeg-turbo-dev \
34+
fontconfig-dev \
35+
freetype-dev \
36+
expat-dev \
37+
libpng-dev \
38+
alsa-lib-dev \
39+
musl-dev \
40+
ttf-dejavu \
41+
linux-headers \
42+
perl
43+
44+
RUN apk del libpng-dev
45+
46+
### libpng
47+
RUN mkdir ~/libpng_sources && \
48+
cd ~/libpng_sources && \
49+
curl -O -L https://download.sourceforge.net/libpng/libpng-${LIBPNG_VERSION}.tar.gz && \
50+
tar -xf libpng-${LIBPNG_VERSION}.tar.gz && \
51+
cd libpng-${LIBPNG_VERSION} && \
52+
./configure --prefix=/usr/local && \
53+
make && \
54+
make install && \
55+
cd .. && \
56+
rm -rf ~/libpng_sources
57+
58+
### freetype
59+
RUN mkdir ~/freetype_sources && \
60+
cd ~/freetype_sources && \
61+
curl -O -L https://download.savannah.gnu.org/releases/freetype/freetype-${FREETYPE_VERSION}.tar.gz && \
62+
tar -xf freetype-${FREETYPE_VERSION}.tar.gz && \
63+
cd freetype-${FREETYPE_VERSION} && \
64+
./configure --prefix="/ffmpeg_build" --enable-freetype-config && \
65+
make && \
66+
make install && \
67+
cd .. && \
68+
rm -rf ~/freetype_sources
69+
70+
### OpenSSL
71+
RUN mkdir ~/openssl_sources && \
72+
cd ~/openssl_sources && \
73+
curl -O -L https://github.com/openssl/openssl/archive/OpenSSL_${OPENSSL_VERSION}.tar.gz && \
74+
tar -xf OpenSSL_${OPENSSL_VERSION}.tar.gz && \
75+
cd openssl-OpenSSL_${OPENSSL_VERSION} && \
76+
./config --prefix="/ffmpeg_build" --openssldir="/ffmpeg_build" no-pinshared shared zlib && \
77+
make -j$(getconf _NPROCESSORS_ONLN) && \
78+
make install_sw && \
79+
cd .. && \
80+
rm -rf ~/openssl_build ~/openssl_sources
81+
82+
### libvpx
83+
RUN mkdir ~/libvpx_sources && \
84+
cd ~/libvpx_sources && \
85+
git clone --depth 1 -b ${VPX_VERSION} https://chromium.googlesource.com/webm/libvpx.git && \
86+
cd libvpx && \
87+
./configure --prefix="/ffmpeg_build" --disable-examples --disable-unit-tests --enable-vp9-highbitdepth --as=yasm --enable-pic --enable-shared && \
88+
make -j$(getconf _NPROCESSORS_ONLN) && \
89+
make install && \
90+
cd .. && \
91+
rm -rf ~/libvpx_sources
92+
93+
94+
### aom
95+
RUN mkdir -p /tmp/aom_sources && \
96+
cd /tmp/aom_sources && \
97+
git clone --depth 1 -b ${AOM_VERSION} https://aomedia.googlesource.com/aom && \
98+
mkdir build && cd build && \
99+
cmake \
100+
-DCMAKE_C_COMPILER=$(dirname $(which g++))/gcc \
101+
-DCMAKE_INSTALL_PREFIX=/usr \
102+
-DBUILD_SHARED_LIBS=ON \
103+
-DENABLE_TESTS=OFF \
104+
-DENABLE_EXAMPLES=OFF \
105+
../aom && \
106+
make -j$(getconf _NPROCESSORS_ONLN) && \
107+
make install
108+
### avif
109+
RUN mkdir ~/avif_sources && \
110+
cd ~/avif_sources && \
111+
git clone -b ${AVIF_VERSION} https://github.com/AOMediaCodec/libavif.git && \
112+
mkdir build && cd build && \
113+
cmake -DCMAKE_INSTALL_PREFIX=/usr -DAVIF_CODEC_AOM=SYSTEM -DAVIF_LIBYUV=LOCAL -DAVIF_BUILD_APPS=OFF ../libavif && \
114+
make -j$(getconf _NPROCESSORS_ONLN) && \
115+
make install && \
116+
cd .. && \
117+
rm -rf ~/avif_sources
118+
119+
### ffmpeg
120+
RUN mkdir -p /ffmpeg_sources && \
121+
cd /ffmpeg_sources && \
122+
curl -LO https://ffmpeg.org/releases/ffmpeg-${FFMPEG_VERSION}.tar.gz && \
123+
tar -xf ffmpeg-${FFMPEG_VERSION}.tar.gz && \
124+
cd ffmpeg-${FFMPEG_VERSION} && \
125+
PKG_CONFIG_PATH="/ffmpeg_build/lib/pkgconfig" ./configure \
126+
--prefix="/ffmpeg_build" \
127+
--extra-cflags="-I/ffmpeg_build/include" \
128+
--extra-ldflags="-L/ffmpeg_build/lib" \
129+
--enable-openssl \
130+
--enable-libvpx \
131+
--enable-shared \
132+
--enable-pic \
133+
--disable-indev=v4l2 \
134+
--disable-outdev=v4l2 && \
135+
make -j$(getconf _NPROCESSORS_ONLN) && \
136+
make install && \
137+
rm -rf /ffmpeg_sources
138+
139+
### ccache
140+
RUN curl -O -L https://github.com/ccache/ccache/releases/download/v${CCACHE_VERSION}/ccache-${CCACHE_VERSION}.tar.gz && \
141+
tar -xf ccache-${CCACHE_VERSION}.tar.gz && \
142+
cd ccache-${CCACHE_VERSION} && \
143+
./configure && \
144+
make -j$(getconf _NPROCESSORS_ONLN) && \
145+
make install && \
146+
cd .. && \
147+
rm -rf ccache-${CCACHE_VERSION}.tar.gz
148+
149+
# user`s UID is 1001
150+
RUN adduser -D -u 1001 ci && mkdir /io && chown ci:ci /io && \
151+
chown -R ci:ci /ffmpeg_build
152+
153+
USER ci
154+
155+
RUN git config --global --add safe.directory /io
156+
ENV PATH="/ffmpeg_build/bin:$PATH"
157+
ENV PKG_CONFIG_PATH /usr/local/lib/pkgconfig:/ffmpeg_build/lib/pkgconfig
158+
ENV LDFLAGS -L/ffmpeg_build/lib
159+
ENV PATH "$HOME/bin:$PATH"
160+
ENV LD_LIBRARY_PATH="/ffmpeg_build/lib:$LD_LIBRARY_PATH"

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad © 2024 Your Company Name. All rights reserved.





Check this box to remove all script contents from the fetched content.



Check this box to remove all images from the fetched content.


Check this box to remove all CSS styles from the fetched content.


Check this box to keep images inefficiently compressed and original size.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy