mirror of
https://github.com/matrix-construct/construct
synced 2024-11-17 23:40:57 +01:00
67 lines
1.5 KiB
Text
67 lines
1.5 KiB
Text
|
FROM ubuntu:18.04
|
||
|
|
||
|
RUN \
|
||
|
apt-get update && \
|
||
|
apt-get install -y software-properties-common && \
|
||
|
add-apt-repository -y ppa:mhier/libboost-latest && \
|
||
|
add-apt-repository -y ppa:ubuntu-toolchain-r/test && \
|
||
|
apt-get update && \
|
||
|
apt-get install -y \
|
||
|
autoconf \
|
||
|
autoconf-archive \
|
||
|
autoconf2.13 \
|
||
|
automake \
|
||
|
autotools-dev \
|
||
|
boost1.68 \
|
||
|
build-essential \
|
||
|
cmake \
|
||
|
curl \
|
||
|
g++-8 \
|
||
|
gcc-8 \
|
||
|
git \
|
||
|
libbz2-dev \
|
||
|
libgflags-dev \
|
||
|
libjemalloc-dev \
|
||
|
libmagic-dev \
|
||
|
libsnappy-dev \
|
||
|
libsodium-dev \
|
||
|
libssl1.0-dev \
|
||
|
libtool \
|
||
|
libzstd-dev \
|
||
|
openssl \
|
||
|
shtool \
|
||
|
xz-utils \
|
||
|
zlib1g-dev
|
||
|
|
||
|
RUN \
|
||
|
apt-get clean && \
|
||
|
apt-get autoremove --purge -y
|
||
|
|
||
|
ENV ROCKSDB_VERSION=5.16.6
|
||
|
|
||
|
RUN \
|
||
|
mkdir -p /tmpbuild/rocksdb && \
|
||
|
cd /tmpbuild/rocksdb && \
|
||
|
curl -sL https://github.com/facebook/rocksdb/archive/v${ROCKSDB_VERSION}.tar.gz -o rocksdb-${ROCKSDB_VERSION}.tar.gz && \
|
||
|
tar xfvz rocksdb-${ROCKSDB_VERSION}.tar.gz && \
|
||
|
cd /tmpbuild/rocksdb/rocksdb-${ROCKSDB_VERSION} && \
|
||
|
cmake -H. -Bbuild \
|
||
|
-DCMAKE_BUILD_TYPE=Release \
|
||
|
-DWITH_TESTS=0 \
|
||
|
-DWITH_TOOLS=0 \
|
||
|
-DUSE_RTTI=1 \
|
||
|
-DWITH_JEMALLOC=1 \
|
||
|
-DWITH_SNAPPY=1 \
|
||
|
-DBUILD_SHARED_LIBS=1 && \
|
||
|
cmake --build build --target install && \
|
||
|
rm -Rf /tmpbuild/
|
||
|
|
||
|
RUN mkdir /build
|
||
|
|
||
|
ENV CXX g++-8
|
||
|
ENV CC gcc-8
|
||
|
|
||
|
WORKDIR /build
|
||
|
|
||
|
CMD [ "/bin/bash" ]
|