ARver/Dockerfile
arcctgx 1d75a3394e adapt build script to building a single wheel
With the introduction of Python limited API we're building wheel only
with Python 3.7. We're not iterating over available Python interpreters
anymore and there's no need to remove symlinks to unsupported versions.

Change the wheel directory so that both source distribution and the
wheel end up in dist/. Remove the initial non-manylinux wheels, but
don't remove entire directory before building, only remove the wheel
files. Otherwise the source distribution would be removed as well.

Simplify iterating over wheel files. Finding and sorting is not needed
anymore, because only a single wheel file is expected.
2024-11-23 02:32:23 +01:00

48 lines
1.9 KiB
Docker

# hadolint global ignore=DL3003
FROM quay.io/pypa/manylinux2014_x86_64:2024-08-03-32dfa47
ADD https://downloads.xiph.org/releases/ogg/libogg-1.3.5.tar.xz \
https://downloads.xiph.org/releases/vorbis/libvorbis-1.3.7.tar.xz \
https://downloads.xiph.org/releases/flac/flac-1.4.3.tar.xz \
https://downloads.xiph.org/releases/opus/opus-1.4.tar.gz \
https://github.com/libsndfile/libsndfile/releases/download/1.2.2/libsndfile-1.2.2.tar.xz /tmp/
WORKDIR /tmp/
COPY ./utils/SHA256SUMS.txt .
RUN sha256sum -c SHA256SUMS.txt
RUN tar xf libogg-1.3.5.tar.xz && cd libogg-1.3.5 && \
./configure --prefix=/usr --libdir=/usr/lib64 && \
make -j "$(nproc --all)" && make install && ldconfig && \
rm -rf /usr/share/doc/libogg && rm -rf /tmp/libogg-1.3.5*
RUN tar xf libvorbis-1.3.7.tar.xz && cd libvorbis-1.3.7 && \
./configure --prefix=/usr --libdir=/usr/lib64 && \
make -j "$(nproc --all)" && make install && ldconfig && \
rm -rf /usr/share/doc/libvorbis-1.3.7 && rm -rf /tmp/libvorbis-1.3.7*
RUN tar xf flac-1.4.3.tar.xz && cd flac-1.4.3 && \
./configure --prefix=/usr --libdir=/usr/lib64 --disable-cpplibs --disable-programs && \
make -j "$(nproc --all)" && make install && ldconfig && \
rm -rf /usr/share/doc/flac && rm /usr/share/man/man1/*flac.1 && rm -rf /tmp/flac-1.4.3*
RUN tar xf opus-1.4.tar.gz && cd opus-1.4 && \
./configure --prefix=/usr --libdir=/usr/lib64 --disable-static --disable-doc --disable-extra-programs && \
make -j "$(nproc --all)" && make install && ldconfig && \
rm -rf /tmp/opus-1.4*
RUN tar xf libsndfile-1.2.2.tar.xz && cd libsndfile-1.2.2 && \
./configure --prefix=/usr --libdir=/usr/lib64 --disable-full-suite --disable-mpeg && \
make -j "$(nproc --all)" && make install && ldconfig && \
rm -rf /tmp/libsndfile-1.2.2*
WORKDIR /
COPY ./utils/pip.conf /etc/
COPY ./utils/build-wheels.sh /
CMD ["/build-wheels.sh"]