FROM ubuntu:22.04

# Set up architectures first
RUN dpkg --add-architecture arm64 && \
    sed -i 's/deb http/deb [arch=amd64] http/g' /etc/apt/sources.list && \
    echo "deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports/ jammy main restricted universe multiverse" >> /etc/apt/sources.list && \
    echo "deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports/ jammy-updates main restricted universe multiverse" >> /etc/apt/sources.list && \
    echo "deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports/ jammy-security main restricted universe multiverse" >> /etc/apt/sources.list && \
    echo "deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports/ jammy-backports main restricted universe multiverse" >> /etc/apt/sources.list

# Install build dependencies for both architectures
RUN apt-get update && \
    apt-get install -y \
    cmake \
    make \
    g++ \
    musl-tools \
    g++-aarch64-linux-gnu \
    crossbuild-essential-arm64 \
    libtbb-dev \
    libxxhash-dev \
    libtbb-dev:arm64 \
    libxxhash-dev:arm64 && \
    rm -rf /var/lib/apt/lists/*

WORKDIR /src