FROM ubuntu:22.04

ENV DEBIAN_FRONTEND=noninteractive

# ============================================================
# 基础工具 + 编译工具
# ============================================================
RUN apt-get update && apt-get install -y \
    python3 \
    python3-pip \
    build-essential \
    gcc \
    g++ \
    make \
    locales \
    && rm -rf /var/lib/apt/lists/*

# 安装 Python 依赖
RUN pip3 install --no-cache-dir psutil

# 配置中文 locale（防止终端中文乱码）
RUN locale-gen zh_CN.UTF-8 && update-locale LANG=zh_CN.UTF-8
ENV LANG=zh_CN.UTF-8
ENV LC_ALL=zh_CN.UTF-8

# ============================================================
# CoreMark-PRO 编译
# ============================================================

# 拷贝 CoreMark-PRO 源代码
COPY coremark-pro /workspace/coremark-pro-src

# 编译 CoreMark-PRO
WORKDIR /workspace/coremark-pro-src
RUN make TARGET=linux64 clean 2>/dev/null || true && \
    make TARGET=linux64 build

# 创建运行目录结构
RUN mkdir -p /workspace/coremark-pro/builds/linux64/gcc64/bin && \
    cp /workspace/coremark-pro-src/builds/linux64/gcc64/bin/*.exe /workspace/coremark-pro/builds/linux64/gcc64/bin/ && \
    rm -rf /workspace/coremark-pro-src

# ============================================================
# 设置运行环境
# ============================================================

# 拷贝 benchmark 脚本和 entrypoint
COPY workspace/coremark_perf.py /workspace/coremark/coremark_perf.py
COPY workspace/entrypoint.sh /workspace/coremark/entrypoint.sh
RUN chmod +x /workspace/coremark/entrypoint.sh

# 工作目录和挂载点
RUN mkdir -p /workspace/input /workspace/output

WORKDIR /workspace/coremark

ENTRYPOINT ["/workspace/coremark/entrypoint.sh"]
