51 lines
1.4 KiB
Docker
51 lines
1.4 KiB
Docker
|
FROM debian:bullseye
|
||
|
|
||
|
## Dependencies
|
||
|
|
||
|
RUN apt update -y
|
||
|
RUN apt install -y git cmake make gcc g++ libboost-dev libgl-dev
|
||
|
RUN apt install -y libboost-date-time-dev libboost-thread-dev libboost-log-dev libboost-filesystem-dev libboost-program-options-dev libboost-regex-dev
|
||
|
RUN apt install -y libopenscenegraph-dev
|
||
|
RUN apt install -y vim xterm
|
||
|
|
||
|
## OIS
|
||
|
|
||
|
WORKDIR /usr/src
|
||
|
RUN git clone https://github.com/wgois/OIS
|
||
|
WORKDIR /usr/src/OIS/build
|
||
|
RUN cmake ..
|
||
|
RUN make -j5
|
||
|
RUN make install
|
||
|
|
||
|
## SkyboltDependenciesHeaderOnly
|
||
|
|
||
|
WORKDIR /usr/src
|
||
|
RUN git clone https://github.com/Piraxus/SkyboltDependenciesHeaderOnly
|
||
|
ENV SKYBOLT_DEPS=/usr/src/SkyboltDependenciesHeaderOnly
|
||
|
|
||
|
## Skybolt + patches
|
||
|
|
||
|
WORKDIR /usr/src
|
||
|
RUN git clone https://github.com/Piraxus/Skybolt.git
|
||
|
WORKDIR /usr/src/Skybolt/build
|
||
|
COPY patches/*.patch ./
|
||
|
RUN \
|
||
|
git config --global user.email "you@example.com" && \
|
||
|
git config --global user.name "Your Name"
|
||
|
RUN git am --ignore-whitespace *.patch
|
||
|
RUN json_DIR=${SKYBOLT_DEPS}/json \
|
||
|
catch_DIR=${SKYBOLT_DEPS}/catch \
|
||
|
glm_DIR=${SKYBOLT_DEPS}/glm \
|
||
|
cxxtimer_DIR=${SKYBOLT_DEPS}/cxxtimer \
|
||
|
earcut_DIR=${SKYBOLT_DEPS}/earcut \
|
||
|
httplib_DIR=${SKYBOLT_DEPS}/httplib \
|
||
|
px_sched_DIR=${SKYBOLT_DEPS}/px_sched \
|
||
|
OGRE_DEPENDENCIES_DIR=/usr/local/include/ois \
|
||
|
cmake .. \
|
||
|
-D CMAKE_CXX_COMPILER=g++ \
|
||
|
-D CMAKE_CXX_STANDARD=17 -D CMAKE_CXX_STANDARD_REQUIRED=ON \
|
||
|
-D CMAKE_CXX_FLAGS="-DBOOST_LOG_DYN_LINK -Wno-register"
|
||
|
RUN make -j5
|
||
|
|
||
|
## RUN make test
|