psrt 0.3.5

Industrial Pub-Sub server with minimal latency and MQTT-compatible logic
Documentation
  FROM ubuntu:22.04

ENV DEBIAN_FRONTEND=noninteractive
ENV CROSS_DEB_ARCH=amd64

COPY ./sources.list.u22 /etc/apt/sources.list

RUN dpkg --add-architecture amd64

RUN apt-get update && apt-get install -y --no-install-recommends \
    build-essential \
    curl \
    openssl \
    ca-certificates \
    libssl-dev \
    libsqlite3-dev \
    git \
    make \
    pkg-config \
    cmake \
    golang \
    nasm \
    g++ \
    g++-x86-64-linux-gnu \
    git \
    nasm \
    llvm \
    libclang-dev:$CROSS_DEB_ARCH \
    libc6-dev:$CROSS_DEB_ARCH \
    libssl-dev:$CROSS_DEB_ARCH \
    libbsd-dev:$CROSS_DEB_ARCH \
    libtbb-dev:$CROSS_DEB_ARCH \
    zlib1g-dev:$CROSS_DEB_ARCH \
    libudev-dev:$CROSS_DEB_ARCH \
    libsqlite3-dev:$CROSS_DEB_ARCH

RUN rm -rf /var/lib/apt/lists/*

RUN printf '%s\n' \
  '#!/bin/sh' \
  'export PKG_CONFIG_DIR=' \
  'export PKG_CONFIG_LIBDIR=/usr/lib/x86_64-linux-gnu/pkgconfig' \
  'export PKG_CONFIG_SYSROOT_DIR=/' \
  'exec pkg-config "$@"' \
  > /usr/local/bin/x86_64-linux-gnu-pkg-config && chmod +x /usr/local/bin/x86_64-linux-gnu-pkg-config

ENV PKG_CONFIG_x86_64_unknown_linux_gnu=/usr/local/bin/x86_64-linux-gnu-pkg-config
ENV CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER=x86_64-linux-gnu-gcc
ENV PKG_CONFIG_ALLOW_CROSS=1
ENV ARCH_SFX=x86_64