1
0
Fork 0
skybolt-linux-docker/Dockerfile

51 lines
1.4 KiB
Docker
Raw Normal View History

2020-12-16 04:34:17 +00:00
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