diff --git a/builder/Dockerfile b/builder/Dockerfile new file mode 100644 index 0000000..4b01925 --- /dev/null +++ b/builder/Dockerfile @@ -0,0 +1,27 @@ +FROM alt:pre-builder AS building + +WORKDIR /prepare +COPY /libs . +ENV CXX=clang++-17 +RUN cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -G Ninja -S /prepare/fmt/ -B /prepare/build/fmt -DFMT_TEST=OFF \ + --install-prefix=/prepare/installed \ + && cmake --build /prepare/build/fmt --target install \ + \ + && cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -G Ninja -S /prepare/AMQP-CPP -B /prepare/build/amqp-cpp \ + -DCMAKE_CXX_STANDARD=20 -DAMQP-CPP_BUILD_SHARED=OFF -DAMQP-CPP_LINUX_TCP=ON -DBUILD_TOOLS_DOCS=OFF -DENABLE_SSL_SUPPORT=ON \ + --install-prefix=/prepare/installed \ + && cmake --build /prepare/build/amqp-cpp --target install \ + \ + && /prepare/seastar/configure.py --mode=release \ + --without-demos --without-apps --without-tests \ + --enable-dpdk --c++-standard=20 --compiler="clang-17" --c-compiler="gcc"\ + --build-root=/prepare/build/seastar --cflags="-ggnu-pubnames" --ldflags="-larchive" \ + --prefix=/prepare/installed --compile-commands-json \ + && ninja -C /prepare/build/seastar/release install + +# ——————————————————————————————————————————————————————————————————— + +FROM alt:pre-builder +COPY --from=building /prepare/installed/ /prepare/build/seastar/release/_cooking/stow/dpdk/ /usr/local/ + +CMD ["/bin/bash"] diff --git a/pre-builder/Dockerfile b/pre-builder/Dockerfile new file mode 100644 index 0000000..fee695e --- /dev/null +++ b/pre-builder/Dockerfile @@ -0,0 +1,10 @@ +FROM alt:p10 AS build + +RUN apt-get update && apt-get -yqVV install \ + boost-devel boost-lockfree-devel boost-asio-devel boost-filesystem-devel boost-program_options-devel \ + cmake diffutils doxygen \ + clang17.0 build-essential \ + time stow openssl openssl-devel python3-module-elftools protobuf-compiler \ + pkg-config libprotobuf-devel libcares-devel libyaml-cpp-devel libtool liburing-devel liblz4-devel libgnutlsxx-devel libgnutlsxx28 libgnutls-devel libxfs-devel libcryptopp-devel libpciaccess-devel libnuma-devel libfmt-devel liblksctp-devel liblksctp libarchive libarchive-devel libxml2-devel lksctp-tools make meson ninja-build ragel valgrind valgrind-devel libhwloc-devel libuv-devel + +CMD ["/bin/bash"] diff --git a/runtime/Dockerfile b/runtime/Dockerfile new file mode 100644 index 0000000..9c1a51a --- /dev/null +++ b/runtime/Dockerfile @@ -0,0 +1,6 @@ +FROM alt:p10 AS build + +RUN apt-get update && apt-get -yqVV install \ + libarchive13 libhwloc libnuma libuv libatomic1 liburing libgnutls libyaml-cpp0 libboost_program_options1.76.0 libboost_thread1.76.0 + +CMD ["/bin/bash"]