|
| 1 | +FROM oraclelinux:10-slim |
| 2 | + |
| 3 | +RUN set -x; \ |
| 4 | + microdnf install dnf && \ |
| 5 | + dnf install "dnf-command(config-manager)" && \ |
| 6 | + dnf config-manager --set-enabled ol10_codeready_builder && \ |
| 7 | + dnf -qy install oracle-epel-release-el10 && \ |
| 8 | + dnf -qy --setopt install_weak_deps=False upgrade-minimal && \ |
| 9 | + dnf copr enable luka222/rhel-epel-10-extra && \ |
| 10 | + dnf -y --setopt install_weak_deps=False install git clang compiler-rt gcc gcc-c++ lld cmake make pkgconf-pkg-config wget \ |
| 11 | + libarchive-devel perl ragel file-devel glib2-devel libicu-devel openssl-devel sqlite-devel zlib-devel \ |
| 12 | + clang-devel llvm-devel libsodium-devel rpm-build openblas-devel libunwind-devel lapack lapack-devel blas-devel blas pcre2-devel sudo binutils systemd patch \ |
| 13 | + gcc-c++ binutils systemd binutils-devel gcc-plugin-annobin \ |
| 14 | + jemalloc-devel git python3-devel && \ |
| 15 | + wget https://www.colm.net/files/ragel/ragel-6.10.tar.gz && rm -fr ragel-6.10 && \ |
| 16 | + tar xvf ragel-6.10.tar.gz && (cd ragel-6.10 && ./configure --prefix=/usr && make -j4 && make install) && \ |
| 17 | + rm -fr ragel-6.10 ; \ |
| 18 | + rm -fr /luajit-src || true && \ |
| 19 | + rm -fr /luajit-build || true && \ |
| 20 | + git clone -b v2.1 https://luajit.org/git/luajit-2.0.git /luajit-src && \ |
| 21 | + pushd /luajit-src && make clean && make -j4 CC="gcc -fPIC" PREFIX=/luajit-build && make install PREFIX=/luajit-build && popd && \ |
| 22 | + rm -f /luajit-build/lib/*.so || true && \ |
| 23 | + rm -fr /luajit-src || true && \ |
| 24 | + rpmArch="$(rpm --eval '%{_arch}')" && \ |
| 25 | + case "$rpmArch" in \ |
| 26 | + *) \ |
| 27 | + rm -fr /vectorscan-src/ ; \ |
| 28 | + dnf -qy install python3-devel boost-devel git && \ |
| 29 | + git clone https://github.com/VectorCamp/vectorscan --depth 1 --branch vectorscan/5.4.12 /vectorscan-src && \ |
| 30 | + (cd /vectorscan-src ; mkdir build ; cd build ; cmake .. -DCMAKE_INSTALL_PREFIX=/vectorscan -DCMAKE_BUILD_TYPE=Release -DFAT_RUNTIME=ON -DCMAKE_C_FLAGS="-fpic -fPIC" -DCMAKE_CXX_FLAGS="-fPIC -fpic" -DPCRE_SUPPORT_LIBBZ2=OFF; make -j4 ; make install) ; \ |
| 31 | + rm -fr /vectorscan-src/ ; \ |
| 32 | + ;; \ |
| 33 | + esac && \ |
| 34 | + rm /var/log/*.log && rm -r /var/cache/dnf |
| 35 | + |
| 36 | +# Install fasttext |
| 37 | +RUN ( rm -fr /fasttext-src/ || true ) && git clone https://github.com/rspamd/fastText.git --depth 1 /fasttext-src && \ |
| 38 | + ( cd /fasttext-src && mkdir build && cd build && cmake .. -DCMAKE_INSTALL_PREFIX=/fasttext -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_FLAGS="-fpic -fPIC" -DCMAKE_CXX_FLAGS="-fPIC -fpic" && make -j4 && make install) && \ |
| 39 | + mv -f /fasttext/lib/libfasttext_pic.a /fasttext/lib/libfasttext.a && \ |
| 40 | + ( rm -f /fasttext/lib/*.so || true ) && \ |
| 41 | + ( rm -fr /fasttext-src/ || true ) |
0 commit comments