Page Menu
Home
Phorge
Search
Configure Global Search
Log In
Files
F33327528
D4630.1768869715.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Flag For Later
Award Token
Size
4 KB
Referenced Files
None
Subscribers
None
D4630.1768869715.diff
View Options
diff --git a/services/base-image/Dockerfile b/services/base-image/Dockerfile
--- a/services/base-image/Dockerfile
+++ b/services/base-image/Dockerfile
@@ -11,6 +11,7 @@
pkg-config \
libboost-all-dev \
libfmt-dev \
+ libgflags-dev \
libgtest-dev \
libcurl4-openssl-dev \
libssl-dev \
@@ -29,6 +30,9 @@
COPY docker/install_glog.sh .
RUN ./install_glog.sh
+COPY docker/install_double.sh .
+RUN ./install_double.sh
+
COPY docker/install_folly.sh .
RUN ./install_folly.sh
diff --git a/services/base-image/docker/install_aws_sdk.sh b/services/base-image/docker/install_aws_sdk.sh
--- a/services/base-image/docker/install_aws_sdk.sh
+++ b/services/base-image/docker/install_aws_sdk.sh
@@ -4,12 +4,18 @@
cd /tmp
-git clone --recurse-submodules -b 1.9.176 --single-branch https://github.com/aws/aws-sdk-cpp
+git clone https://github.com/aws/aws-sdk-cpp \
+ --recurse-submodules \
+ -b 1.9.176 \
+ --single-branch
+
mkdir aws-sdk-cpp/build
pushd aws-sdk-cpp/build
-cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=/usr/local/aws_sdk -DBUILD_ONLY="core;s3;dynamodb"
-make
-make install
+cmake .. \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_PREFIX_PATH=/usr/local/aws_sdk \
+ -DBUILD_ONLY="core;s3;dynamodb"
+make install -l "$(nproc)" -j "$(nproc)"
popd # aws-sdk-cpp/build
rm -rf aws-sdk-cpp
diff --git a/services/base-image/docker/install_double.sh b/services/base-image/docker/install_double.sh
new file mode 100755
--- /dev/null
+++ b/services/base-image/docker/install_double.sh
@@ -0,0 +1,16 @@
+#!/usr/bin/env bash
+
+set -euo pipefail
+
+pushd /usr/lib
+
+git clone https://github.com/google/double-conversion.git \
+ --branch v3.1.5 --single-branch
+pushd double-conversion
+cmake . -DBUILD_SHARED_LIBS=ON
+make install -l "$(nproc)" -j "$(nproc)"
+
+popd # double-conversion
+rm -r double-conversion
+
+popd
diff --git a/services/base-image/docker/install_folly.sh b/services/base-image/docker/install_folly.sh
--- a/services/base-image/docker/install_folly.sh
+++ b/services/base-image/docker/install_folly.sh
@@ -4,7 +4,14 @@
pushd /usr/lib
-git clone https://github.com/facebook/folly.git --branch v2020.01.13.00 --single-branch
-git clone https://github.com/google/double-conversion.git --branch v3.1.5 --single-branch
+git clone https://github.com/facebook/folly.git \
+ --branch v2020.01.13.00 \
+ --single-branch
+
+pushd folly
+cmake .
+make install -l "$(nproc)" -j "$(nproc)"
+popd # folly
+rm -r folly
popd # /usr/lib
diff --git a/services/base-image/docker/install_glog.sh b/services/base-image/docker/install_glog.sh
--- a/services/base-image/docker/install_glog.sh
+++ b/services/base-image/docker/install_glog.sh
@@ -4,4 +4,12 @@
pushd /usr/lib
git clone https://github.com/google/glog.git --branch v0.4.0 --single-branch
+
+pushd glog
+cmake . -DBUILD_TESTING=OFF
+make install -j "$(nproc)" -l "$(nproc)"
+popd # glog
+
+rm -rf glog
+
popd # /usr/lib
diff --git a/services/base-image/docker/install_grpc.sh b/services/base-image/docker/install_grpc.sh
--- a/services/base-image/docker/install_grpc.sh
+++ b/services/base-image/docker/install_grpc.sh
@@ -29,8 +29,7 @@
-DgRPC_BUILD_GRPC_PYTHON_PLUGIN=OFF \
-DgRPC_BUILD_GRPC_RUBY_PLUGIN=OFF \
../..
-make
-make install
+make install -j "$(nproc)" -l "$(nproc)"
popd # cmake/build
# Explicitly install abseil-cpp because of https://github.com/grpc/grpc/issues/25949
@@ -41,11 +40,23 @@
cmake \
-DCMAKE_POSITION_INDEPENDENT_CODE=TRUE \
../..
-make
-make install
+make install -j "$(nproc)" -l "$(nproc)"
popd # cmake/build
popd # third_party/abseil-cpp/
+# Explicitly install a more up-to-date version of `protobuf`, which
+# installs `protobuf-config.cmake`. The `libprotobuf-dev` Ubuntu package
+# only exports the `pkg-config` `protobuf.pc`. This is important because
+# the gRPC CMake configuration will attempt to find the `protobuf` CMake
+# configuration.
+pushd third_party/protobuf/
+mkdir -p _build
+pushd _build
+cmake ../cmake -Dprotobuf_BUILD_SHARED_LIBS=ON -Dprotobuf_ABSL_PROVIDER=package
+make install -j "$(nproc)" -l "$(nproc)"
+popd # _build
+popd # third_party/protobuf/
+
popd # grpc
rm -rf grpc
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Tue, Jan 20, 12:41 AM (15 h, 27 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
5958785
Default Alt Text
D4630.1768869715.diff (4 KB)
Attached To
Mode
D4630: [Services] Install double and folly in base-image
Attached
Detach File
Event Timeline
Log In to Comment