# syntax = docker/dockerfile:1.0-experimental
FROM centos:centos6 as build

# install base dependencies
RUN yum install -y git tcl tk libjpeg libgomp libXext libSM libXft libffi cairo gettext Xvfb

# python 3.6
RUN yum install -y install centos-release-scl
RUN yum install -y rh-python36 rh-python36-python-tkinter
ENV PATH=/opt/rh/rh-python36/root/usr/bin:$PATH

# Install python dependencies
RUN pip3 install --upgrade pip && \
    pip3 install matplotlib


ENV OPENROAD=/build/
ENV OPENROADOS=Linux-x86_64

ENV PATH=$OPENROAD/bin:$OPENROAD/bin/Linux-x86_64:$OPENROAD/pdn/scripts:$PATH
ENV LD_LIBRARY_PATH=$OPENROAD/lib:$OPENROAD/lib/Linux-x86_64:$LD_LIBRARY_PATH
ENV MANPATH=$OPENROAD/share/man:$MANPATH


COPY ./openroad_tools.tar.gz /
COPY ./.tclshrc $HOME
RUN tar -xzf openroad_tools.tar.gz && \
    rm -rf openroad_tools.tar.gz

COPY ./openLANE_flow.tar.gz /
RUN mkdir /openLANE_flow
RUN tar -xzf openLANE_flow.tar.gz -C openLANE_flow&& \
    rm -rf openLANE_flow.tar.gz

RUN mkdir -p /ef/tech/SW/
RUN ln -s /openLANE_flow/pdks/ef-skywater-s8/EFS8A /ef/tech/SW/EFS8A
WORKDIR /openLANE_flow
