This repository was archived by the owner on Dec 27, 2025. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDockerfile_linux
More file actions
89 lines (75 loc) · 3.38 KB
/
Copy pathDockerfile_linux
File metadata and controls
89 lines (75 loc) · 3.38 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
ARG BASE
FROM ${BASE}
RUN apt -qq update && apt -q install --no-install-recommends -y \
g++-7 make wget bzip2 git ca-certificates xorg-dev libglu1-mesa-dev libglm-dev libbsd-dev gcc-7 unzip && \
rm -r /var/lib/apt/lists/*
RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 2
RUN update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 2
RUN update-alternatives --install /usr/bin/cc cc /usr/bin/gcc-7 2
ENV CMAKE_VER=3.11
RUN wget -q https://cmake.org/files/v${CMAKE_VER}/cmake-${CMAKE_VER}.0.tar.gz \
&& tar -xzvf cmake-${CMAKE_VER}.0.tar.gz \
&& cd cmake-${CMAKE_VER}.0 \
&& ./bootstrap \
&& make -j4 \
&& make install \
&& cmake --version \
&& cpack --version \
&& cd .. \
&& rm -r cmake-${CMAKE_VER}.0
ENV BOOST_MINOR_VER=66 \
GLFW_VERSION=3.2.1
WORKDIR /eol2/dependencies
RUN wget --quiet http://downloads.sourceforge.net/project/boost/boost/1.${BOOST_MINOR_VER}.0/boost_1_${BOOST_MINOR_VER}_0.tar.bz2 \
&& tar xjf boost_1_${BOOST_MINOR_VER}_0.tar.bz2 \
&& rm boost_1_${BOOST_MINOR_VER}_0.tar.bz2
RUN wget --quiet https://bitbucket.org/cegui/cegui/get/v0-8-7.tar.bz2 \
&& tar xjf v0-8-7.tar.bz2 \
&& rm v0-8-7.tar.bz2
RUN wget --quiet https://github.com/glfw/glfw/archive/${GLFW_VERSION}.tar.gz \
&& tar xzf ${GLFW_VERSION}.tar.gz \
&& rm ${GLFW_VERSION}.tar.gz
RUN wget --quiet https://github.com/nmoinvaz/minizip/archive/1.2.tar.gz \
&& tar xzf 1.2.tar.gz \
&& rm 1.2.tar.gz
RUN git clone --depth 1 https://github.com/mgba-emu/libepoxy epoxy
RUN wget --quiet http://downloads.sourceforge.net/project/freeimage/Source%20Distribution/3.17.0/FreeImage3170.zip \
&& unzip FreeImage3170.zip \
&& rm FreeImage3170.zip
WORKDIR /eol2/dependencies/epoxy
RUN cmake -DCMAKE_C_FLAGS="-fPIC" -DEPOXY_BUILD_SHARED=0 -DEPOXY_BUILD_STATIC=1 -DEPOXY_BUILD_TESTS=OFF -DCMAKE_BUILD_TYPE=Release .
RUN make -j4 && make install
WORKDIR /eol2/dependencies/minizip-1.2
RUN cmake \
-DUSE_AES=0 \
-DCMAKE_BUILD_TYPE=Release .
RUN make -j4 && make install
WORKDIR /eol2/dependencies/boost_1_${BOOST_MINOR_VER}_0
RUN ./bootstrap.sh --with-libraries=system,filesystem,serialization,signals,thread,date_time,chrono,test,log
RUN ./b2 variant=release link=static -j4
WORKDIR /eol2/dependencies/FreeImage
RUN CXXFLAGS="-fpermissive -std=gnu++98" CFLAGS="-std=c99" make -j4 && make install
ENV CEGUI_VERSION 0.8.7
WORKDIR /eol2
RUN mv dependencies/cegui-cegui-*/ dependencies/cegui-${CEGUI_VERSION}/
WORKDIR /eol2/dependencies/cegui-${CEGUI_VERSION}/build
RUN cmake \
-DCMAKE_CXX_FLAGS="-std=gnu++98" \
-DCMAKE_BUILD_TYPE=Release -DCEGUI_BUILD_PYTHON_MODULES=0 \
-DCEGUI_BUILD_IMAGECODEC_FREEIMAGE=1 -DCEGUI_HAS_DEFAULT_LOGGER=0 \
-DCEGUI_BUILD_IMAGECODEC_TGA=0 -DCEGUI_BUILD_IMAGECODEC_STB=0 \
-DCEGUI_HAS_PCRE_REGEX=0 -DCEGUI_BUILD_RENDERER_NULL=0 \
-DCEGUI_BUILD_RENDERER_OPENGL=0 -DCEGUI_OPTION_DEFAULT_XMLPARSER="ExpatParser" \
-DCEGUI_HAS_MINIZIP_RESOURCE_PROVIDER=0 \
-DCEGUI_BUILD_STATIC_CONFIGURATION=1 \
-DCEGUI_BUILD_STATIC_FACTORY_MODULE=1 \
-DCEGUI_BUILD_RENDERER_OPENGL3=1 -DCEGUI_BUILD_XMLPARSER_EXPAT=1 ..
RUN make -j4 && make install
WORKDIR /eol2/dependencies/glfw-${GLFW_VERSION}/build
RUN cmake -DCMAKE_BUILD_TYPE=Release -DGLFW_BUILD_EXAMPLES=0 -DGLFW_BUILD_TESTS=0 -DGLFW_BUILD_DOCS=0 ..
RUN make -j4 && make install
WORKDIR /eol2
ENV BOOST_ROOT=/eol2/dependencies/boost_1_${BOOST_MINOR_VER}_0
RUN mkdir bin
EXPOSE 5900
CMD /bin/bash