Dockerfile 2.72 KB
Newer Older
1
FROM registry.videolan.org:5000/vlc-debian-llvm-mingw:20190621125349
2

3
ENV IMAGE_DATE=201906211545
4

5
USER root
6
RUN mkdir -p /prefix && chown videolan /prefix
7 8
USER videolan

9
RUN TARGET_TRIPLE=x86_64-w64-mingw32 \
10 11
    SQLITE_VERSION=sqlite-autoconf-3260000 \
    SQLITE_SHA256=5daa6a3fb7d1e8c767cd59c4ded8da6e4b00c61d3b466d0685e35c4dd6d7bf5d \
12
    JPEGTURBO_VERSION=1.5.0 \
13
    JPEGTURBO_SHA256=9f397c31a67d2b00ee37597da25898b03eb282ccd87b135a50a69993b6a2035f \
14 15
    RAPIDJSON_VERSION=1.1.0 \
    RAPIDJSON_SHA256=bf7ced29704a1e696fbccf2a2b4ea068e7774fa37f6d7dd4039d0787f8bed98e && \
16
    mkdir -p /buildml && cd /buildml && \
17 18
    git clone --depth=1 https://git.videolan.org/git/vlc.git && \
    cd vlc && \
Hugo Beauzée-Luyssen's avatar
Hugo Beauzée-Luyssen committed
19
    cd extras/tools && ./bootstrap && make -j`nproc` && \
20
    make -j`nproc` .buildlibtool && \
21
    export PATH=`pwd`/build/bin:$PATH && cd ../../ && \
22 23
    cd contrib && mkdir win64 && cd win64 && \
    ../bootstrap --host=$TARGET_TRIPLE --disable-qt --disable-skins2 \
24 25 26 27
        --disable-lua --disable-protobuf --disable-gettext \
        --disable-qtdeclarative --disable-qtgraphicaleffects --disable-qtquickcontrols \
        --disable-qtquickcontrols2 --disable-qtsvg && \
        make -j`nproc` && \
28
    cd /buildml/vlc && ./bootstrap && mkdir build && cd build && \
29 30
    ../configure --host=$TARGET_TRIPLE \
        --disable-lua --disable-qt --disable-skins2 \
31
        --disable-nls --disable-aom \
32
        --prefix=/prefix && \
33
    make -j`nproc` && make install && \
34 35 36
    mkdir -p /prefix/dll && \
    cp src/.libs/libvlccore.dll /prefix/dll/ && \
    cp lib/.libs/libvlc.dll /prefix/dll && \
37
    cd /buildml && wget -q https://www.sqlite.org/2018/$SQLITE_VERSION.tar.gz && \
38
    echo $SQLITE_SHA256 $SQLITE_VERSION.tar.gz | sha256sum -c && \
39 40
    tar xzf $SQLITE_VERSION.tar.gz && cd $SQLITE_VERSION && \
    ./configure --prefix=/prefix --host=$TARGET_TRIPLE --disable-shared && \
41
    make -j`nproc` && make install && \
42
    cd /buildml && \
43 44
    wget -q https://downloads.sourceforge.net/project/libjpeg-turbo/1.5.0/libjpeg-turbo-$JPEGTURBO_VERSION.tar.gz && \
    echo $JPEGTURBO_SHA256 libjpeg-turbo-$JPEGTURBO_VERSION.tar.gz | sha256sum -c && \
45 46
    tar xzf libjpeg-turbo-$JPEGTURBO_VERSION.tar.gz && \
    cd libjpeg-turbo-$JPEGTURBO_VERSION && ./configure --host=$TARGET_TRIPLE --prefix=/prefix --disable-shared && \
47
    make -j`nproc` && make install && \
48
    cd /buildml && wget -q https://github.com/miloyip/rapidjson/archive/v$RAPIDJSON_VERSION.tar.gz && \
49
    echo $RAPIDJSON_SHA256 v$RAPIDJSON_VERSION.tar.gz | sha256sum -c && \
50
    tar xzf v1.1.0.tar.gz && cd rapidjson-1.1.0/ && \
51 52 53
    cmake -DCMAKE_INSTALL_PREFIX=/prefix -DRAPIDJSON_BUILD_DOC=OFF \
        -DRAPIDJSON_BUILD_EXAMPLES=OFF -DRAPIDJSON_BUILD_TESTS=OFF . && \
    make install && \
54
    rm -rf /buildml
55