Fetch debian13 sources via curl and unify libs under lib/x86_64-linux-gnu
Mirrors rocky9's curl-based fetching and consistent-libdir goals but adapted to Debian's own conventions: replaces git clone with curl tarball downloads (matching rocky9's URLs), drops sha256sum checks, and installs every vendored library under /usr/local/lib/x86_64-linux-gnu instead of rocky9's lib64. lib64 was tried first but abandoned: on Debian, CMake's find_package() Config-mode search, find_library(), and pkg-config's default search path all detect /etc/debian_version and never look in lib64 (that's an RHEL-only default), so cross-package lookups like spdlog finding fmt or folly's FindLibEvent.cmake kept failing. lib/x86_64-linux-gnu is Debian's native multiarch path and is found by all three mechanisms with no extra CMAKE_PREFIX_PATH/PKG_CONFIG_PATH workarounds, verified by building the full image end to end. libevent-lib64-install.patch is renamed and retargeted at lib/x86_64-linux-gnu since libevent hardcodes "lib" in its CMake install rules with no override flag. CacheLib keeps building its default interface/cachebench targets (no patch needed here, unlike rocky9). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UV2yJRkL6CnChX3D2zhoXH
This commit is contained in:
1 parent
ef0079c3ee
commit
52ea874506
2 files changed
+302
-68
No files matched your search
+243
-68
@@ -23,13 +23,11 @@ RUN git config --global url."https://wangguofang.net/github.com/".insteadOf "htt
|
|||||||
|
|
||||||
RUN curl --fail --location --output boost.tar.bz2 \
|
RUN curl --fail --location --output boost.tar.bz2 \
|
||||||
https://mirrors.aliyun.com/blfs/conglomeration/boost/boost_1_83_0.tar.bz2 \
|
https://mirrors.aliyun.com/blfs/conglomeration/boost/boost_1_83_0.tar.bz2 \
|
||||||
&& echo "6478edfe2f3305127cffe8caf73ea0176c53769f4bf1585be237eb30798c3b8e boost.tar.bz2" \
|
|
||||||
| sha256sum --check - \
|
|
||||||
&& mkdir src \
|
&& mkdir src \
|
||||||
&& tar --extract --bzip2 --file=boost.tar.bz2 --directory=src --strip-components=1 \
|
&& tar --extract --bzip2 --file=boost.tar.bz2 --directory=src --strip-components=1 \
|
||||||
&& rm boost.tar.bz2 \
|
&& rm boost.tar.bz2 \
|
||||||
&& cd src \
|
&& cd src \
|
||||||
&& ./bootstrap.sh --prefix=/usr/local \
|
&& ./bootstrap.sh --prefix=/usr/local --libdir=/usr/local/lib/x86_64-linux-gnu \
|
||||||
&& ./b2 --jobs="$(nproc)" \
|
&& ./b2 --jobs="$(nproc)" \
|
||||||
--with-atomic \
|
--with-atomic \
|
||||||
--with-chrono \
|
--with-chrono \
|
||||||
@@ -51,15 +49,25 @@ RUN curl --fail --location --output boost.tar.bz2 \
|
|||||||
&& cd .. \
|
&& cd .. \
|
||||||
&& rm -rf src
|
&& rm -rf src
|
||||||
|
|
||||||
RUN git clone --branch=openssl-3.0.15 --depth=1 https://github.com/openssl/openssl.git src \
|
RUN curl --fail --location --output openssl.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/openssl/openssl/archive/openssl-3.0.15.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=openssl.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm openssl.tar.gz \
|
||||||
&& cd src \
|
&& cd src \
|
||||||
&& ./Configure --prefix=/usr/local --libdir=lib no-shared no-tests -fPIC \
|
&& ./Configure --prefix=/usr/local --libdir=lib/x86_64-linux-gnu no-shared no-tests -fPIC \
|
||||||
&& make --jobs="$(nproc)" \
|
&& make --jobs="$(nproc)" \
|
||||||
&& make install_sw \
|
&& make install_sw \
|
||||||
&& cd .. \
|
&& cd .. \
|
||||||
&& rm -rf src
|
&& rm -rf src
|
||||||
|
|
||||||
RUN git clone --branch=release-2.1.12-stable --depth=1 https://github.com/libevent/libevent.git src \
|
COPY libevent-lib-x86_64-linux-gnu-install.patch /tmp/
|
||||||
|
RUN curl --fail --location --output libevent.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/libevent/libevent/archive/release-2.1.12-stable.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=libevent.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm libevent.tar.gz \
|
||||||
|
&& git -C src apply /tmp/libevent-lib-x86_64-linux-gnu-install.patch \
|
||||||
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
||||||
-DEVENT__DISABLE_BENCHMARK=ON \
|
-DEVENT__DISABLE_BENCHMARK=ON \
|
||||||
@@ -68,10 +76,15 @@ RUN git clone --branch=release-2.1.12-stable --depth=1 https://github.com/libeve
|
|||||||
-DEVENT__DISABLE_TESTS=ON \
|
-DEVENT__DISABLE_TESTS=ON \
|
||||||
-DEVENT__LIBRARY_TYPE=STATIC \
|
-DEVENT__LIBRARY_TYPE=STATIC \
|
||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src /tmp/libevent-lib-x86_64-linux-gnu-install.patch
|
||||||
|
|
||||||
RUN git clone --branch=v1.5.7 --depth=1 https://github.com/facebook/zstd.git src \
|
RUN curl --fail --location --output zstd.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/facebook/zstd/archive/v1.5.7.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=zstd.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm zstd.tar.gz \
|
||||||
&& cmake -G Ninja -S src/build/cmake -B build -DCMAKE_BUILD_TYPE=Release \
|
&& cmake -G Ninja -S src/build/cmake -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
|
-DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu \
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
||||||
-DZSTD_BUILD_CONTRIB=OFF \
|
-DZSTD_BUILD_CONTRIB=OFF \
|
||||||
-DZSTD_BUILD_PROGRAMS=OFF \
|
-DZSTD_BUILD_PROGRAMS=OFF \
|
||||||
@@ -81,20 +94,29 @@ RUN git clone --branch=v1.5.7 --depth=1 https://github.com/facebook/zstd.git src
|
|||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN git clone --branch=v1.3.1 --depth=1 https://github.com/madler/zlib.git src \
|
RUN curl --fail --location --output zlib.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/madler/zlib/archive/v1.3.1.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=zlib.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm zlib.tar.gz \
|
||||||
&& cd src \
|
&& cd src \
|
||||||
&& CFLAGS=-fPIC ./configure --prefix=/usr/local --static \
|
&& CFLAGS=-fPIC ./configure --prefix=/usr/local --libdir=/usr/local/lib/x86_64-linux-gnu --static \
|
||||||
&& make --jobs="$(nproc)" \
|
&& make --jobs="$(nproc)" \
|
||||||
&& make install \
|
&& make install \
|
||||||
&& cd .. \
|
&& cd .. \
|
||||||
&& rm -rf src
|
&& rm -rf src
|
||||||
|
|
||||||
RUN git clone --branch=v3.21.12 --depth=1 https://github.com/protocolbuffers/protobuf.git src \
|
RUN curl --fail --location --output protobuf.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/protocolbuffers/protobuf/archive/v3.21.12.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=protobuf.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm protobuf.tar.gz \
|
||||||
&& cmake -G Ninja -S src -B build -Dprotobuf_BUILD_TESTS=OFF \
|
&& cmake -G Ninja -S src -B build -Dprotobuf_BUILD_TESTS=OFF \
|
||||||
-Dprotobuf_BUILD_SHARED_LIBS=OFF \
|
-Dprotobuf_BUILD_SHARED_LIBS=OFF \
|
||||||
-Dprotobuf_WITH_ZLIB=ON \
|
-Dprotobuf_WITH_ZLIB=ON \
|
||||||
-DCMAKE_BUILD_TYPE=Release \
|
-DCMAKE_BUILD_TYPE=Release \
|
||||||
-DBUILD_SHARED_LIBS=OFF \
|
-DBUILD_SHARED_LIBS=OFF \
|
||||||
|
-DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu \
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
@@ -103,24 +125,35 @@ RUN git clone --branch=REL_2_0_5 --depth=1 https://github.com/log4cplus/log4cplu
|
|||||||
&& git -C src submodule update --init --depth=1 threadpool \
|
&& git -C src submodule update --init --depth=1 threadpool \
|
||||||
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
-DBUILD_SHARED_LIBS=OFF \
|
-DBUILD_SHARED_LIBS=OFF \
|
||||||
|
-DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu \
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
||||||
-DLOG4CPLUS_BUILD_TESTING=OFF \
|
-DLOG4CPLUS_BUILD_TESTING=OFF \
|
||||||
-DWITH_UNIT_TESTS=OFF \
|
-DWITH_UNIT_TESTS=OFF \
|
||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN git clone --branch=12.2.0 --depth=1 https://github.com/fmtlib/fmt.git src \
|
RUN curl --fail --location --output fmt.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/fmtlib/fmt/archive/12.2.0.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=fmt.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm fmt.tar.gz \
|
||||||
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
-DBUILD_SHARED_LIBS=OFF \
|
-DBUILD_SHARED_LIBS=OFF \
|
||||||
|
-DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu \
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
||||||
-DFMT_DOC=OFF \
|
-DFMT_DOC=OFF \
|
||||||
-DFMT_TEST=OFF \
|
-DFMT_TEST=OFF \
|
||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN git clone --branch=v1.17.0 --depth=1 https://github.com/gabime/spdlog.git src \
|
RUN curl --fail --location --output spdlog.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/gabime/spdlog/archive/v1.17.0.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=spdlog.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm spdlog.tar.gz \
|
||||||
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
-DBUILD_SHARED_LIBS=OFF \
|
-DBUILD_SHARED_LIBS=OFF \
|
||||||
|
-DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu \
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
||||||
-DSPDLOG_BUILD_BENCH=OFF \
|
-DSPDLOG_BUILD_BENCH=OFF \
|
||||||
-DSPDLOG_BUILD_EXAMPLE=OFF \
|
-DSPDLOG_BUILD_EXAMPLE=OFF \
|
||||||
@@ -129,28 +162,47 @@ RUN git clone --branch=v1.17.0 --depth=1 https://github.com/gabime/spdlog.git sr
|
|||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN git clone --branch=v0.9.8 --depth=1 https://github.com/Neargye/magic_enum.git src \
|
RUN curl --fail --location --output magic_enum.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/Neargye/magic_enum/archive/v0.9.8.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=magic_enum.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm magic_enum.tar.gz \
|
||||||
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
|
-DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu \
|
||||||
-DMAGIC_ENUM_OPT_BUILD_EXAMPLES=OFF \
|
-DMAGIC_ENUM_OPT_BUILD_EXAMPLES=OFF \
|
||||||
-DMAGIC_ENUM_OPT_BUILD_TESTS=OFF \
|
-DMAGIC_ENUM_OPT_BUILD_TESTS=OFF \
|
||||||
-DMAGIC_ENUM_OPT_INSTALL=ON \
|
-DMAGIC_ENUM_OPT_INSTALL=ON \
|
||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN git clone --branch=v8.2.10 --depth=1 https://github.com/fastfloat/fast_float.git src \
|
RUN curl --fail --location --output fast_float.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/fastfloat/fast_float/archive/v8.2.10.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=fast_float.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm fast_float.tar.gz \
|
||||||
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
|
-DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu \
|
||||||
-DFASTFLOAT_BENCHMARKS=OFF \
|
-DFASTFLOAT_BENCHMARKS=OFF \
|
||||||
-DFASTFLOAT_INSTALL=ON \
|
-DFASTFLOAT_INSTALL=ON \
|
||||||
-DFASTFLOAT_TEST=OFF \
|
-DFASTFLOAT_TEST=OFF \
|
||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN git clone --branch=v0.7.0 --depth=1 https://github.com/Tessil/sparse-map.git src \
|
RUN curl --fail --location --output sparse-map.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/Tessil/sparse-map/archive/v0.7.0.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=sparse-map.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm sparse-map.tar.gz \
|
||||||
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
|
-DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu \
|
||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN git clone --branch=v2.3.1 --depth=1 https://github.com/gflags/gflags.git src \
|
RUN curl --fail --location --output gflags.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/gflags/gflags/archive/v2.3.1.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=gflags.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm gflags.tar.gz \
|
||||||
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
-DBUILD_SHARED_LIBS=OFF \
|
-DBUILD_SHARED_LIBS=OFF \
|
||||||
-DBUILD_STATIC_LIBS=ON \
|
-DBUILD_STATIC_LIBS=ON \
|
||||||
@@ -159,14 +211,20 @@ RUN git clone --branch=v2.3.1 --depth=1 https://github.com/gflags/gflags.git src
|
|||||||
-DINSTALL_HEADERS=ON \
|
-DINSTALL_HEADERS=ON \
|
||||||
-DINSTALL_SHARED_LIBS=OFF \
|
-DINSTALL_SHARED_LIBS=OFF \
|
||||||
-DINSTALL_STATIC_LIBS=ON \
|
-DINSTALL_STATIC_LIBS=ON \
|
||||||
|
-DLIBRARY_INSTALL_DIR=/usr/local/lib/x86_64-linux-gnu \
|
||||||
-DREGISTER_INSTALL_PREFIX=OFF \
|
-DREGISTER_INSTALL_PREFIX=OFF \
|
||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN git clone --branch=v0.7.1 --depth=1 https://github.com/google/glog.git src \
|
RUN curl --fail --location --output glog.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/google/glog/archive/v0.7.1.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=glog.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm glog.tar.gz \
|
||||||
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
-DBUILD_SHARED_LIBS=OFF \
|
-DBUILD_SHARED_LIBS=OFF \
|
||||||
-DBUILD_TESTING=OFF \
|
-DBUILD_TESTING=OFF \
|
||||||
|
-DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu \
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
||||||
-DWITH_GFLAGS=ON \
|
-DWITH_GFLAGS=ON \
|
||||||
-DWITH_GTEST=OFF \
|
-DWITH_GTEST=OFF \
|
||||||
@@ -175,9 +233,13 @@ RUN git clone --branch=v0.7.1 --depth=1 https://github.com/google/glog.git src \
|
|||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN git clone --branch=liburing-2.15 --depth=1 https://github.com/axboe/liburing.git src \
|
RUN curl --fail --location --output liburing.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/axboe/liburing/archive/liburing-2.15.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=liburing.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm liburing.tar.gz \
|
||||||
&& cd src \
|
&& cd src \
|
||||||
&& CFLAGS=-fPIC ./configure --prefix=/usr/local \
|
&& CFLAGS=-fPIC ./configure --prefix=/usr/local --libdir=/usr/local/lib/x86_64-linux-gnu --libdevdir=/usr/local/lib/x86_64-linux-gnu \
|
||||||
&& make --jobs="$(nproc)" ENABLE_SHARED=0 library \
|
&& make --jobs="$(nproc)" ENABLE_SHARED=0 library \
|
||||||
&& make ENABLE_SHARED=0 install \
|
&& make ENABLE_SHARED=0 install \
|
||||||
&& cd .. \
|
&& cd .. \
|
||||||
@@ -185,49 +247,66 @@ RUN git clone --branch=liburing-2.15 --depth=1 https://github.com/axboe/liburing
|
|||||||
|
|
||||||
RUN curl --fail --location --output libaio.tar.gz \
|
RUN curl --fail --location --output libaio.tar.gz \
|
||||||
https://mirrors.tuna.tsinghua.edu.cn/debian/pool/main/liba/libaio/libaio_0.3.113.orig.tar.gz \
|
https://mirrors.tuna.tsinghua.edu.cn/debian/pool/main/liba/libaio/libaio_0.3.113.orig.tar.gz \
|
||||||
&& echo "2c44d1c5fd0d43752287c9ae1eb9c023f04ef848ea8d4aafa46e9aedb678200b libaio.tar.gz" \
|
|
||||||
| sha256sum --check - \
|
|
||||||
&& mkdir src \
|
&& mkdir src \
|
||||||
&& tar --extract --gzip --file=libaio.tar.gz --directory=src --strip-components=1 \
|
&& tar --extract --gzip --file=libaio.tar.gz --directory=src --strip-components=1 \
|
||||||
&& rm libaio.tar.gz \
|
&& rm libaio.tar.gz \
|
||||||
&& make --directory=src --jobs="$(nproc)" ENABLE_SHARED=0 \
|
&& make --directory=src --jobs="$(nproc)" ENABLE_SHARED=0 \
|
||||||
&& make --directory=src ENABLE_SHARED=0 prefix=/usr/local install \
|
&& make --directory=src ENABLE_SHARED=0 prefix=/usr/local libdir=/usr/local/lib/x86_64-linux-gnu install \
|
||||||
&& rm -rf src
|
&& rm -rf src
|
||||||
|
|
||||||
RUN git clone --branch=v2.3.2 --depth=1 https://github.com/davea42/libdwarf-code.git src \
|
RUN curl --fail --location --output libdwarf-code.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/davea42/libdwarf-code/archive/v2.3.2.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=libdwarf-code.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm libdwarf-code.tar.gz \
|
||||||
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
-DBUILD_DWARFDUMP=OFF \
|
-DBUILD_DWARFDUMP=OFF \
|
||||||
-DBUILD_DWARFEXAMPLE=OFF \
|
-DBUILD_DWARFEXAMPLE=OFF \
|
||||||
-DBUILD_DWARFGEN=OFF \
|
-DBUILD_DWARFGEN=OFF \
|
||||||
-DBUILD_NON_SHARED=ON \
|
-DBUILD_NON_SHARED=ON \
|
||||||
-DBUILD_SHARED=OFF \
|
-DBUILD_SHARED=OFF \
|
||||||
|
-DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu \
|
||||||
-DDO_TESTING=OFF \
|
-DDO_TESTING=OFF \
|
||||||
-DENABLE_DECOMPRESSION=ON \
|
-DENABLE_DECOMPRESSION=ON \
|
||||||
-DPIC_ALWAYS=ON \
|
-DPIC_ALWAYS=ON \
|
||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN git clone --branch=1.0.20-RELEASE --depth=1 https://github.com/jedisct1/libsodium.git src \
|
RUN curl --fail --location --output libsodium.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/jedisct1/libsodium/archive/1.0.20-RELEASE.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=libsodium.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm libsodium.tar.gz \
|
||||||
&& cd src \
|
&& cd src \
|
||||||
&& ./autogen.sh \
|
&& ./autogen.sh \
|
||||||
&& ./configure --prefix=/usr/local --disable-shared --enable-static --with-pic \
|
&& ./configure --prefix=/usr/local --libdir=/usr/local/lib/x86_64-linux-gnu --disable-shared --enable-static --with-pic \
|
||||||
&& make --jobs="$(nproc)" \
|
&& make --jobs="$(nproc)" \
|
||||||
&& make install \
|
&& make install \
|
||||||
&& cd .. \
|
&& cd .. \
|
||||||
&& rm -rf src
|
&& rm -rf src
|
||||||
|
|
||||||
RUN git clone --branch=v0.8.3 --depth=1 https://github.com/Cyan4973/xxHash.git src \
|
RUN curl --fail --location --output xxHash.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/Cyan4973/xxHash/archive/v0.8.3.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=xxHash.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm xxHash.tar.gz \
|
||||||
&& cmake -G Ninja -S src/cmake_unofficial -B build -DCMAKE_BUILD_TYPE=Release \
|
&& cmake -G Ninja -S src/cmake_unofficial -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
-DBUILD_SHARED_LIBS=OFF \
|
-DBUILD_SHARED_LIBS=OFF \
|
||||||
|
-DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu \
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
||||||
-DXXHASH_BUILD_XXHSUM=OFF \
|
-DXXHASH_BUILD_XXHSUM=OFF \
|
||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN git clone --branch=v1.17.0 --depth=1 https://github.com/google/googletest.git src \
|
RUN curl --fail --location --output googletest.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/google/googletest/archive/v1.17.0.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=googletest.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm googletest.tar.gz \
|
||||||
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
-DBUILD_GMOCK=ON \
|
-DBUILD_GMOCK=ON \
|
||||||
-DBUILD_SHARED_LIBS=OFF \
|
-DBUILD_SHARED_LIBS=OFF \
|
||||||
|
-DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu \
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
||||||
-DINSTALL_GTEST=ON \
|
-DINSTALL_GTEST=ON \
|
||||||
-Dgtest_build_samples=OFF \
|
-Dgtest_build_samples=OFF \
|
||||||
@@ -235,64 +314,97 @@ RUN git clone --branch=v1.17.0 --depth=1 https://github.com/google/googletest.gi
|
|||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN git clone --branch=v2.0.19 --depth=1 https://github.com/numactl/numactl.git src \
|
RUN curl --fail --location --output numactl.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/numactl/numactl/archive/v2.0.19.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=numactl.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm numactl.tar.gz \
|
||||||
&& cd src \
|
&& cd src \
|
||||||
&& ./autogen.sh \
|
&& ./autogen.sh \
|
||||||
&& CFLAGS=-fPIC ./configure --prefix=/usr/local --disable-shared --enable-static \
|
&& CFLAGS=-fPIC ./configure --prefix=/usr/local --libdir=/usr/local/lib/x86_64-linux-gnu --disable-shared --enable-static \
|
||||||
&& make --jobs="$(nproc)" \
|
&& make --jobs="$(nproc)" \
|
||||||
&& make install \
|
&& make install \
|
||||||
&& cd .. \
|
&& cd .. \
|
||||||
&& rm -rf src
|
&& rm -rf src
|
||||||
|
|
||||||
RUN git clone --branch=v2026.08.03.00 --depth=1 https://github.com/facebook/folly.git src \
|
RUN curl --fail --location --output folly.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/facebook/folly/archive/v2026.08.03.00.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=folly.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm folly.tar.gz \
|
||||||
&& CXXFLAGS="-DGLOG_USE_GLOG_EXPORT" \
|
&& CXXFLAGS="-DGLOG_USE_GLOG_EXPORT" \
|
||||||
cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
-DBOOST_LINK_STATIC=ON \
|
-DBOOST_LINK_STATIC=ON \
|
||||||
-DBUILD_BENCHMARKS=OFF \
|
-DBUILD_BENCHMARKS=OFF \
|
||||||
-DBUILD_SHARED_LIBS=OFF \
|
-DBUILD_SHARED_LIBS=OFF \
|
||||||
-DBUILD_TESTS=OFF \
|
-DBUILD_TESTS=OFF \
|
||||||
|
-DCMAKE_INSTALL_DIR=lib/x86_64-linux-gnu/cmake/folly \
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
||||||
|
-DLIB_INSTALL_DIR=lib/x86_64-linux-gnu \
|
||||||
-DPYTHON_EXTENSIONS=OFF \
|
-DPYTHON_EXTENSIONS=OFF \
|
||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN git clone --branch=v2026.08.03.00 --depth=1 https://github.com/facebookincubator/fizz.git src \
|
RUN curl --fail --location --output fizz.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/facebookincubator/fizz/archive/v2026.08.03.00.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=fizz.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm fizz.tar.gz \
|
||||||
&& CXXFLAGS="-DGLOG_USE_GLOG_EXPORT" \
|
&& CXXFLAGS="-DGLOG_USE_GLOG_EXPORT" \
|
||||||
cmake -G Ninja -S src/fizz -B build -DCMAKE_BUILD_TYPE=Release \
|
cmake -G Ninja -S src/fizz -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
-DBUILD_EXAMPLES=OFF \
|
-DBUILD_EXAMPLES=OFF \
|
||||||
-DBUILD_SHARED_LIBS=OFF \
|
-DBUILD_SHARED_LIBS=OFF \
|
||||||
-DBUILD_TESTS=OFF \
|
-DBUILD_TESTS=OFF \
|
||||||
|
-DCMAKE_INSTALL_DIR=lib/x86_64-linux-gnu/cmake/fizz \
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
||||||
|
-DLIB_INSTALL_DIR=lib/x86_64-linux-gnu \
|
||||||
-Dsodium_USE_STATIC_LIBS=ON \
|
-Dsodium_USE_STATIC_LIBS=ON \
|
||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN git clone --branch=v2026.08.03.00 --depth=1 https://github.com/facebook/wangle.git src \
|
RUN curl --fail --location --output wangle.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/facebook/wangle/archive/v2026.08.03.00.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=wangle.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm wangle.tar.gz \
|
||||||
&& CXXFLAGS="-DGLOG_USE_GLOG_EXPORT" \
|
&& CXXFLAGS="-DGLOG_USE_GLOG_EXPORT" \
|
||||||
cmake -G Ninja -S src/wangle -B build -DCMAKE_BUILD_TYPE=Release \
|
cmake -G Ninja -S src/wangle -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
-DBUILD_EXAMPLES=OFF \
|
-DBUILD_EXAMPLES=OFF \
|
||||||
-DBUILD_SHARED_LIBS=OFF \
|
-DBUILD_SHARED_LIBS=OFF \
|
||||||
-DBUILD_TESTS=OFF \
|
-DBUILD_TESTS=OFF \
|
||||||
|
-DCMAKE_INSTALL_DIR=lib/x86_64-linux-gnu/cmake/wangle \
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
||||||
|
-DLIB_INSTALL_DIR=lib/x86_64-linux-gnu \
|
||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN git clone --branch=v2026.08.03.00 --depth=1 https://github.com/facebook/mvfst.git src \
|
RUN curl --fail --location --output mvfst.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/facebook/mvfst/archive/v2026.08.03.00.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=mvfst.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm mvfst.tar.gz \
|
||||||
&& CXXFLAGS="-DGLOG_USE_GLOG_EXPORT" \
|
&& CXXFLAGS="-DGLOG_USE_GLOG_EXPORT" \
|
||||||
cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
-DBUILD_SAMPLES=OFF \
|
-DBUILD_SAMPLES=OFF \
|
||||||
-DBUILD_SHARED_LIBS=OFF \
|
-DBUILD_SHARED_LIBS=OFF \
|
||||||
-DBUILD_TESTS=OFF \
|
-DBUILD_TESTS=OFF \
|
||||||
-DBUILD_TOOLS=OFF \
|
-DBUILD_TOOLS=OFF \
|
||||||
|
-DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu \
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN git clone --branch=v2026.08.03.00 --depth=1 https://github.com/facebook/fbthrift.git src \
|
RUN curl --fail --location --output fbthrift.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/facebook/fbthrift/archive/v2026.08.03.00.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=fbthrift.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm fbthrift.tar.gz \
|
||||||
&& CXXFLAGS="-DGLOG_USE_GLOG_EXPORT" \
|
&& CXXFLAGS="-DGLOG_USE_GLOG_EXPORT" \
|
||||||
cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
-DBUILD_SHARED_LIBS=OFF \
|
-DBUILD_SHARED_LIBS=OFF \
|
||||||
|
-DCMAKE_INSTALL_DIR=lib/x86_64-linux-gnu/cmake/fbthrift \
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
||||||
|
-DLIB_INSTALL_DIR=lib/x86_64-linux-gnu \
|
||||||
-DTHRIFT_BENCHMARKS=OFF \
|
-DTHRIFT_BENCHMARKS=OFF \
|
||||||
-Denable_tests=OFF \
|
-Denable_tests=OFF \
|
||||||
-Dthrift_python=OFF \
|
-Dthrift_python=OFF \
|
||||||
@@ -301,25 +413,29 @@ RUN git clone --branch=v2026.08.03.00 --depth=1 https://github.com/facebook/fbth
|
|||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN git clone --branch=v2026.08.03.00 --depth=1 https://github.com/facebook/CacheLib.git src \
|
RUN curl --fail --location --output CacheLib.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/facebook/CacheLib/archive/v2026.08.03.00.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=CacheLib.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm CacheLib.tar.gz \
|
||||||
&& CXXFLAGS="-DGLOG_USE_GLOG_EXPORT" \
|
&& CXXFLAGS="-DGLOG_USE_GLOG_EXPORT" \
|
||||||
cmake -G Ninja -S src/cachelib -B build -DCMAKE_BUILD_TYPE=Release \
|
cmake -G Ninja -S src/cachelib -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
-DBOOST_LINK_STATIC=ON \
|
-DBOOST_LINK_STATIC=ON \
|
||||||
-DBUILD_SHARED_LIBS=OFF \
|
-DBUILD_SHARED_LIBS=OFF \
|
||||||
-DBUILD_TESTS=OFF \
|
-DBUILD_TESTS=OFF \
|
||||||
|
-DCMAKE_INSTALL_DIR=lib/x86_64-linux-gnu/cmake/cachelib \
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
||||||
|
-DLIB_INSTALL_DIR=lib/x86_64-linux-gnu \
|
||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN curl --fail --location --output util-linux.tar.xz \
|
RUN curl --fail --location --output util-linux.tar.xz \
|
||||||
https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v2.42/util-linux-2.42.2.tar.xz \
|
https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v2.42/util-linux-2.42.2.tar.xz \
|
||||||
&& echo "03a05d3adf9602ef128f2da05b84b3205ce60c351e5737c0370f74000679ce8a util-linux.tar.xz" \
|
|
||||||
| sha256sum --check - \
|
|
||||||
&& mkdir src \
|
&& mkdir src \
|
||||||
&& tar --extract --xz --file=util-linux.tar.xz --directory=src --strip-components=1 \
|
&& tar --extract --xz --file=util-linux.tar.xz --directory=src --strip-components=1 \
|
||||||
&& rm util-linux.tar.xz \
|
&& rm util-linux.tar.xz \
|
||||||
&& cd src \
|
&& cd src \
|
||||||
&& CFLAGS=-fPIC ./configure --prefix=/usr/local \
|
&& CFLAGS=-fPIC ./configure --prefix=/usr/local --libdir=/usr/local/lib/x86_64-linux-gnu \
|
||||||
--disable-all-programs \
|
--disable-all-programs \
|
||||||
--disable-bash-completion \
|
--disable-bash-completion \
|
||||||
--disable-makeinstall-chown \
|
--disable-makeinstall-chown \
|
||||||
@@ -332,11 +448,16 @@ RUN curl --fail --location --output util-linux.tar.xz \
|
|||||||
&& cd .. \
|
&& cd .. \
|
||||||
&& rm -rf src
|
&& rm -rf src
|
||||||
|
|
||||||
RUN git clone --branch=v4.3.5 --depth=1 https://github.com/zeromq/libzmq.git src \
|
RUN curl --fail --location --output libzmq.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/zeromq/libzmq/archive/v4.3.5.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=libzmq.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm libzmq.tar.gz \
|
||||||
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
-DBUILD_SHARED=OFF \
|
-DBUILD_SHARED=OFF \
|
||||||
-DBUILD_STATIC=ON \
|
-DBUILD_STATIC=ON \
|
||||||
-DBUILD_TESTS=OFF \
|
-DBUILD_TESTS=OFF \
|
||||||
|
-DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu \
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
||||||
-DENABLE_CPACK=OFF \
|
-DENABLE_CPACK=OFF \
|
||||||
-DENABLE_CURVE=ON \
|
-DENABLE_CURVE=ON \
|
||||||
@@ -348,7 +469,11 @@ RUN git clone --branch=v4.3.5 --depth=1 https://github.com/zeromq/libzmq.git src
|
|||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN git clone --branch=v4.2.1 --depth=1 https://github.com/zeromq/czmq.git src \
|
RUN curl --fail --location --output czmq.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/zeromq/czmq/archive/v4.2.1.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=czmq.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm czmq.tar.gz \
|
||||||
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
||||||
-DCZMQ_BUILD_SHARED=OFF \
|
-DCZMQ_BUILD_SHARED=OFF \
|
||||||
@@ -360,14 +485,20 @@ RUN git clone --branch=v4.2.1 --depth=1 https://github.com/zeromq/czmq.git src \
|
|||||||
-DCZMQ_WITH_SYSTEMD=OFF \
|
-DCZMQ_WITH_SYSTEMD=OFF \
|
||||||
-DCZMQ_WITH_UUID=ON \
|
-DCZMQ_WITH_UUID=ON \
|
||||||
-DENABLE_DRAFTS=OFF \
|
-DENABLE_DRAFTS=OFF \
|
||||||
|
-DLIB_SUFFIX=/x86_64-linux-gnu \
|
||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN git clone --branch=1.9.8 --depth=1 https://github.com/open-source-parsers/jsoncpp.git src \
|
RUN curl --fail --location --output jsoncpp.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/open-source-parsers/jsoncpp/archive/1.9.8.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=jsoncpp.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm jsoncpp.tar.gz \
|
||||||
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
-DBUILD_OBJECT_LIBS=OFF \
|
-DBUILD_OBJECT_LIBS=OFF \
|
||||||
-DBUILD_SHARED_LIBS=OFF \
|
-DBUILD_SHARED_LIBS=OFF \
|
||||||
-DBUILD_STATIC_LIBS=ON \
|
-DBUILD_STATIC_LIBS=ON \
|
||||||
|
-DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu \
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
||||||
-DJSONCPP_WITH_EXAMPLE=OFF \
|
-DJSONCPP_WITH_EXAMPLE=OFF \
|
||||||
-DJSONCPP_WITH_POST_BUILD_UNITTEST=OFF \
|
-DJSONCPP_WITH_POST_BUILD_UNITTEST=OFF \
|
||||||
@@ -375,8 +506,13 @@ RUN git clone --branch=1.9.8 --depth=1 https://github.com/open-source-parsers/js
|
|||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN git clone --branch=v2.15.0 --depth=1 https://github.com/confluentinc/librdkafka.git src \
|
RUN curl --fail --location --output librdkafka.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/confluentinc/librdkafka/archive/v2.15.0.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=librdkafka.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm librdkafka.tar.gz \
|
||||||
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
|
-DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu \
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
||||||
-DENABLE_LZ4_EXT=OFF \
|
-DENABLE_LZ4_EXT=OFF \
|
||||||
-DRDKAFKA_BUILD_EXAMPLES=OFF \
|
-DRDKAFKA_BUILD_EXAMPLES=OFF \
|
||||||
@@ -391,28 +527,42 @@ RUN git clone --branch=v2.15.0 --depth=1 https://github.com/confluentinc/librdka
|
|||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN git clone --branch=json-c-0.19-20260627 --depth=1 https://github.com/json-c/json-c.git src \
|
RUN curl --fail --location --output json-c.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/json-c/json-c/archive/json-c-0.19-20260627.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=json-c.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm json-c.tar.gz \
|
||||||
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
-DBUILD_APPS=OFF \
|
-DBUILD_APPS=OFF \
|
||||||
-DBUILD_SHARED_LIBS=OFF \
|
-DBUILD_SHARED_LIBS=OFF \
|
||||||
-DBUILD_STATIC_LIBS=ON \
|
-DBUILD_STATIC_LIBS=ON \
|
||||||
-DBUILD_TESTING=OFF \
|
-DBUILD_TESTING=OFF \
|
||||||
|
-DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu \
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
||||||
-DDISABLE_EXTRA_LIBS=ON \
|
-DDISABLE_EXTRA_LIBS=ON \
|
||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
COPY rapidjson-generic-string-ref-assignment.patch /tmp/
|
COPY rapidjson-generic-string-ref-assignment.patch /tmp/
|
||||||
RUN git clone --branch=v1.1.0 --depth=1 https://github.com/Tencent/rapidjson.git src \
|
RUN curl --fail --location --output rapidjson.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/Tencent/rapidjson/archive/v1.1.0.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=rapidjson.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm rapidjson.tar.gz \
|
||||||
&& git -C src apply /tmp/rapidjson-generic-string-ref-assignment.patch \
|
&& git -C src apply /tmp/rapidjson-generic-string-ref-assignment.patch \
|
||||||
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
|
-DLIB_INSTALL_DIR=/usr/local/lib/x86_64-linux-gnu \
|
||||||
-DRAPIDJSON_BUILD_DOC=OFF \
|
-DRAPIDJSON_BUILD_DOC=OFF \
|
||||||
-DRAPIDJSON_BUILD_EXAMPLES=OFF \
|
-DRAPIDJSON_BUILD_EXAMPLES=OFF \
|
||||||
-DRAPIDJSON_BUILD_TESTS=OFF \
|
-DRAPIDJSON_BUILD_TESTS=OFF \
|
||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src /tmp/rapidjson-generic-string-ref-assignment.patch
|
&& rm -rf build src /tmp/rapidjson-generic-string-ref-assignment.patch
|
||||||
|
|
||||||
RUN git clone --branch=curl-8_21_0 --depth=1 https://github.com/curl/curl.git src \
|
RUN curl --fail --location --output curl.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/curl/curl/archive/curl-8_21_0.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=curl.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm curl.tar.gz \
|
||||||
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
-DBUILD_CURL_EXE=OFF \
|
-DBUILD_CURL_EXE=OFF \
|
||||||
-DBUILD_EXAMPLES=OFF \
|
-DBUILD_EXAMPLES=OFF \
|
||||||
@@ -421,6 +571,7 @@ RUN git clone --branch=curl-8_21_0 --depth=1 https://github.com/curl/curl.git sr
|
|||||||
-DBUILD_SHARED_LIBS=OFF \
|
-DBUILD_SHARED_LIBS=OFF \
|
||||||
-DBUILD_STATIC_LIBS=ON \
|
-DBUILD_STATIC_LIBS=ON \
|
||||||
-DBUILD_TESTING=OFF \
|
-DBUILD_TESTING=OFF \
|
||||||
|
-DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu \
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
||||||
-DCURL_BROTLI=OFF \
|
-DCURL_BROTLI=OFF \
|
||||||
-DCURL_USE_LIBPSL=OFF \
|
-DCURL_USE_LIBPSL=OFF \
|
||||||
@@ -436,9 +587,14 @@ RUN git clone --branch=curl-8_21_0 --depth=1 https://github.com/curl/curl.git sr
|
|||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN git clone --branch=v1.4.1 --depth=1 https://github.com/redis/hiredis.git src \
|
RUN curl --fail --location --output hiredis.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/redis/hiredis/archive/v1.4.1.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=hiredis.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm hiredis.tar.gz \
|
||||||
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
-DBUILD_SHARED_LIBS=OFF \
|
-DBUILD_SHARED_LIBS=OFF \
|
||||||
|
-DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu \
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
||||||
-DENABLE_ASYNC_TESTS=OFF \
|
-DENABLE_ASYNC_TESTS=OFF \
|
||||||
-DENABLE_EXAMPLES=OFF \
|
-DENABLE_EXAMPLES=OFF \
|
||||||
@@ -450,13 +606,11 @@ RUN git clone --branch=v1.4.1 --depth=1 https://github.com/redis/hiredis.git src
|
|||||||
|
|
||||||
RUN curl --fail --location --output gmp.tar.xz \
|
RUN curl --fail --location --output gmp.tar.xz \
|
||||||
https://mirrors.ustc.edu.cn/gnu/gmp/gmp-6.3.0.tar.xz \
|
https://mirrors.ustc.edu.cn/gnu/gmp/gmp-6.3.0.tar.xz \
|
||||||
&& echo "a3c2b80201b89e68616f4ad30bc66aee4927c3ce50e33929ca819d5c43538898 gmp.tar.xz" \
|
|
||||||
| sha256sum --check - \
|
|
||||||
&& mkdir src \
|
&& mkdir src \
|
||||||
&& tar --extract --xz --file=gmp.tar.xz --directory=src --strip-components=1 \
|
&& tar --extract --xz --file=gmp.tar.xz --directory=src --strip-components=1 \
|
||||||
&& rm gmp.tar.xz \
|
&& rm gmp.tar.xz \
|
||||||
&& cd src \
|
&& cd src \
|
||||||
&& CFLAGS=-fPIC ./configure --prefix=/usr/local --disable-shared --enable-static \
|
&& CFLAGS=-fPIC ./configure --prefix=/usr/local --libdir=/usr/local/lib/x86_64-linux-gnu --disable-shared --enable-static \
|
||||||
&& make --jobs="$(nproc)" \
|
&& make --jobs="$(nproc)" \
|
||||||
&& make install \
|
&& make install \
|
||||||
&& cd .. \
|
&& cd .. \
|
||||||
@@ -464,13 +618,11 @@ RUN curl --fail --location --output gmp.tar.xz \
|
|||||||
|
|
||||||
RUN curl --fail --location --output nettle.tar.gz \
|
RUN curl --fail --location --output nettle.tar.gz \
|
||||||
https://mirrors.ustc.edu.cn/gnu/nettle/nettle-3.10.2.tar.gz \
|
https://mirrors.ustc.edu.cn/gnu/nettle/nettle-3.10.2.tar.gz \
|
||||||
&& echo "fe9ff51cb1f2abb5e65a6b8c10a92da0ab5ab6eaf26e7fc2b675c45f1fb519b5 nettle.tar.gz" \
|
|
||||||
| sha256sum --check - \
|
|
||||||
&& mkdir src \
|
&& mkdir src \
|
||||||
&& tar --extract --gzip --file=nettle.tar.gz --directory=src --strip-components=1 \
|
&& tar --extract --gzip --file=nettle.tar.gz --directory=src --strip-components=1 \
|
||||||
&& rm nettle.tar.gz \
|
&& rm nettle.tar.gz \
|
||||||
&& cd src \
|
&& cd src \
|
||||||
&& CFLAGS=-fPIC ./configure --prefix=/usr/local --libdir=/usr/local/lib \
|
&& CFLAGS=-fPIC ./configure --prefix=/usr/local --libdir=/usr/local/lib/x86_64-linux-gnu \
|
||||||
--disable-documentation \
|
--disable-documentation \
|
||||||
--disable-shared \
|
--disable-shared \
|
||||||
--enable-static \
|
--enable-static \
|
||||||
@@ -481,13 +633,11 @@ RUN curl --fail --location --output nettle.tar.gz \
|
|||||||
|
|
||||||
RUN curl --fail --location --output gnutls.tar.xz \
|
RUN curl --fail --location --output gnutls.tar.xz \
|
||||||
https://mirrors.dotsrc.org/gcrypt/gnutls/v3.8/gnutls-3.8.13.tar.xz \
|
https://mirrors.dotsrc.org/gcrypt/gnutls/v3.8/gnutls-3.8.13.tar.xz \
|
||||||
&& echo "ffed8ec1bf09c2426d4f14aae377de4753b53e537d685e604e99a8b16ca9c97e gnutls.tar.xz" \
|
|
||||||
| sha256sum --check - \
|
|
||||||
&& mkdir src \
|
&& mkdir src \
|
||||||
&& tar --extract --xz --file=gnutls.tar.xz --directory=src --strip-components=1 \
|
&& tar --extract --xz --file=gnutls.tar.xz --directory=src --strip-components=1 \
|
||||||
&& rm gnutls.tar.xz \
|
&& rm gnutls.tar.xz \
|
||||||
&& cd src \
|
&& cd src \
|
||||||
&& CFLAGS=-fPIC ./configure --prefix=/usr/local \
|
&& CFLAGS=-fPIC ./configure --prefix=/usr/local --libdir=/usr/local/lib/x86_64-linux-gnu \
|
||||||
--with-included-libtasn1 \
|
--with-included-libtasn1 \
|
||||||
--with-included-unistring \
|
--with-included-unistring \
|
||||||
--disable-cxx \
|
--disable-cxx \
|
||||||
@@ -510,27 +660,41 @@ RUN curl --fail --location --output gnutls.tar.xz \
|
|||||||
&& cd .. \
|
&& cd .. \
|
||||||
&& rm -rf src
|
&& rm -rf src
|
||||||
|
|
||||||
RUN git clone --branch=1.13.3 --depth=1 https://github.com/maxmind/libmaxminddb.git src \
|
RUN curl --fail --location --output libmaxminddb.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/maxmind/libmaxminddb/archive/1.13.3.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=libmaxminddb.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm libmaxminddb.tar.gz \
|
||||||
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
-DBUILD_SHARED_LIBS=OFF \
|
-DBUILD_SHARED_LIBS=OFF \
|
||||||
-DBUILD_TESTING=OFF \
|
-DBUILD_TESTING=OFF \
|
||||||
|
-DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu \
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
||||||
-DMAXMINDDB_BUILD_BINARIES=OFF \
|
-DMAXMINDDB_BUILD_BINARIES=OFF \
|
||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN git clone --branch=0.2.5 --depth=1 https://github.com/yaml/libyaml.git src \
|
RUN curl --fail --location --output libyaml.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/yaml/libyaml/archive/0.2.5.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=libyaml.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm libyaml.tar.gz \
|
||||||
&& cd src \
|
&& cd src \
|
||||||
&& ./bootstrap \
|
&& ./bootstrap \
|
||||||
&& CFLAGS=-fPIC ./configure --prefix=/usr/local --disable-shared --enable-static \
|
&& CFLAGS=-fPIC ./configure --prefix=/usr/local --libdir=/usr/local/lib/x86_64-linux-gnu --disable-shared --enable-static \
|
||||||
&& make --jobs="$(nproc)" \
|
&& make --jobs="$(nproc)" \
|
||||||
&& make install \
|
&& make install \
|
||||||
&& cd .. \
|
&& cd .. \
|
||||||
&& rm -rf src
|
&& rm -rf src
|
||||||
|
|
||||||
RUN git clone --branch=v2.15.3 --depth=1 https://gitlab.gnome.org/GNOME/libxml2.git src \
|
RUN curl --fail --location --output libxml2.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/GNOME/libxml2/archive/refs/tags/v2.15.3.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=libxml2.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm libxml2.tar.gz \
|
||||||
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
-DBUILD_SHARED_LIBS=OFF \
|
-DBUILD_SHARED_LIBS=OFF \
|
||||||
|
-DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu \
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
|
||||||
-DLIBXML2_WITH_DOCS=OFF \
|
-DLIBXML2_WITH_DOCS=OFF \
|
||||||
-DLIBXML2_WITH_ICU=OFF \
|
-DLIBXML2_WITH_ICU=OFF \
|
||||||
@@ -542,8 +706,13 @@ RUN git clone --branch=v2.15.3 --depth=1 https://gitlab.gnome.org/GNOME/libxml2.
|
|||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN git clone --branch=1.3.15 --depth=1 https://github.com/sewenew/redis-plus-plus.git src \
|
RUN curl --fail --location --output redis-plus-plus.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/sewenew/redis-plus-plus/archive/1.3.15.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=redis-plus-plus.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm redis-plus-plus.tar.gz \
|
||||||
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
&& cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \
|
||||||
|
-DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu \
|
||||||
-DREDIS_PLUS_PLUS_BUILD_SHARED=OFF \
|
-DREDIS_PLUS_PLUS_BUILD_SHARED=OFF \
|
||||||
-DREDIS_PLUS_PLUS_BUILD_STATIC=ON \
|
-DREDIS_PLUS_PLUS_BUILD_STATIC=ON \
|
||||||
-DREDIS_PLUS_PLUS_BUILD_STATIC_WITH_PIC=ON \
|
-DREDIS_PLUS_PLUS_BUILD_STATIC_WITH_PIC=ON \
|
||||||
@@ -551,10 +720,14 @@ RUN git clone --branch=1.3.15 --depth=1 https://github.com/sewenew/redis-plus-pl
|
|||||||
&& cmake --build build --parallel "$(nproc)" --target install \
|
&& cmake --build build --parallel "$(nproc)" --target install \
|
||||||
&& rm -rf build src
|
&& rm -rf build src
|
||||||
|
|
||||||
RUN git clone --branch=v1.8.3 --depth=1 https://github.com/libunwind/libunwind.git src \
|
RUN curl --fail --location --output libunwind.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/libunwind/libunwind/archive/v1.8.3.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=libunwind.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm libunwind.tar.gz \
|
||||||
&& cd src \
|
&& cd src \
|
||||||
&& autoreconf --install \
|
&& autoreconf --install \
|
||||||
&& CFLAGS=-fPIC ./configure --prefix=/usr/local \
|
&& CFLAGS=-fPIC ./configure --prefix=/usr/local --libdir=/usr/local/lib/x86_64-linux-gnu \
|
||||||
--disable-shared \
|
--disable-shared \
|
||||||
--enable-static \
|
--enable-static \
|
||||||
--disable-tests \
|
--disable-tests \
|
||||||
@@ -566,10 +739,14 @@ RUN git clone --branch=v1.8.3 --depth=1 https://github.com/libunwind/libunwind.g
|
|||||||
&& cd .. \
|
&& cd .. \
|
||||||
&& rm -rf src
|
&& rm -rf src
|
||||||
|
|
||||||
RUN git clone --branch=5.3.1 --depth=1 https://github.com/jemalloc/jemalloc.git src \
|
RUN curl --fail --location --output jemalloc.tar.gz \
|
||||||
|
https://wangguofang.net/github.com/jemalloc/jemalloc/archive/5.3.1.tar.gz \
|
||||||
|
&& mkdir src \
|
||||||
|
&& tar --extract --gzip --file=jemalloc.tar.gz --directory=src --strip-components=1 \
|
||||||
|
&& rm jemalloc.tar.gz \
|
||||||
&& cd src \
|
&& cd src \
|
||||||
&& ./autogen.sh \
|
&& ./autogen.sh \
|
||||||
&& CFLAGS=-fPIC CXXFLAGS=-fPIC ./configure --prefix=/usr/local \
|
&& CFLAGS=-fPIC CXXFLAGS=-fPIC ./configure --prefix=/usr/local --libdir=/usr/local/lib/x86_64-linux-gnu \
|
||||||
--disable-doc \
|
--disable-doc \
|
||||||
--disable-shared \
|
--disable-shared \
|
||||||
--enable-static \
|
--enable-static \
|
||||||
@@ -582,13 +759,11 @@ RUN git clone --branch=5.3.1 --depth=1 https://github.com/jemalloc/jemalloc.git
|
|||||||
|
|
||||||
RUN curl --fail --location --output libproxyprotocol.tar.gz \
|
RUN curl --fail --location --output libproxyprotocol.tar.gz \
|
||||||
https://wangguofang.net/github.com/kosmas-valianos/libproxyprotocol/archive/v1.3.3.tar.gz \
|
https://wangguofang.net/github.com/kosmas-valianos/libproxyprotocol/archive/v1.3.3.tar.gz \
|
||||||
&& echo "4f1cbd714e5b52a91a9a43228d55c8165b578b738f743d057ae321b69b8437f7 libproxyprotocol.tar.gz" \
|
|
||||||
| sha256sum --check - \
|
|
||||||
&& mkdir src \
|
&& mkdir src \
|
||||||
&& tar --extract --gzip --file=libproxyprotocol.tar.gz --directory=src --strip-components=1 \
|
&& tar --extract --gzip --file=libproxyprotocol.tar.gz --directory=src --strip-components=1 \
|
||||||
&& rm libproxyprotocol.tar.gz \
|
&& rm libproxyprotocol.tar.gz \
|
||||||
&& gcc -fPIC -c -o src/src/proxy_protocol.o src/src/proxy_protocol.c \
|
&& gcc -fPIC -c -o src/src/proxy_protocol.o src/src/proxy_protocol.c \
|
||||||
&& ar rcs /usr/local/lib/libproxyprotocol.a src/src/proxy_protocol.o \
|
&& ar rcs /usr/local/lib/x86_64-linux-gnu/libproxyprotocol.a src/src/proxy_protocol.o \
|
||||||
&& cp src/src/proxy_protocol.h /usr/local/include/ \
|
&& cp src/src/proxy_protocol.h /usr/local/include/ \
|
||||||
&& rm -rf src
|
&& rm -rf src
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,59 @@
|
|||||||
|
diff --git a/cmake/AddEventLibrary.cmake b/cmake/AddEventLibrary.cmake
|
||||||
|
--- a/cmake/AddEventLibrary.cmake 2026-09-17 14:40:01.091049579 +0800
|
||||||
|
+++ b/cmake/AddEventLibrary.cmake 2026-09-17 14:40:01.103049846 +0800
|
||||||
|
@@ -31,7 +31,7 @@
|
||||||
|
configure_file("lib${LIB_NAME}.pc.in" "lib${LIB_NAME}.pc" @ONLY)
|
||||||
|
install(
|
||||||
|
FILES "${CMAKE_CURRENT_BINARY_DIR}/lib${LIB_NAME}.pc"
|
||||||
|
- DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/pkgconfig"
|
||||||
|
+ DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/x86_64-linux-gnu/pkgconfig"
|
||||||
|
)
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
@@ -40,9 +40,9 @@
|
||||||
|
macro(export_install_target TYPE LIB_NAME OUTER_INCLUDES)
|
||||||
|
if("${LIB_NAME}" STREQUAL "event")
|
||||||
|
install(TARGETS "${LIB_NAME}_${TYPE}"
|
||||||
|
- LIBRARY DESTINATION "lib" COMPONENT lib
|
||||||
|
- ARCHIVE DESTINATION "lib" COMPONENT lib
|
||||||
|
- RUNTIME DESTINATION "lib" COMPONENT lib
|
||||||
|
+ LIBRARY DESTINATION "lib/x86_64-linux-gnu" COMPONENT lib
|
||||||
|
+ ARCHIVE DESTINATION "lib/x86_64-linux-gnu" COMPONENT lib
|
||||||
|
+ RUNTIME DESTINATION "lib/x86_64-linux-gnu" COMPONENT lib
|
||||||
|
COMPONENT dev
|
||||||
|
)
|
||||||
|
else()
|
||||||
|
@@ -67,9 +67,9 @@
|
||||||
|
)
|
||||||
|
install(TARGETS "${LIB_NAME}_${TYPE}"
|
||||||
|
EXPORT LibeventTargets-${TYPE}
|
||||||
|
- LIBRARY DESTINATION "lib" COMPONENT lib
|
||||||
|
- ARCHIVE DESTINATION "lib" COMPONENT lib
|
||||||
|
- RUNTIME DESTINATION "lib" COMPONENT lib
|
||||||
|
+ LIBRARY DESTINATION "lib/x86_64-linux-gnu" COMPONENT lib
|
||||||
|
+ ARCHIVE DESTINATION "lib/x86_64-linux-gnu" COMPONENT lib
|
||||||
|
+ RUNTIME DESTINATION "lib/x86_64-linux-gnu" COMPONENT lib
|
||||||
|
COMPONENT dev
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
@@ -181,7 +181,7 @@
|
||||||
|
if (NOT WIN32)
|
||||||
|
install(FILES
|
||||||
|
"$<TARGET_FILE_DIR:${LIB_NAME}_shared>/${LIB_LINK_NAME}"
|
||||||
|
- DESTINATION "lib"
|
||||||
|
+ DESTINATION "lib/x86_64-linux-gnu"
|
||||||
|
COMPONENT lib)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||||
|
--- a/CMakeLists.txt 2026-09-17 14:40:01.091049579 +0800
|
||||||
|
+++ b/CMakeLists.txt 2026-09-17 14:40:01.103049846 +0800
|
||||||
|
@@ -1453,7 +1453,7 @@
|
||||||
|
#
|
||||||
|
|
||||||
|
set(EVENT_INSTALL_CMAKE_DIR
|
||||||
|
- "${CMAKE_INSTALL_PREFIX}/lib/cmake/libevent")
|
||||||
|
+ "${CMAKE_INSTALL_PREFIX}/lib/x86_64-linux-gnu/cmake/libevent")
|
||||||
|
|
||||||
|
export(PACKAGE libevent)
|
||||||
|
|
||||||
Reference in new issue
Block a user